compiler/libec: Fixed DB active records broken by d0d99da885cb22b451821053009c5af5abe...
[sdk] / compiler / libec / precompiled / type.c
1 /* Code generated from eC source file: type.ec */
2 #if defined(__GNUC__)
3 typedef long long int64;
4 typedef unsigned long long uint64;
5 #ifndef _WIN32
6 #define __declspec(x)
7 #endif
8 #elif defined(__TINYC__)
9 #include <stdarg.h>
10 #define __builtin_va_list va_list
11 #define __builtin_va_start va_start
12 #define __builtin_va_end va_end
13 #ifdef _WIN32
14 #define strcasecmp stricmp
15 #define strncasecmp strnicmp
16 #define __declspec(x) __attribute__((x))
17 #else
18 #define __declspec(x)
19 #endif
20 typedef long long int64;
21 typedef unsigned long long uint64;
22 #else
23 typedef __int64 int64;
24 typedef unsigned __int64 uint64;
25 #endif
26 #ifdef __BIG_ENDIAN__
27 #define __ENDIAN_PAD(x) (8 - (x))
28 #else
29 #define __ENDIAN_PAD(x) 0
30 #endif
31 #include <stdint.h>
32 #include <sys/types.h>
33 extern __declspec(dllexport) void *  __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
34
35 extern __declspec(dllexport) void *  __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
36
37 extern __declspec(dllexport) void *  __ecereNameSpace__ecere__com__eSystem_Renew(void *  memory, unsigned int size);
38
39 extern __declspec(dllexport) void *  __ecereNameSpace__ecere__com__eSystem_Renew0(void *  memory, unsigned int size);
40
41 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BTNode;
42
43 struct __ecereNameSpace__ecere__sys__BTNode;
44
45 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BinaryTree;
46
47 struct __ecereNameSpace__ecere__sys__BinaryTree
48 {
49 struct __ecereNameSpace__ecere__sys__BTNode * root;
50 int count;
51 int (*  CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
52 void (*  FreeKey)(void *  key);
53 } __attribute__ ((gcc_struct));
54
55 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldList;
56
57 struct __ecereNameSpace__ecere__sys__OldList
58 {
59 void *  first;
60 void *  last;
61 int count;
62 unsigned int offset;
63 unsigned int circ;
64 } __attribute__ ((gcc_struct));
65
66 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Method;
67
68 struct __ecereNameSpace__ecere__com__Method
69 {
70 char *  name;
71 struct __ecereNameSpace__ecere__com__Method * parent;
72 struct __ecereNameSpace__ecere__com__Method * left;
73 struct __ecereNameSpace__ecere__com__Method * right;
74 int depth;
75 int (*  function)();
76 int vid;
77 int type;
78 struct __ecereNameSpace__ecere__com__Class * _class;
79 void *  symbol;
80 char *  dataTypeString;
81 struct Type * dataType;
82 int memberAccess;
83 } __attribute__ ((gcc_struct));
84
85 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Property;
86
87 struct __ecereNameSpace__ecere__com__Property
88 {
89 struct __ecereNameSpace__ecere__com__Property * prev;
90 struct __ecereNameSpace__ecere__com__Property * next;
91 char *  name;
92 unsigned int isProperty;
93 int memberAccess;
94 int id;
95 struct __ecereNameSpace__ecere__com__Class * _class;
96 char *  dataTypeString;
97 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
98 struct Type * dataType;
99 void (*  Set)(void * , int);
100 int (*  Get)(void * );
101 unsigned int (*  IsSet)(void * );
102 void *  data;
103 void *  symbol;
104 int vid;
105 unsigned int conversion;
106 unsigned int watcherOffset;
107 char *  category;
108 unsigned int compiled;
109 unsigned int selfWatchable;
110 unsigned int isWatchable;
111 } __attribute__ ((gcc_struct));
112
113 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_CodePosition;
114
115 struct CodePosition
116 {
117 int line;
118 int charPos;
119 int pos;
120 int included;
121 } __attribute__ ((gcc_struct));
122
123 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Location;
124
125 struct Location
126 {
127 struct CodePosition start;
128 struct CodePosition end;
129 } __attribute__ ((gcc_struct));
130
131 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Attrib;
132
133 struct Attrib
134 {
135 struct Location loc;
136 int type;
137 struct __ecereNameSpace__ecere__sys__OldList *  attribs;
138 } __attribute__ ((gcc_struct));
139
140 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ExtDecl;
141
142 struct ExtDecl;
143
144 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassDefinition;
145
146 struct ClassDefinition;
147
148 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
149
150 struct Context
151 {
152 struct Context * parent;
153 struct __ecereNameSpace__ecere__sys__BinaryTree types;
154 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
155 struct __ecereNameSpace__ecere__sys__BinaryTree symbols;
156 struct __ecereNameSpace__ecere__sys__BinaryTree structSymbols;
157 int nextID;
158 int simpleID;
159 struct __ecereNameSpace__ecere__sys__BinaryTree templateTypes;
160 struct ClassDefinition * classDef;
161 unsigned int templateTypesOnly;
162 unsigned int hasNameSpace;
163 } __attribute__ ((gcc_struct));
164
165 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Instantiation;
166
167 struct Instantiation
168 {
169 struct Instantiation * prev;
170 struct Instantiation * next;
171 struct Location loc;
172 struct Specifier * _class;
173 struct Expression * exp;
174 struct __ecereNameSpace__ecere__sys__OldList *  members;
175 struct Symbol * symbol;
176 unsigned int fullSet;
177 unsigned int isConstant;
178 unsigned char *  data;
179 struct Location nameLoc;
180 struct Location insideLoc;
181 unsigned int built;
182 } __attribute__ ((gcc_struct));
183
184 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declaration;
185
186 struct Declaration
187 {
188 struct Declaration * prev;
189 struct Declaration * next;
190 struct Location loc;
191 int type;
192 union
193 {
194 struct
195 {
196 struct __ecereNameSpace__ecere__sys__OldList *  specifiers;
197 struct __ecereNameSpace__ecere__sys__OldList *  declarators;
198 } __attribute__ ((gcc_struct));
199 struct Instantiation * inst;
200 struct
201 {
202 struct Identifier * id;
203 struct Expression * exp;
204 } __attribute__ ((gcc_struct));
205 } __attribute__ ((gcc_struct));
206 struct Specifier * extStorage;
207 struct Symbol * symbol;
208 int declMode;
209 } __attribute__ ((gcc_struct));
210
211 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Statement;
212
213 struct Statement
214 {
215 struct Statement * prev;
216 struct Statement * next;
217 struct Location loc;
218 int type;
219 union
220 {
221 struct __ecereNameSpace__ecere__sys__OldList *  expressions;
222 struct
223 {
224 struct Identifier * id;
225 struct Statement * stmt;
226 } __attribute__ ((gcc_struct)) labeled;
227 struct
228 {
229 struct Expression * exp;
230 struct Statement * stmt;
231 } __attribute__ ((gcc_struct)) caseStmt;
232 struct
233 {
234 struct __ecereNameSpace__ecere__sys__OldList * declarations;
235 struct __ecereNameSpace__ecere__sys__OldList * statements;
236 struct Context * context;
237 unsigned int isSwitch;
238 } __attribute__ ((gcc_struct)) compound;
239 struct
240 {
241 struct __ecereNameSpace__ecere__sys__OldList * exp;
242 struct Statement * stmt;
243 struct Statement * elseStmt;
244 } __attribute__ ((gcc_struct)) ifStmt;
245 struct
246 {
247 struct __ecereNameSpace__ecere__sys__OldList * exp;
248 struct Statement * stmt;
249 } __attribute__ ((gcc_struct)) switchStmt;
250 struct
251 {
252 struct __ecereNameSpace__ecere__sys__OldList * exp;
253 struct Statement * stmt;
254 } __attribute__ ((gcc_struct)) whileStmt;
255 struct
256 {
257 struct __ecereNameSpace__ecere__sys__OldList * exp;
258 struct Statement * stmt;
259 } __attribute__ ((gcc_struct)) doWhile;
260 struct
261 {
262 struct Statement * init;
263 struct Statement * check;
264 struct __ecereNameSpace__ecere__sys__OldList * increment;
265 struct Statement * stmt;
266 } __attribute__ ((gcc_struct)) forStmt;
267 struct
268 {
269 struct Identifier * id;
270 } __attribute__ ((gcc_struct)) gotoStmt;
271 struct
272 {
273 struct Specifier * spec;
274 char * statements;
275 struct __ecereNameSpace__ecere__sys__OldList * inputFields;
276 struct __ecereNameSpace__ecere__sys__OldList * outputFields;
277 struct __ecereNameSpace__ecere__sys__OldList * clobberedFields;
278 } __attribute__ ((gcc_struct)) asmStmt;
279 struct
280 {
281 struct Expression * watcher;
282 struct Expression * object;
283 struct __ecereNameSpace__ecere__sys__OldList * watches;
284 } __attribute__ ((gcc_struct)) _watch;
285 struct
286 {
287 struct Identifier * id;
288 struct __ecereNameSpace__ecere__sys__OldList * exp;
289 struct __ecereNameSpace__ecere__sys__OldList * filter;
290 struct Statement * stmt;
291 } __attribute__ ((gcc_struct)) forEachStmt;
292 struct Declaration * decl;
293 } __attribute__ ((gcc_struct));
294 } __attribute__ ((gcc_struct));
295
296 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TypeName;
297
298 struct TypeName
299 {
300 struct TypeName * prev;
301 struct TypeName * next;
302 struct Location loc;
303 struct __ecereNameSpace__ecere__sys__OldList *  qualifiers;
304 struct Declarator * declarator;
305 int classObjectType;
306 struct Expression * bitCount;
307 } __attribute__ ((gcc_struct));
308
309 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Initializer;
310
311 struct Initializer
312 {
313 struct Initializer * prev;
314 struct Initializer * next;
315 struct Location loc;
316 int type;
317 union
318 {
319 struct Expression * exp;
320 struct __ecereNameSpace__ecere__sys__OldList *  list;
321 } __attribute__ ((gcc_struct));
322 unsigned int isConstant;
323 } __attribute__ ((gcc_struct));
324
325 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataValue;
326
327 struct __ecereNameSpace__ecere__com__DataValue
328 {
329 union
330 {
331 char c;
332 unsigned char uc;
333 short s;
334 unsigned short us;
335 int i;
336 unsigned int ui;
337 void *  p;
338 float f;
339 double d;
340 long long i64;
341 uint64 ui64;
342 } __attribute__ ((gcc_struct));
343 } __attribute__ ((gcc_struct));
344
345 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Expression;
346
347 struct Expression
348 {
349 struct Expression * prev;
350 struct Expression * next;
351 struct Location loc;
352 int type;
353 union
354 {
355 struct
356 {
357 char *  constant;
358 struct Identifier * identifier;
359 } __attribute__ ((gcc_struct));
360 struct Statement * compound;
361 struct Instantiation * instance;
362 struct
363 {
364 char *  string;
365 unsigned int intlString;
366 } __attribute__ ((gcc_struct));
367 struct __ecereNameSpace__ecere__sys__OldList *  list;
368 struct
369 {
370 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
371 struct Declarator * decl;
372 } __attribute__ ((gcc_struct)) _classExp;
373 struct
374 {
375 struct Identifier * id;
376 } __attribute__ ((gcc_struct)) classData;
377 struct
378 {
379 struct Expression * exp;
380 struct __ecereNameSpace__ecere__sys__OldList * arguments;
381 struct Location argLoc;
382 } __attribute__ ((gcc_struct)) call;
383 struct
384 {
385 struct Expression * exp;
386 struct __ecereNameSpace__ecere__sys__OldList * index;
387 } __attribute__ ((gcc_struct)) index;
388 struct
389 {
390 struct Expression * exp;
391 struct Identifier * member;
392 int memberType;
393 unsigned int thisPtr;
394 } __attribute__ ((gcc_struct)) member;
395 struct
396 {
397 int op;
398 struct Expression * exp1;
399 struct Expression * exp2;
400 } __attribute__ ((gcc_struct)) op;
401 struct TypeName * typeName;
402 struct Specifier * _class;
403 struct
404 {
405 struct TypeName * typeName;
406 struct Expression * exp;
407 } __attribute__ ((gcc_struct)) cast;
408 struct
409 {
410 struct Expression * cond;
411 struct __ecereNameSpace__ecere__sys__OldList * exp;
412 struct Expression * elseExp;
413 } __attribute__ ((gcc_struct)) cond;
414 struct
415 {
416 struct TypeName * typeName;
417 struct Expression * size;
418 } __attribute__ ((gcc_struct)) _new;
419 struct
420 {
421 struct TypeName * typeName;
422 struct Expression * size;
423 struct Expression * exp;
424 } __attribute__ ((gcc_struct)) _renew;
425 struct
426 {
427 char * table;
428 struct Identifier * id;
429 } __attribute__ ((gcc_struct)) db;
430 struct
431 {
432 struct Expression * ds;
433 struct Expression * name;
434 } __attribute__ ((gcc_struct)) dbopen;
435 struct
436 {
437 struct TypeName * typeName;
438 struct Initializer * initializer;
439 } __attribute__ ((gcc_struct)) initializer;
440 struct
441 {
442 struct Expression * exp;
443 struct TypeName * typeName;
444 } __attribute__ ((gcc_struct)) vaArg;
445 } __attribute__ ((gcc_struct));
446 unsigned int debugValue;
447 struct __ecereNameSpace__ecere__com__DataValue val;
448 uint64 address;
449 unsigned int hasAddress;
450 struct Type * expType;
451 struct Type * destType;
452 unsigned int usage;
453 int tempCount;
454 unsigned int byReference;
455 unsigned int isConstant;
456 unsigned int addedThis;
457 unsigned int needCast;
458 unsigned int thisPtr;
459 } __attribute__ ((gcc_struct));
460
461 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateDatatype;
462
463 struct TemplateDatatype
464 {
465 struct __ecereNameSpace__ecere__sys__OldList *  specifiers;
466 struct Declarator * decl;
467 } __attribute__ ((gcc_struct));
468
469 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateArgument;
470
471 struct TemplateArgument
472 {
473 struct TemplateArgument * prev;
474 struct TemplateArgument * next;
475 struct Location loc;
476 struct Identifier * name;
477 int type;
478 union
479 {
480 struct Expression * expression;
481 struct Identifier * identifier;
482 struct TemplateDatatype * templateDatatype;
483 } __attribute__ ((gcc_struct));
484 } __attribute__ ((gcc_struct));
485
486 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateParameter;
487
488 struct TemplateParameter;
489
490 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Specifier;
491
492 struct Specifier
493 {
494 struct Specifier * prev;
495 struct Specifier * next;
496 struct Location loc;
497 int type;
498 union
499 {
500 int specifier;
501 struct
502 {
503 struct ExtDecl * extDecl;
504 char *  name;
505 struct Symbol * symbol;
506 struct __ecereNameSpace__ecere__sys__OldList *  templateArgs;
507 } __attribute__ ((gcc_struct));
508 struct
509 {
510 struct Identifier * id;
511 struct __ecereNameSpace__ecere__sys__OldList *  list;
512 struct __ecereNameSpace__ecere__sys__OldList *  baseSpecs;
513 struct __ecereNameSpace__ecere__sys__OldList *  definitions;
514 unsigned int addNameSpace;
515 struct Context * ctx;
516 struct ExtDecl * extDeclStruct;
517 } __attribute__ ((gcc_struct));
518 struct Expression * expression;
519 struct Specifier * _class;
520 struct TemplateParameter * templateParameter;
521 } __attribute__ ((gcc_struct));
522 } __attribute__ ((gcc_struct));
523
524 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Identifier;
525
526 struct Identifier
527 {
528 struct Identifier * prev;
529 struct Identifier * next;
530 struct Location loc;
531 struct Symbol * classSym;
532 struct Specifier * _class;
533 char *  string;
534 struct Identifier * badID;
535 } __attribute__ ((gcc_struct));
536
537 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Pointer;
538
539 struct Pointer;
540
541 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declarator;
542
543 struct Declarator
544 {
545 struct Declarator * prev;
546 struct Declarator * next;
547 struct Location loc;
548 int type;
549 struct Symbol * symbol;
550 struct Declarator * declarator;
551 union
552 {
553 struct Identifier * identifier;
554 struct
555 {
556 struct Expression * exp;
557 struct Expression * posExp;
558 struct Attrib * attrib;
559 } __attribute__ ((gcc_struct)) structDecl;
560 struct
561 {
562 struct Expression * exp;
563 struct Specifier * enumClass;
564 } __attribute__ ((gcc_struct)) array;
565 struct
566 {
567 struct __ecereNameSpace__ecere__sys__OldList * parameters;
568 } __attribute__ ((gcc_struct)) function;
569 struct
570 {
571 struct Pointer * pointer;
572 } __attribute__ ((gcc_struct)) pointer;
573 struct
574 {
575 struct ExtDecl * extended;
576 } __attribute__ ((gcc_struct)) extended;
577 } __attribute__ ((gcc_struct));
578 } __attribute__ ((gcc_struct));
579
580 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_FunctionDefinition;
581
582 struct FunctionDefinition;
583
584 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBTableDef;
585
586 struct DBTableDef;
587
588 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_External;
589
590 struct External;
591
592 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ModuleImport;
593
594 struct ModuleImport;
595
596 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassImport;
597
598 struct ClassImport;
599
600 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Symbol;
601
602 struct Symbol;
603
604 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
605
606 struct Type;
607
608 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Class;
609
610 struct __ecereNameSpace__ecere__com__Class
611 {
612 struct __ecereNameSpace__ecere__com__Class * prev;
613 struct __ecereNameSpace__ecere__com__Class * next;
614 char *  name;
615 int offset;
616 int structSize;
617 int (* *  _vTbl)();
618 int vTblSize;
619 int (*  Constructor)(struct __ecereNameSpace__ecere__com__Instance *);
620 void (*  Destructor)(struct __ecereNameSpace__ecere__com__Instance *);
621 int offsetClass;
622 int sizeClass;
623 struct __ecereNameSpace__ecere__com__Class * base;
624 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
625 struct __ecereNameSpace__ecere__sys__BinaryTree members;
626 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
627 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
628 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
629 struct __ecereNameSpace__ecere__sys__OldList derivatives;
630 int memberID;
631 int startMemberID;
632 int type;
633 struct __ecereNameSpace__ecere__com__Instance * module;
634 struct __ecereNameSpace__ecere__com__NameSpace *  nameSpace;
635 char *  dataTypeString;
636 struct Type * dataType;
637 int typeSize;
638 int defaultAlignment;
639 void (*  Initialize)();
640 int memberOffset;
641 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
642 char *  designerClass;
643 unsigned int noExpansion;
644 char *  defaultProperty;
645 unsigned int comRedefinition;
646 int count;
647 unsigned int isRemote;
648 unsigned int internalDecl;
649 void *  data;
650 unsigned int computeSize;
651 int structAlignment;
652 int destructionWatchOffset;
653 unsigned int fixed;
654 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
655 int inheritanceAccess;
656 char *  fullName;
657 void *  symbol;
658 struct __ecereNameSpace__ecere__sys__OldList conversions;
659 struct __ecereNameSpace__ecere__sys__OldList templateParams;
660 struct __ecereNameSpace__ecere__com__ClassTemplateArgument *  templateArgs;
661 struct __ecereNameSpace__ecere__com__Class * templateClass;
662 struct __ecereNameSpace__ecere__sys__OldList templatized;
663 int numParams;
664 unsigned int isInstanceClass;
665 unsigned int byValueSystemClass;
666 } __attribute__ ((gcc_struct));
667
668 extern __declspec(dllexport) long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, char *  name);
669
670 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
671
672 struct __ecereNameSpace__ecere__com__Instance
673 {
674 int (* *  _vTbl)();
675 struct __ecereNameSpace__ecere__com__Class * _class;
676 int _refCount;
677 } __attribute__ ((gcc_struct));
678
679 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataMember;
680
681 struct __ecereNameSpace__ecere__com__DataMember
682 {
683 struct __ecereNameSpace__ecere__com__DataMember * prev;
684 struct __ecereNameSpace__ecere__com__DataMember * next;
685 char *  name;
686 unsigned int isProperty;
687 int memberAccess;
688 int id;
689 struct __ecereNameSpace__ecere__com__Class * _class;
690 char *  dataTypeString;
691 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
692 struct Type * dataType;
693 int type;
694 int offset;
695 int memberID;
696 struct __ecereNameSpace__ecere__sys__OldList members;
697 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
698 int memberOffset;
699 int structAlignment;
700 } __attribute__ ((gcc_struct));
701
702 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SerialBuffer;
703
704 struct __ecereNameSpace__ecere__com__SerialBuffer
705 {
706 unsigned char *  _buffer;
707 unsigned int count;
708 unsigned int _size;
709 unsigned int pos;
710 } __attribute__ ((gcc_struct));
711
712 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument;
713
714 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
715 {
716 union
717 {
718 struct
719 {
720 char *  dataTypeString;
721 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
722 } __attribute__ ((gcc_struct));
723 struct __ecereNameSpace__ecere__com__DataValue expression;
724 struct
725 {
726 char *  memberString;
727 union
728 {
729 struct __ecereNameSpace__ecere__com__DataMember * member;
730 struct __ecereNameSpace__ecere__com__Property * prop;
731 struct __ecereNameSpace__ecere__com__Method * method;
732 } __attribute__ ((gcc_struct));
733 } __attribute__ ((gcc_struct));
734 } __attribute__ ((gcc_struct));
735 } __attribute__ ((gcc_struct));
736
737 enum yytokentype
738 {
739 IDENTIFIER = 258, CONSTANT = 259, STRING_LITERAL = 260, SIZEOF = 261, PTR_OP = 262, INC_OP = 263, DEC_OP = 264, LEFT_OP = 265, RIGHT_OP = 266, LE_OP = 267, GE_OP = 268, EQ_OP = 269, NE_OP = 270, AND_OP = 271, OR_OP = 272, MUL_ASSIGN = 273, DIV_ASSIGN = 274, MOD_ASSIGN = 275, ADD_ASSIGN = 276, SUB_ASSIGN = 277, LEFT_ASSIGN = 278, RIGHT_ASSIGN = 279, AND_ASSIGN = 280, XOR_ASSIGN = 281, OR_ASSIGN = 282, TYPE_NAME = 283, TYPEDEF = 284, EXTERN = 285, STATIC = 286, AUTO = 287, REGISTER = 288, CHAR = 289, SHORT = 290, INT = 291, UINT = 292, INT64 = 293, LONG = 294, SIGNED = 295, UNSIGNED = 296, FLOAT = 297, DOUBLE = 298, CONST = 299, VOLATILE = 300, VOID = 301, VALIST = 302, STRUCT = 303, UNION = 304, ENUM = 305, ELLIPSIS = 306, CASE = 307, DEFAULT = 308, IF = 309, SWITCH = 310, WHILE = 311, DO = 312, FOR = 313, GOTO = 314, CONTINUE = 315, BREAK = 316, RETURN = 317, IFX = 318, ELSE = 319, CLASS = 320, THISCLASS = 321, CLASS_NAME = 322, PROPERTY = 323, SETPROP = 324, GETPROP = 325, NEWOP = 326, RENEW = 327, DELETE = 328, EXT_DECL = 329, EXT_STORAGE = 330, IMPORT = 331, DEFINE = 332, VIRTUAL = 333, ATTRIB = 334, PUBLIC = 335, PRIVATE = 336, TYPED_OBJECT = 337, ANY_OBJECT = 338, _INCREF = 339, EXTENSION = 340, ASM = 341, TYPEOF = 342, WATCH = 343, STOPWATCHING = 344, FIREWATCHERS = 345, WATCHABLE = 346, CLASS_DESIGNER = 347, CLASS_NO_EXPANSION = 348, CLASS_FIXED = 349, ISPROPSET = 350, CLASS_DEFAULT_PROPERTY = 351, PROPERTY_CATEGORY = 352, CLASS_DATA = 353, CLASS_PROPERTY = 354, SUBCLASS = 355, NAMESPACE = 356, NEW0OP = 357, RENEW0 = 358, VAARG = 359, DBTABLE = 360, DBFIELD = 361, DBINDEX = 362, DATABASE_OPEN = 363, ALIGNOF = 364, ATTRIB_DEP = 365, __ATTRIB = 366, BOOL = 367, _BOOL = 368, _COMPLEX = 369, _IMAGINARY = 370, RESTRICT = 371, THREAD = 372
740 };
741
742 typedef union YYSTYPE
743 {
744 int specifierType;
745 int i;
746 int declMode;
747 struct Identifier * id;
748 struct Expression * exp;
749 struct Specifier * specifier;
750 struct __ecereNameSpace__ecere__sys__OldList * list;
751 struct Enumerator * enumerator;
752 struct Declarator * declarator;
753 struct Pointer * pointer;
754 struct Initializer * initializer;
755 struct InitDeclarator * initDeclarator;
756 struct TypeName * typeName;
757 struct Declaration * declaration;
758 struct Statement * stmt;
759 struct FunctionDefinition * function;
760 struct External * external;
761 struct Context * context;
762 struct AsmField * asmField;
763 struct Attrib * attrib;
764 struct ExtDecl * extDecl;
765 struct Attribute * attribute;
766 struct Instantiation * instance;
767 struct MembersInit * membersInit;
768 struct MemberInit * memberInit;
769 struct ClassFunction * classFunction;
770 struct ClassDefinition * _class;
771 struct ClassDef * classDef;
772 struct PropertyDef * prop;
773 char * string;
774 struct Symbol * symbol;
775 struct PropertyWatch * propertyWatch;
776 struct TemplateParameter * templateParameter;
777 struct TemplateArgument * templateArgument;
778 struct TemplateDatatype * templateDatatype;
779 struct DBTableEntry * dbtableEntry;
780 struct DBIndexItem * dbindexItem;
781 struct DBTableDef * dbtableDef;
782 } __attribute__ ((gcc_struct)) YYSTYPE;
783
784 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Enumerator;
785
786 struct Enumerator;
787
788 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_InitDeclarator;
789
790 struct InitDeclarator
791 {
792 struct InitDeclarator * prev;
793 struct InitDeclarator * next;
794 struct Location loc;
795 struct Declarator * declarator;
796 struct Initializer * initializer;
797 } __attribute__ ((gcc_struct));
798
799 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_AsmField;
800
801 struct AsmField;
802
803 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Attribute;
804
805 struct Attribute
806 {
807 struct Attribute * prev;
808 struct Attribute * next;
809 struct Location loc;
810 char * attr;
811 struct Expression * exp;
812 } __attribute__ ((gcc_struct));
813
814 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassFunction;
815
816 struct ClassFunction
817 {
818 struct ClassFunction * prev;
819 struct ClassFunction * next;
820 struct Location loc;
821 struct __ecereNameSpace__ecere__sys__OldList *  specifiers;
822 struct Declarator * declarator;
823 struct __ecereNameSpace__ecere__sys__OldList *  declarations;
824 struct Statement * body;
825 struct __ecereNameSpace__ecere__com__Class * _class;
826 struct __ecereNameSpace__ecere__sys__OldList attached;
827 int declMode;
828 struct Type * type;
829 struct Symbol * propSet;
830 unsigned int isVirtual;
831 unsigned int isConstructor;
832 unsigned int isDestructor;
833 unsigned int dontMangle;
834 int id;
835 int idCode;
836 } __attribute__ ((gcc_struct));
837
838 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_MembersInit;
839
840 struct MembersInit
841 {
842 struct MembersInit * prev;
843 struct MembersInit * next;
844 struct Location loc;
845 int type;
846 union
847 {
848 struct __ecereNameSpace__ecere__sys__OldList *  dataMembers;
849 struct ClassFunction * function;
850 } __attribute__ ((gcc_struct));
851 } __attribute__ ((gcc_struct));
852
853 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_MemberInit;
854
855 struct MemberInit
856 {
857 struct MemberInit * prev;
858 struct MemberInit * next;
859 struct Location loc;
860 struct Location realLoc;
861 struct __ecereNameSpace__ecere__sys__OldList *  identifiers;
862 struct Initializer * initializer;
863 unsigned int used;
864 unsigned int variable;
865 unsigned int takeOutExp;
866 } __attribute__ ((gcc_struct));
867
868 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyDef;
869
870 struct PropertyDef
871 {
872 struct PropertyDef * prev;
873 struct PropertyDef * next;
874 struct Location loc;
875 struct __ecereNameSpace__ecere__sys__OldList *  specifiers;
876 struct Declarator * declarator;
877 struct Identifier * id;
878 struct Statement * getStmt;
879 struct Statement * setStmt;
880 struct Statement * issetStmt;
881 struct Symbol * symbol;
882 struct Expression * category;
883 struct
884 {
885 unsigned int conversion : 1;
886 unsigned int isWatchable : 1;
887 unsigned int isDBProp : 1;
888 } __attribute__ ((gcc_struct));
889 } __attribute__ ((gcc_struct));
890
891 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
892
893 struct PropertyWatch;
894
895 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassDef;
896
897 struct ClassDef
898 {
899 struct ClassDef * prev;
900 struct ClassDef * next;
901 struct Location loc;
902 int type;
903 union
904 {
905 struct Declaration * decl;
906 struct ClassFunction * function;
907 struct __ecereNameSpace__ecere__sys__OldList *  defProperties;
908 struct PropertyDef * propertyDef;
909 struct PropertyWatch * propertyWatch;
910 char *  designer;
911 struct Identifier * defaultProperty;
912 struct
913 {
914 struct Identifier * id;
915 struct Initializer * initializer;
916 } __attribute__ ((gcc_struct));
917 } __attribute__ ((gcc_struct));
918 int memberAccess;
919 void *  object;
920 } __attribute__ ((gcc_struct));
921
922 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBTableEntry;
923
924 struct DBTableEntry;
925
926 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBIndexItem;
927
928 struct DBIndexItem;
929
930 extern YYSTYPE yylval;
931
932 extern struct Location yylloc;
933
934 struct TypeName * parsedType;
935
936 extern unsigned int parseTypeError;
937
938 extern struct __ecereNameSpace__ecere__com__Instance * fileInput;
939
940 extern char * yytext;
941
942 int yylex();
943
944 int yyerror();
945
946 typedef unsigned char yytype_uint8;
947
948 typedef signed char yytype_int8;
949
950 typedef unsigned short int yytype_uint16;
951
952 typedef short int yytype_int16;
953
954 void free(void *);
955
956 union yyalloc
957 {
958 yytype_int16 yyss_alloc;
959 YYSTYPE yyvs_alloc;
960 struct Location yyls_alloc;
961 } __attribute__ ((gcc_struct));
962
963 static const yytype_uint8 yytranslate[] = 
964 {
965 (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)132, (unsigned char)2, (unsigned char)2, (unsigned char)124, (unsigned char)134, (unsigned char)129, (unsigned char)2, (unsigned char)121, (unsigned char)122, (unsigned char)118, (unsigned char)130, (unsigned char)128, (unsigned char)131, (unsigned char)125, (unsigned char)133, (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)138, (unsigned char)140, (unsigned char)119, (unsigned char)139, (unsigned char)120, (unsigned char)137, (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)127, (unsigned char)135, (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)141, (unsigned char)136, (unsigned char)142, (unsigned char)123, (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, (unsigned char)112, (unsigned char)113, (unsigned char)114, (unsigned char)115, (unsigned char)116, (unsigned char)117
966 };
967
968 static const yytype_uint16 yyprhs[] = 
969 {
970 (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)160, (unsigned short)164, (unsigned short)167, (unsigned short)170, (unsigned short)172, (unsigned short)174, (unsigned short)179, (unsigned short)183, (unsigned short)188, (unsigned short)192, (unsigned short)195, (unsigned short)199, (unsigned short)202, (unsigned short)205, (unsigned short)207, (unsigned short)209, (unsigned short)213, (unsigned short)217, (unsigned short)220, (unsigned short)223, (unsigned short)226, (unsigned short)231, (unsigned short)234, (unsigned short)239, (unsigned short)244, (unsigned short)247, (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)272, (unsigned short)274, (unsigned short)276, (unsigned short)281, (unsigned short)283, (unsigned short)287, (unsigned short)291, (unsigned short)295, (unsigned short)297, (unsigned short)301, (unsigned short)305, (unsigned short)307, (unsigned short)311, (unsigned short)315, (unsigned short)318, (unsigned short)320, (unsigned short)323, (unsigned short)327, (unsigned short)331, (unsigned short)335, (unsigned short)337, (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)375, (unsigned short)377, (unsigned short)383, (unsigned short)385, (unsigned short)389, (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)413, (unsigned short)415, (unsigned short)417, (unsigned short)421, (unsigned short)423, (unsigned short)426, (unsigned short)430, (unsigned short)433, (unsigned short)439, (unsigned short)441, (unsigned short)444, (unsigned short)446, (unsigned short)449, (unsigned short)451, (unsigned short)454, (unsigned short)456, (unsigned short)459, (unsigned short)461, (unsigned short)464, (unsigned short)466, (unsigned short)469, (unsigned short)471, (unsigned short)474, (unsigned short)476, (unsigned short)479, (unsigned short)481, (unsigned short)484, (unsigned short)486, (unsigned short)489, (unsigned short)491, (unsigned short)494, (unsigned short)496, (unsigned short)499, (unsigned short)501, (unsigned short)504, (unsigned short)506, (unsigned short)509, (unsigned short)511, (unsigned short)514, (unsigned short)516, (unsigned short)519, (unsigned short)521, (unsigned short)524, (unsigned short)526, (unsigned short)529, (unsigned short)531, (unsigned short)534, (unsigned short)536, (unsigned short)539, (unsigned short)541, (unsigned short)543, (unsigned short)545, (unsigned short)548, (unsigned short)550, (unsigned short)553, (unsigned short)555, (unsigned short)558, (unsigned short)560, (unsigned short)563, (unsigned short)568, (unsigned short)574, (unsigned short)576, (unsigned short)579, (unsigned short)581, (unsigned short)584, (unsigned short)586, (unsigned short)589, (unsigned short)591, (unsigned short)594, (unsigned short)596, (unsigned short)599, (unsigned short)601, (unsigned short)604, (unsigned short)609, (unsigned short)615, (unsigned short)617, (unsigned short)621, (unsigned short)623, (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)657, (unsigned short)659, (unsigned short)661, (unsigned short)663, (unsigned short)668, (unsigned short)670, (unsigned short)673, (unsigned short)677, (unsigned short)684, (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)724, (unsigned short)726, (unsigned short)728, (unsigned short)730, (unsigned short)732, (unsigned short)734, (unsigned short)739, (unsigned short)744, (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)777, (unsigned short)779, (unsigned short)781, (unsigned short)783, (unsigned short)785, (unsigned short)787, (unsigned short)789, (unsigned short)791, (unsigned short)796, (unsigned short)801, (unsigned short)806, (unsigned short)808, (unsigned short)814, (unsigned short)819, (unsigned short)824, (unsigned short)828, (unsigned short)834, (unsigned short)841, (unsigned short)847, (unsigned short)853, (unsigned short)858, (unsigned short)865, (unsigned short)868, (unsigned short)871, (unsigned short)875, (unsigned short)879, (unsigned short)881, (unsigned short)884, (unsigned short)886, (unsigned short)889, (unsigned short)891, (unsigned short)893, (unsigned short)895, (unsigned short)899, (unsigned short)903, (unsigned short)907, (unsigned short)911, (unsigned short)913, (unsigned short)917, (unsigned short)919, (unsigned short)921, (unsigned short)923, (unsigned short)926, (unsigned short)930, (unsigned short)932, (unsigned short)936, (unsigned short)946, (unsigned short)956, (unsigned short)964, (unsigned short)972, (unsigned short)978, (unsigned short)989, (unsigned short)1000, (unsigned short)1009, (unsigned short)1018, (unsigned short)1025, (unsigned short)1034, (unsigned short)1043, (unsigned short)1050, (unsigned short)1057, (unsigned short)1062, (unsigned short)1072, (unsigned short)1082, (unsigned short)1090, (unsigned short)1098, (unsigned short)1104, (unsigned short)1108, (unsigned short)1111, (unsigned short)1114, (unsigned short)1117, (unsigned short)1119, (unsigned short)1122, (unsigned short)1124, (unsigned short)1126, (unsigned short)1128, (unsigned short)1132, (unsigned short)1134, (unsigned short)1137, (unsigned short)1140, (unsigned short)1144, (unsigned short)1150, (unsigned short)1153, (unsigned short)1156, (unsigned short)1161, (unsigned short)1167, (unsigned short)1175, (unsigned short)1183, (unsigned short)1189, (unsigned short)1191, (unsigned short)1195, (unsigned short)1197, (unsigned short)1201, (unsigned short)1205, (unsigned short)1208, (unsigned short)1212, (unsigned short)1216, (unsigned short)1220, (unsigned short)1225, (unsigned short)1230, (unsigned short)1233, (unsigned short)1237, (unsigned short)1241, (unsigned short)1246, (unsigned short)1250, (unsigned short)1253, (unsigned short)1257, (unsigned short)1261, (unsigned short)1266, (unsigned short)1268, (unsigned short)1270, (unsigned short)1273, (unsigned short)1276, (unsigned short)1279, (unsigned short)1283, (unsigned short)1285, (unsigned short)1287, (unsigned short)1290, (unsigned short)1293, (unsigned short)1296, (unsigned short)1300, (unsigned short)1302, (unsigned short)1305, (unsigned short)1309, (unsigned short)1312, (unsigned short)1314, (unsigned short)1318, (unsigned short)1323, (unsigned short)1327, (unsigned short)1332, (unsigned short)1334, (unsigned short)1337, (unsigned short)1340, (unsigned short)1344, (unsigned short)1348, (unsigned short)1351, (unsigned short)1355, (unsigned short)1359, (unsigned short)1362, (unsigned short)1364, (unsigned short)1366, (unsigned short)1369, (unsigned short)1372, (unsigned short)1374, (unsigned short)1377, (unsigned short)1380, (unsigned short)1384, (unsigned short)1388, (unsigned short)1390, (unsigned short)1393, (unsigned short)1395, (unsigned short)1398, (unsigned short)1401, (unsigned short)1405, (unsigned short)1407, (unsigned short)1411, (unsigned short)1413, (unsigned short)1417, (unsigned short)1420, (unsigned short)1423, (unsigned short)1426, (unsigned short)1430, (unsigned short)1432, (unsigned short)1434, (unsigned short)1436, (unsigned short)1440, (unsigned short)1442, (unsigned short)1445, (unsigned short)1447, (unsigned short)1450, (unsigned short)1452, (unsigned short)1456, (unsigned short)1461, (unsigned short)1463, (unsigned short)1465, (unsigned short)1467, (unsigned short)1471, (unsigned short)1473, (unsigned short)1475, (unsigned short)1477, (unsigned short)1479, (unsigned short)1481, (unsigned short)1483, (unsigned short)1487, (unsigned short)1492, (unsigned short)1496, (unsigned short)1498, (unsigned short)1501, (unsigned short)1503, (unsigned short)1506, (unsigned short)1509, (unsigned short)1511, (unsigned short)1513, (unsigned short)1516, (unsigned short)1518, (unsigned short)1521, (unsigned short)1525, (unsigned short)1527, (unsigned short)1530, (unsigned short)1536, (unsigned short)1544, (unsigned short)1550, (unsigned short)1556, (unsigned short)1564, (unsigned short)1571, (unsigned short)1579, (unsigned short)1584, (unsigned short)1590, (unsigned short)1595, (unsigned short)1599, (unsigned short)1602, (unsigned short)1605, (unsigned short)1608, (unsigned short)1612, (unsigned short)1614, (unsigned short)1620, (unsigned short)1625, (unsigned short)1631, (unsigned short)1636, (unsigned short)1641, (unsigned short)1645, (unsigned short)1650, (unsigned short)1654, (unsigned short)1658, (unsigned short)1661, (unsigned short)1664, (unsigned short)1667, (unsigned short)1670, (unsigned short)1673, (unsigned short)1676, (unsigned short)1679, (unsigned short)1682, (unsigned short)1685, (unsigned short)1689, (unsigned short)1691, (unsigned short)1693, (unsigned short)1697, (unsigned short)1700, (unsigned short)1702, (unsigned short)1704, (unsigned short)1707, (unsigned short)1710, (unsigned short)1712, (unsigned short)1715, (unsigned short)1717, (unsigned short)1719, (unsigned short)1722, (unsigned short)1724
971 };
972
973 static const yytype_int16 yyrhs[] = 
974 {
975 (short)267, (short)0, (short)(-1), (short)153, (short)118, (short)(-1), (short)153, (short)119, (short)(-1), (short)153, (short)1, (short)(-1), (short)148, (short)(-1), (short)153, (short)153, (short)(-1), (short)28, (short)(-1), (short)147, (short)(-1), (short)147, (short)119, (short)208, (short)120, (short)(-1), (short)147, (short)119, (short)208, (short)11, (short)(-1), (short)185, (short)227, (short)(-1), (short)227, (short)(-1), (short)185, (short)121, (short)122, (short)(-1), (short)123, (short)185, (short)121, (short)122, (short)(-1), (short)78, (short)185, (short)227, (short)(-1), (short)78, (short)227, (short)(-1), (short)3, (short)(-1), (short)155, (short)(-1), (short)121, (short)179, (short)122, (short)(-1), (short)153, (short)(-1), (short)257, (short)(-1), (short)4, (short)(-1), (short)254, (short)(-1), (short)124, (short)254, (short)(-1), (short)124, (short)254, (short)125, (short)254, (short)(-1), (short)121, (short)122, (short)(-1), (short)71, (short)185, (short)224, (short)126, (short)180, (short)127, (short)(-1), (short)71, (short)185, (short)126, (short)180, (short)127, (short)(-1), (short)102, (short)185, (short)224, (short)126, (short)180, (short)127, (short)(-1), (short)102, (short)185, (short)126, (short)180, (short)127, (short)(-1), (short)72, (short)180, (short)188, (short)224, (short)126, (short)180, (short)127, (short)(-1), (short)72, (short)180, (short)188, (short)126, (short)180, (short)127, (short)(-1), (short)103, (short)180, (short)188, (short)224, (short)126, (short)180, (short)127, (short)(-1), (short)103, (short)180, (short)188, (short)126, (short)180, (short)127, (short)(-1), (short)1, (short)(-1), (short)154, (short)(-1), (short)156, (short)126, (short)179, (short)127, (short)(-1), (short)156, (short)121, (short)122, (short)(-1), (short)156, (short)121, (short)159, (short)122, (short)(-1), (short)156, (short)125, (short)153, (short)(-1), (short)156, (short)153, (short)(-1), (short)156, (short)7, (short)153, (short)(-1), (short)156, (short)8, (short)(-1), (short)156, (short)9, (short)(-1), (short)258, (short)(-1), (short)155, (short)(-1), (short)158, (short)126, (short)179, (short)127, (short)(-1), (short)158, (short)121, (short)122, (short)(-1), (short)158, (short)121, (short)159, (short)122, (short)(-1), (short)158, (short)125, (short)153, (short)(-1), (short)158, (short)153, (short)(-1), (short)158, (short)7, (short)153, (short)(-1), (short)158, (short)8, (short)(-1), (short)158, (short)9, (short)(-1), (short)177, (short)(-1), (short)157, (short)(-1), (short)159, (short)128, (short)177, (short)(-1), (short)159, (short)128, (short)157, (short)(-1), (short)8, (short)161, (short)(-1), (short)9, (short)161, (short)(-1), (short)163, (short)164, (short)(-1), (short)6, (short)121, (short)161, (short)122, (short)(-1), (short)6, (short)162, (short)(-1), (short)6, (short)121, (short)239, (short)122, (short)(-1), (short)109, (short)121, (short)161, (short)122, (short)(-1), (short)109, (short)162, (short)(-1), (short)109, (short)121, (short)239, (short)122, (short)(-1), (short)160, (short)(-1), (short)156, (short)(-1), (short)160, (short)(-1), (short)158, (short)(-1), (short)129, (short)(-1), (short)118, (short)(-1), (short)130, (short)(-1), (short)131, (short)(-1), (short)123, (short)(-1), (short)132, (short)(-1), (short)73, (short)(-1), (short)161, (short)(-1), (short)121, (short)238, (short)122, (short)164, (short)(-1), (short)164, (short)(-1), (short)165, (short)118, (short)164, (short)(-1), (short)165, (short)133, (short)164, (short)(-1), (short)165, (short)134, (short)164, (short)(-1), (short)165, (short)(-1), (short)166, (short)130, (short)165, (short)(-1), (short)166, (short)131, (short)165, (short)(-1), (short)166, (short)(-1), (short)167, (short)10, (short)166, (short)(-1), (short)167, (short)11, (short)166, (short)(-1), (short)169, (short)119, (short)(-1), (short)167, (short)(-1), (short)168, (short)167, (short)(-1), (short)169, (short)120, (short)167, (short)(-1), (short)169, (short)12, (short)167, (short)(-1), (short)169, (short)13, (short)167, (short)(-1), (short)169, (short)(-1), (short)170, (short)14, (short)169, (short)(-1), (short)170, (short)15, (short)169, (short)(-1), (short)170, (short)(-1), (short)171, (short)129, (short)170, (short)(-1), (short)171, (short)(-1), (short)172, (short)135, (short)171, (short)(-1), (short)172, (short)(-1), (short)173, (short)136, (short)172, (short)(-1), (short)173, (short)(-1), (short)174, (short)16, (short)173, (short)(-1), (short)174, (short)(-1), (short)175, (short)17, (short)174, (short)(-1), (short)175, (short)(-1), (short)175, (short)137, (short)179, (short)138, (short)176, (short)(-1), (short)176, (short)(-1), (short)161, (short)178, (short)177, (short)(-1), (short)161, (short)178, (short)157, (short)(-1), (short)139, (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)177, (short)(-1), (short)179, (short)128, (short)177, (short)(-1), (short)176, (short)(-1), (short)184, (short)140, (short)(-1), (short)184, (short)189, (short)140, (short)(-1), (short)255, (short)140, (short)(-1), (short)77, (short)153, (short)139, (short)180, (short)140, (short)(-1), (short)199, (short)(-1), (short)182, (short)199, (short)(-1), (short)200, (short)(-1), (short)182, (short)200, (short)(-1), (short)218, (short)(-1), (short)182, (short)218, (short)(-1), (short)202, (short)(-1), (short)182, (short)202, (short)(-1), (short)199, (short)(-1), (short)183, (short)199, (short)(-1), (short)200, (short)(-1), (short)183, (short)200, (short)(-1), (short)144, (short)(-1), (short)183, (short)144, (short)(-1), (short)218, (short)(-1), (short)183, (short)218, (short)(-1), (short)202, (short)(-1), (short)183, (short)202, (short)(-1), (short)191, (short)(-1), (short)184, (short)191, (short)(-1), (short)199, (short)(-1), (short)184, (short)199, (short)(-1), (short)200, (short)(-1), (short)184, (short)200, (short)(-1), (short)218, (short)(-1), (short)184, (short)218, (short)(-1), (short)202, (short)(-1), (short)184, (short)202, (short)(-1), (short)191, (short)(-1), (short)185, (short)191, (short)(-1), (short)199, (short)(-1), (short)185, (short)199, (short)(-1), (short)200, (short)(-1), (short)185, (short)200, (short)(-1), (short)144, (short)(-1), (short)185, (short)144, (short)(-1), (short)202, (short)(-1), (short)185, (short)202, (short)(-1), (short)218, (short)(-1), (short)185, (short)218, (short)(-1), (short)185, (short)(-1), (short)145, (short)(-1), (short)191, (short)(-1), (short)187, (short)191, (short)(-1), (short)199, (short)(-1), (short)187, (short)199, (short)(-1), (short)201, (short)(-1), (short)187, (short)201, (short)(-1), (short)153, (short)(-1), (short)187, (short)153, (short)(-1), (short)153, (short)119, (short)208, (short)120, (short)(-1), (short)187, (short)153, (short)119, (short)208, (short)120, (short)(-1), (short)191, (short)(-1), (short)188, (short)191, (short)(-1), (short)199, (short)(-1), (short)188, (short)199, (short)(-1), (short)201, (short)(-1), (short)188, (short)201, (short)(-1), (short)202, (short)(-1), (short)188, (short)202, (short)(-1), (short)218, (short)(-1), (short)188, (short)218, (short)(-1), (short)153, (short)(-1), (short)188, (short)153, (short)(-1), (short)153, (short)119, (short)208, (short)120, (short)(-1), (short)188, (short)153, (short)119, (short)208, (short)120, (short)(-1), (short)190, (short)(-1), (short)189, (short)128, (short)190, (short)(-1), (short)225, (short)(-1), (short)225, (short)139, (short)240, (short)(-1), (short)29, (short)(-1), (short)30, (short)(-1), (short)31, (short)(-1), (short)32, (short)(-1), (short)33, (short)(-1), (short)117, (short)(-1), (short)74, (short)(-1), (short)75, (short)(-1), (short)197, (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)194, (short)(-1), (short)194, (short)121, (short)179, (short)122, (short)(-1), (short)195, (short)(-1), (short)196, (short)195, (short)(-1), (short)196, (short)128, (short)195, (short)(-1), (short)193, (short)121, (short)121, (short)196, (short)122, (short)122, (short)(-1), (short)193, (short)121, (short)121, (short)122, (short)122, (short)(-1), (short)192, (short)(-1), (short)44, (short)(-1), (short)45, (short)(-1), (short)198, (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)113, (short)(-1), (short)112, (short)(-1), (short)203, (short)(-1), (short)217, (short)(-1), (short)146, (short)(-1), (short)87, (short)121, (short)177, (short)122, (short)(-1), (short)100, (short)121, (short)146, (short)122, (short)(-1), (short)100, (short)121, (short)153, (short)122, (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)113, (short)(-1), (short)112, (short)(-1), (short)203, (short)(-1), (short)217, (short)(-1), (short)148, (short)(-1), (short)87, (short)121, (short)177, (short)122, (short)(-1), (short)100, (short)121, (short)146, (short)122, (short)(-1), (short)100, (short)121, (short)153, (short)122, (short)(-1), (short)66, (short)(-1), (short)209, (short)153, (short)141, (short)210, (short)142, (short)(-1), (short)209, (short)141, (short)210, (short)142, (short)(-1), (short)209, (short)153, (short)141, (short)142, (short)(-1), (short)209, (short)141, (short)142, (short)(-1), (short)209, (short)147, (short)141, (short)210, (short)142, (short)(-1), (short)209, (short)192, (short)153, (short)141, (short)210, (short)142, (short)(-1), (short)209, (short)192, (short)141, (short)210, (short)142, (short)(-1), (short)209, (short)192, (short)153, (short)141, (short)142, (short)(-1), (short)209, (short)192, (short)141, (short)142, (short)(-1), (short)209, (short)192, (short)148, (short)141, (short)210, (short)142, (short)(-1), (short)209, (short)153, (short)(-1), (short)209, (short)148, (short)(-1), (short)209, (short)192, (short)153, (short)(-1), (short)209, (short)192, (short)148, (short)(-1), (short)185, (short)(-1), (short)185, (short)223, (short)(-1), (short)185, (short)(-1), (short)185, (short)223, (short)(-1), (short)167, (short)(-1), (short)206, (short)(-1), (short)205, (short)(-1), (short)153, (short)139, (short)206, (short)(-1), (short)153, (short)139, (short)205, (short)(-1), (short)204, (short)139, (short)206, (short)(-1), (short)204, (short)139, (short)205, (short)(-1), (short)207, (short)(-1), (short)208, (short)128, (short)207, (short)(-1), (short)48, (short)(-1), (short)49, (short)(-1), (short)214, (short)(-1), (short)210, (short)214, (short)(-1), (short)156, (short)139, (short)241, (short)(-1), (short)211, (short)(-1), (short)212, (short)128, (short)211, (short)(-1), (short)68, (short)187, (short)153, (short)141, (short)69, (short)249, (short)70, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)153, (short)141, (short)70, (short)249, (short)69, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)153, (short)141, (short)69, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)153, (short)141, (short)70, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)153, (short)141, (short)142, (short)(-1), (short)68, (short)187, (short)223, (short)153, (short)141, (short)69, (short)249, (short)70, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)223, (short)153, (short)141, (short)70, (short)249, (short)69, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)223, (short)153, (short)141, (short)69, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)223, (short)153, (short)141, (short)70, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)223, (short)153, (short)141, (short)142, (short)(-1), (short)68, (short)187, (short)141, (short)69, (short)249, (short)70, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)141, (short)70, (short)249, (short)69, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)141, (short)69, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)141, (short)70, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)141, (short)142, (short)(-1), (short)68, (short)187, (short)223, (short)141, (short)69, (short)249, (short)70, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)223, (short)141, (short)70, (short)249, (short)69, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)223, (short)141, (short)69, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)223, (short)141, (short)70, (short)249, (short)142, (short)(-1), (short)68, (short)187, (short)223, (short)141, (short)142, (short)(-1), (short)185, (short)215, (short)140, (short)(-1), (short)185, (short)140, (short)(-1), (short)257, (short)140, (short)(-1), (short)256, (short)140, (short)(-1), (short)259, (short)(-1), (short)212, (short)140, (short)(-1), (short)213, (short)(-1), (short)140, (short)(-1), (short)216, (short)(-1), (short)215, (short)128, (short)216, (short)(-1), (short)231, (short)(-1), (short)231, (short)197, (short)(-1), (short)138, (short)180, (short)(-1), (short)231, (short)138, (short)180, (short)(-1), (short)231, (short)138, (short)180, (short)138, (short)180, (short)(-1), (short)50, (short)153, (short)(-1), (short)50, (short)148, (short)(-1), (short)50, (short)141, (short)219, (short)142, (short)(-1), (short)50, (short)153, (short)141, (short)219, (short)142, (short)(-1), (short)50, (short)153, (short)141, (short)219, (short)140, (short)210, (short)142, (short)(-1), (short)50, (short)148, (short)141, (short)219, (short)140, (short)210, (short)142, (short)(-1), (short)50, (short)148, (short)141, (short)219, (short)142, (short)(-1), (short)220, (short)(-1), (short)219, (short)128, (short)220, (short)(-1), (short)153, (short)(-1), (short)153, (short)139, (short)180, (short)(-1), (short)121, (short)223, (short)122, (short)(-1), (short)126, (short)127, (short)(-1), (short)126, (short)180, (short)127, (short)(-1), (short)126, (short)146, (short)127, (short)(-1), (short)221, (short)126, (short)127, (short)(-1), (short)221, (short)126, (short)180, (short)127, (short)(-1), (short)221, (short)126, (short)146, (short)127, (short)(-1), (short)121, (short)122, (short)(-1), (short)121, (short)234, (short)122, (short)(-1), (short)221, (short)121, (short)122, (short)(-1), (short)221, (short)121, (short)234, (short)122, (short)(-1), (short)121, (short)224, (short)122, (short)(-1), (short)121, (short)122, (short)(-1), (short)121, (short)234, (short)122, (short)(-1), (short)222, (short)121, (short)122, (short)(-1), (short)222, (short)121, (short)234, (short)122, (short)(-1), (short)233, (short)(-1), (short)221, (short)(-1), (short)233, (short)221, (short)(-1), (short)192, (short)233, (short)(-1), (short)192, (short)221, (short)(-1), (short)192, (short)233, (short)221, (short)(-1), (short)233, (short)(-1), (short)222, (short)(-1), (short)233, (short)222, (short)(-1), (short)192, (short)233, (short)(-1), (short)192, (short)222, (short)(-1), (short)192, (short)233, (short)222, (short)(-1), (short)230, (short)(-1), (short)233, (short)230, (short)(-1), (short)192, (short)233, (short)230, (short)(-1), (short)225, (short)192, (short)(-1), (short)153, (short)(-1), (short)121, (short)225, (short)122, (short)(-1), (short)226, (short)126, (short)180, (short)127, (short)(-1), (short)226, (short)126, (short)127, (short)(-1), (short)226, (short)126, (short)146, (short)127, (short)(-1), (short)229, (short)(-1), (short)233, (short)229, (short)(-1), (short)192, (short)229, (short)(-1), (short)192, (short)233, (short)229, (short)(-1), (short)233, (short)192, (short)229, (short)(-1), (short)226, (short)121, (short)(-1), (short)228, (short)234, (short)122, (short)(-1), (short)228, (short)237, (short)122, (short)(-1), (short)228, (short)122, (short)(-1), (short)229, (short)(-1), (short)226, (short)(-1), (short)192, (short)229, (short)(-1), (short)192, (short)226, (short)(-1), (short)226, (short)(-1), (short)233, (short)226, (short)(-1), (short)192, (short)226, (short)(-1), (short)192, (short)233, (short)226, (short)(-1), (short)233, (short)192, (short)226, (short)(-1), (short)199, (short)(-1), (short)232, (short)199, (short)(-1), (short)118, (short)(-1), (short)118, (short)232, (short)(-1), (short)118, (short)233, (short)(-1), (short)118, (short)232, (short)233, (short)(-1), (short)235, (short)(-1), (short)235, (short)128, (short)51, (short)(-1), (short)236, (short)(-1), (short)235, (short)128, (short)236, (short)(-1), (short)185, (short)225, (short)(-1), (short)185, (short)223, (short)(-1), (short)185, (short)129, (short)(-1), (short)185, (short)129, (short)225, (short)(-1), (short)186, (short)(-1), (short)65, (short)(-1), (short)153, (short)(-1), (short)237, (short)128, (short)153, (short)(-1), (short)182, (short)(-1), (short)182, (short)223, (short)(-1), (short)183, (short)(-1), (short)183, (short)223, (short)(-1), (short)177, (short)(-1), (short)141, (short)242, (short)142, (short)(-1), (short)141, (short)242, (short)128, (short)142, (short)(-1), (short)176, (short)(-1), (short)157, (short)(-1), (short)240, (short)(-1), (short)242, (short)128, (short)240, (short)(-1), (short)244, (short)(-1), (short)249, (short)(-1), (short)250, (short)(-1), (short)251, (short)(-1), (short)252, (short)(-1), (short)253, (short)(-1), (short)153, (short)138, (short)243, (short)(-1), (short)52, (short)180, (short)138, (short)243, (short)(-1), (short)53, (short)138, (short)243, (short)(-1), (short)181, (short)(-1), (short)245, (short)181, (short)(-1), (short)243, (short)(-1), (short)246, (short)243, (short)(-1), (short)246, (short)181, (short)(-1), (short)246, (short)(-1), (short)245, (short)(-1), (short)245, (short)246, (short)(-1), (short)141, (short)(-1), (short)141, (short)142, (short)(-1), (short)248, (short)247, (short)142, (short)(-1), (short)140, (short)(-1), (short)179, (short)140, (short)(-1), (short)54, (short)121, (short)179, (short)122, (short)243, (short)(-1), (short)54, (short)121, (short)179, (short)122, (short)243, (short)64, (short)243, (short)(-1), (short)55, (short)121, (short)179, (short)122, (short)243, (short)(-1), (short)56, (short)121, (short)179, (short)122, (short)243, (short)(-1), (short)57, (short)243, (short)56, (short)121, (short)179, (short)122, (short)140, (short)(-1), (short)58, (short)121, (short)250, (short)250, (short)122, (short)243, (short)(-1), (short)58, (short)121, (short)250, (short)250, (short)179, (short)122, (short)243, (short)(-1), (short)56, (short)121, (short)122, (short)243, (short)(-1), (short)58, (short)121, (short)250, (short)122, (short)243, (short)(-1), (short)58, (short)121, (short)122, (short)243, (short)(-1), (short)59, (short)153, (short)140, (short)(-1), (short)60, (short)140, (short)(-1), (short)61, (short)140, (short)(-1), (short)62, (short)140, (short)(-1), (short)62, (short)179, (short)140, (short)(-1), (short)5, (short)(-1), (short)184, (short)153, (short)141, (short)266, (short)142, (short)(-1), (short)184, (short)153, (short)141, (short)142, (short)(-1), (short)185, (short)153, (short)141, (short)266, (short)142, (short)(-1), (short)185, (short)153, (short)141, (short)142, (short)(-1), (short)146, (short)141, (short)266, (short)142, (short)(-1), (short)146, (short)141, (short)142, (short)(-1), (short)153, (short)141, (short)266, (short)142, (short)(-1), (short)153, (short)141, (short)142, (short)(-1), (short)141, (short)266, (short)142, (short)(-1), (short)141, (short)142, (short)(-1), (short)149, (short)249, (short)(-1), (short)152, (short)249, (short)(-1), (short)152, (short)140, (short)(-1), (short)150, (short)249, (short)(-1), (short)151, (short)249, (short)(-1), (short)184, (short)227, (short)(-1), (short)184, (short)231, (short)(-1), (short)260, (short)249, (short)(-1), (short)156, (short)139, (short)241, (short)(-1), (short)241, (short)(-1), (short)262, (short)(-1), (short)263, (short)128, (short)262, (short)(-1), (short)263, (short)140, (short)(-1), (short)264, (short)(-1), (short)261, (short)(-1), (short)265, (short)264, (short)(-1), (short)265, (short)261, (short)(-1), (short)140, (short)(-1), (short)265, (short)140, (short)(-1), (short)265, (short)(-1), (short)263, (short)(-1), (short)265, (short)263, (short)(-1), (short)236, (short)(-1), (short)236, (short)138, (short)180, (short)(-1)
976 };
977
978 static const yytype_uint16 yyrline[] = 
979 {
980 (unsigned short)0, (unsigned short)226, (unsigned short)226, (unsigned short)244, (unsigned short)278, (unsigned short)328, (unsigned short)329, (unsigned short)356, (unsigned short)360, (unsigned short)361, (unsigned short)362, (unsigned short)379, (unsigned short)381, (unsigned short)386, (unsigned short)391, (unsigned short)396, (unsigned short)398, (unsigned short)403, (unsigned short)408, (unsigned short)409, (unsigned short)414, (unsigned short)416, (unsigned short)418, (unsigned short)420, (unsigned short)422, (unsigned short)423, (unsigned short)424, (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)435, (unsigned short)439, (unsigned short)440, (unsigned short)441, (unsigned short)442, (unsigned short)443, (unsigned short)444, (unsigned short)457, (unsigned short)458, (unsigned short)459, (unsigned short)463, (unsigned short)468, (unsigned short)469, (unsigned short)470, (unsigned short)471, (unsigned short)472, (unsigned short)473, (unsigned short)486, (unsigned short)487, (unsigned short)488, (unsigned short)492, (unsigned short)493, (unsigned short)494, (unsigned short)495, (unsigned short)499, (unsigned short)500, (unsigned short)501, (unsigned short)502, (unsigned short)503, (unsigned short)504, (unsigned short)505, (unsigned short)506, (unsigned short)507, (unsigned short)511, (unsigned short)512, (unsigned short)516, (unsigned short)517, (unsigned short)521, (unsigned short)522, (unsigned short)523, (unsigned short)524, (unsigned short)525, (unsigned short)526, (unsigned short)527, (unsigned short)531, (unsigned short)532, (unsigned short)536, (unsigned short)537, (unsigned short)538, (unsigned short)539, (unsigned short)543, (unsigned short)544, (unsigned short)545, (unsigned short)549, (unsigned short)550, (unsigned short)551, (unsigned short)555, (unsigned short)563, (unsigned short)564, (unsigned short)565, (unsigned short)566, (unsigned short)567, (unsigned short)571, (unsigned short)572, (unsigned short)573, (unsigned short)577, (unsigned short)578, (unsigned short)582, (unsigned short)583, (unsigned short)587, (unsigned short)588, (unsigned short)592, (unsigned short)593, (unsigned short)597, (unsigned short)598, (unsigned short)602, (unsigned short)603, (unsigned short)607, (unsigned short)608, (unsigned short)609, (unsigned short)613, (unsigned short)614, (unsigned short)615, (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)632, (unsigned short)636, (unsigned short)637, (unsigned short)638, (unsigned short)639, (unsigned short)643, (unsigned short)644, (unsigned short)645, (unsigned short)646, (unsigned short)647, (unsigned short)648, (unsigned short)649, (unsigned short)650, (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)667, (unsigned short)668, (unsigned short)669, (unsigned short)670, (unsigned short)671, (unsigned short)672, (unsigned short)673, (unsigned short)674, (unsigned short)675, (unsigned short)676, (unsigned short)680, (unsigned short)681, (unsigned short)682, (unsigned short)683, (unsigned short)684, (unsigned short)685, (unsigned short)686, (unsigned short)687, (unsigned short)688, (unsigned short)689, (unsigned short)690, (unsigned short)691, (unsigned short)695, (unsigned short)696, (unsigned short)700, (unsigned short)701, (unsigned short)702, (unsigned short)703, (unsigned short)704, (unsigned short)705, (unsigned short)706, (unsigned short)707, (unsigned short)708, (unsigned short)726, (unsigned short)743, (unsigned short)744, (unsigned short)745, (unsigned short)746, (unsigned short)747, (unsigned short)748, (unsigned short)749, (unsigned short)750, (unsigned short)751, (unsigned short)752, (unsigned short)753, (unsigned short)754, (unsigned short)755, (unsigned short)773, (unsigned short)790, (unsigned short)791, (unsigned short)795, (unsigned short)796, (unsigned short)800, (unsigned short)801, (unsigned short)802, (unsigned short)803, (unsigned short)804, (unsigned short)805, (unsigned short)809, (unsigned short)810, (unsigned short)811, (unsigned short)815, (unsigned short)816, (unsigned short)817, (unsigned short)822, (unsigned short)823, (unsigned short)824, (unsigned short)825, (unsigned short)826, (unsigned short)830, (unsigned short)831, (unsigned short)835, (unsigned short)836, (unsigned short)837, (unsigned short)841, (unsigned short)842, (unsigned short)846, (unsigned short)850, (unsigned short)851, (unsigned short)852, (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)874, (unsigned short)875, (unsigned short)876, (unsigned short)877, (unsigned short)878, (unsigned short)879, (unsigned short)880, (unsigned short)884, (unsigned short)885, (unsigned short)886, (unsigned short)887, (unsigned short)888, (unsigned short)889, (unsigned short)890, (unsigned short)891, (unsigned short)892, (unsigned short)893, (unsigned short)894, (unsigned short)895, (unsigned short)896, (unsigned short)897, (unsigned short)898, (unsigned short)899, (unsigned short)900, (unsigned short)901, (unsigned short)902, (unsigned short)903, (unsigned short)904, (unsigned short)905, (unsigned short)910, (unsigned short)911, (unsigned short)912, (unsigned short)913, (unsigned short)914, (unsigned short)917, (unsigned short)918, (unsigned short)919, (unsigned short)920, (unsigned short)921, (unsigned short)926, (unsigned short)927, (unsigned short)930, (unsigned short)932, (unsigned short)937, (unsigned short)938, (unsigned short)943, (unsigned short)944, (unsigned short)955, (unsigned short)959, (unsigned short)961, (unsigned short)962, (unsigned short)964, (unsigned short)965, (unsigned short)989, (unsigned short)1004, (unsigned short)1005, (unsigned short)1009, (unsigned short)1010, (unsigned short)1014, (unsigned short)1015, (unsigned short)1019, (unsigned short)1023, (unsigned short)1024, (unsigned short)1028, (unsigned short)1030, (unsigned short)1032, (unsigned short)1034, (unsigned short)1036, (unsigned short)1039, (unsigned short)1041, (unsigned short)1043, (unsigned short)1045, (unsigned short)1047, (unsigned short)1050, (unsigned short)1052, (unsigned short)1054, (unsigned short)1056, (unsigned short)1058, (unsigned short)1061, (unsigned short)1063, (unsigned short)1065, (unsigned short)1067, (unsigned short)1069, (unsigned short)1074, (unsigned short)1075, (unsigned short)1076, (unsigned short)1077, (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)1096, (unsigned short)1098, (unsigned short)1100, (unsigned short)1105, (unsigned short)1106, (unsigned short)1110, (unsigned short)1112, (unsigned short)1113, (unsigned short)1114, (unsigned short)1115, (unsigned short)1119, (unsigned short)1121, (unsigned short)1126, (unsigned short)1128, (unsigned short)1134, (unsigned short)1136, (unsigned short)1138, (unsigned short)1140, (unsigned short)1142, (unsigned short)1144, (unsigned short)1146, (unsigned short)1148, (unsigned short)1150, (unsigned short)1152, (unsigned short)1154, (unsigned short)1159, (unsigned short)1161, (unsigned short)1163, (unsigned short)1165, (unsigned short)1167, (unsigned short)1172, (unsigned short)1173, (unsigned short)1174, (unsigned short)1175, (unsigned short)1176, (unsigned short)1177, (unsigned short)1181, (unsigned short)1182, (unsigned short)1183, (unsigned short)1184, (unsigned short)1185, (unsigned short)1186, (unsigned short)1232, (unsigned short)1233, (unsigned short)1235, (unsigned short)1237, (unsigned short)1242, (unsigned short)1244, (unsigned short)1246, (unsigned short)1248, (unsigned short)1250, (unsigned short)1255, (unsigned short)1256, (unsigned short)1259, (unsigned short)1261, (unsigned short)1263, (unsigned short)1269, (unsigned short)1273, (unsigned short)1275, (unsigned short)1277, (unsigned short)1282, (unsigned short)1283, (unsigned short)1284, (unsigned short)1286, (unsigned short)1291, (unsigned short)1292, (unsigned short)1293, (unsigned short)1294, (unsigned short)1295, (unsigned short)1299, (unsigned short)1300, (unsigned short)1304, (unsigned short)1305, (unsigned short)1306, (unsigned short)1307, (unsigned short)1311, (unsigned short)1312, (unsigned short)1316, (unsigned short)1317, (unsigned short)1321, (unsigned short)1322, (unsigned short)1323, (unsigned short)1324, (unsigned short)1325, (unsigned short)1336, (unsigned short)1361, (unsigned short)1362, (unsigned short)1366, (unsigned short)1367, (unsigned short)1371, (unsigned short)1372, (unsigned short)1376, (unsigned short)1378, (unsigned short)1380, (unsigned short)1396, (unsigned short)1398, (unsigned short)1420, (unsigned short)1422, (unsigned short)1427, (unsigned short)1428, (unsigned short)1429, (unsigned short)1430, (unsigned short)1431, (unsigned short)1432, (unsigned short)1436, (unsigned short)1438, (unsigned short)1440, (unsigned short)1445, (unsigned short)1446, (unsigned short)1450, (unsigned short)1451, (unsigned short)1454, (unsigned short)1458, (unsigned short)1459, (unsigned short)1460, (unsigned short)1464, (unsigned short)1468, (unsigned short)1476, (unsigned short)1481, (unsigned short)1482, (unsigned short)1486, (unsigned short)1487, (unsigned short)1488, (unsigned short)1492, (unsigned short)1493, (unsigned short)1494, (unsigned short)1495, (unsigned short)1497, (unsigned short)1498, (unsigned short)1499, (unsigned short)1503, (unsigned short)1504, (unsigned short)1505, (unsigned short)1506, (unsigned short)1507, (unsigned short)1511, (unsigned short)1515, (unsigned short)1517, (unsigned short)1522, (unsigned short)1524, (unsigned short)1549, (unsigned short)1551, (unsigned short)1553, (unsigned short)1555, (unsigned short)1560, (unsigned short)1562, (unsigned short)1566, (unsigned short)1568, (unsigned short)1570, (unsigned short)1572, (unsigned short)1574, (unsigned short)1580, (unsigned short)1582, (unsigned short)1587, (unsigned short)1592, (unsigned short)1593, (unsigned short)1597, (unsigned short)1599, (unsigned short)1604, (unsigned short)1609, (unsigned short)1610, (unsigned short)1611, (unsigned short)1612, (unsigned short)1613, (unsigned short)1614, (unsigned short)1618, (unsigned short)1619, (unsigned short)1620, (unsigned short)1624, (unsigned short)1625
981 };
982
983 static const char * const yytname[] = 
984 {
985 "$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", "BOOL", "_BOOL", "_COMPLEX", "_IMAGINARY", "RESTRICT", "THREAD", "'*'", "'<'", "'>'", "'('", "')'", "'~'", "'$'", "'.'", "'['", "']'", "','", "'&'", "'+'", "'-'", "'!'", "'/'", "'%'", "'^'", "'|'", "'?'", "':'", "'='", "';'", "'{'", "'}'", "$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
986 };
987
988 static const yytype_uint16 yyr1[] = 
989 {
990 (unsigned short)0, (unsigned short)143, (unsigned short)144, (unsigned short)144, (unsigned short)145, (unsigned short)146, (unsigned short)146, (unsigned short)147, (unsigned short)148, (unsigned short)148, (unsigned short)148, (unsigned short)149, (unsigned short)149, (unsigned short)150, (unsigned short)151, (unsigned short)152, (unsigned short)152, (unsigned short)153, (unsigned short)154, (unsigned short)154, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)155, (unsigned short)156, (unsigned short)156, (unsigned short)156, (unsigned short)156, (unsigned short)156, (unsigned short)156, (unsigned short)156, (unsigned short)156, (unsigned short)156, (unsigned short)157, (unsigned short)158, (unsigned short)158, (unsigned short)158, (unsigned short)158, (unsigned short)158, (unsigned short)158, (unsigned short)158, (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)160, (unsigned short)160, (unsigned short)160, (unsigned short)160, (unsigned short)160, (unsigned short)160, (unsigned short)161, (unsigned short)161, (unsigned short)162, (unsigned short)162, (unsigned short)163, (unsigned short)163, (unsigned short)163, (unsigned short)163, (unsigned short)163, (unsigned short)163, (unsigned short)163, (unsigned short)164, (unsigned short)164, (unsigned short)165, (unsigned short)165, (unsigned short)165, (unsigned short)165, (unsigned short)166, (unsigned short)166, (unsigned short)166, (unsigned short)167, (unsigned short)167, (unsigned short)167, (unsigned short)168, (unsigned short)169, (unsigned short)169, (unsigned short)169, (unsigned short)169, (unsigned short)169, (unsigned short)170, (unsigned short)170, (unsigned short)170, (unsigned short)171, (unsigned short)171, (unsigned short)172, (unsigned short)172, (unsigned short)173, (unsigned short)173, (unsigned short)174, (unsigned short)174, (unsigned short)175, (unsigned short)175, (unsigned short)176, (unsigned short)176, (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)178, (unsigned short)179, (unsigned short)179, (unsigned short)180, (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)183, (unsigned short)183, (unsigned short)183, (unsigned short)183, (unsigned short)183, (unsigned short)183, (unsigned short)183, (unsigned short)183, (unsigned short)183, (unsigned short)183, (unsigned short)184, (unsigned short)184, (unsigned short)184, (unsigned short)184, (unsigned short)184, (unsigned short)184, (unsigned short)184, (unsigned short)184, (unsigned short)184, (unsigned short)184, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)185, (unsigned short)186, (unsigned short)186, (unsigned short)187, (unsigned short)187, (unsigned short)187, (unsigned short)187, (unsigned short)187, (unsigned short)187, (unsigned short)187, (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)188, (unsigned short)188, (unsigned short)188, (unsigned short)188, (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)191, (unsigned short)191, (unsigned short)191, (unsigned short)191, (unsigned short)191, (unsigned short)191, (unsigned short)192, (unsigned short)192, (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)195, (unsigned short)195, (unsigned short)196, (unsigned short)196, (unsigned short)196, (unsigned short)197, (unsigned short)197, (unsigned short)198, (unsigned short)199, (unsigned short)199, (unsigned short)199, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)200, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (unsigned short)201, (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)202, (unsigned short)202, (unsigned short)202, (unsigned short)202, (unsigned short)202, (unsigned short)202, (unsigned short)202, (unsigned short)202, (unsigned short)203, (unsigned short)203, (unsigned short)203, (unsigned short)203, (unsigned short)204, (unsigned short)204, (unsigned short)205, (unsigned short)205, (unsigned short)206, (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)209, (unsigned short)209, (unsigned short)210, (unsigned short)210, (unsigned short)211, (unsigned short)212, (unsigned short)212, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)213, (unsigned short)214, (unsigned short)214, (unsigned short)214, (unsigned short)214, (unsigned short)214, (unsigned short)214, (unsigned short)214, (unsigned short)214, (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)218, (unsigned short)218, (unsigned short)218, (unsigned short)218, (unsigned short)218, (unsigned short)219, (unsigned short)219, (unsigned short)220, (unsigned short)220, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)221, (unsigned short)222, (unsigned short)222, (unsigned short)222, (unsigned short)222, (unsigned short)222, (unsigned short)223, (unsigned short)223, (unsigned short)223, (unsigned short)223, (unsigned short)223, (unsigned short)223, (unsigned short)224, (unsigned short)224, (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)226, (unsigned short)226, (unsigned short)226, (unsigned short)226, (unsigned short)226, (unsigned short)227, (unsigned short)227, (unsigned short)227, (unsigned short)227, (unsigned short)227, (unsigned short)228, (unsigned short)229, (unsigned short)229, (unsigned short)229, (unsigned short)230, (unsigned short)230, (unsigned short)230, (unsigned short)230, (unsigned short)231, (unsigned short)231, (unsigned short)231, (unsigned short)231, (unsigned short)231, (unsigned short)232, (unsigned short)232, (unsigned short)233, (unsigned short)233, (unsigned short)233, (unsigned short)233, (unsigned short)234, (unsigned short)234, (unsigned short)235, (unsigned short)235, (unsigned short)236, (unsigned short)236, (unsigned short)236, (unsigned short)236, (unsigned short)236, (unsigned short)236, (unsigned short)237, (unsigned short)237, (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)242, (unsigned short)242, (unsigned short)243, (unsigned short)243, (unsigned short)243, (unsigned short)243, (unsigned short)243, (unsigned short)243, (unsigned short)244, (unsigned short)244, (unsigned short)244, (unsigned short)245, (unsigned short)245, (unsigned short)246, (unsigned short)246, (unsigned short)246, (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)252, (unsigned short)252, (unsigned short)252, (unsigned short)252, (unsigned short)252, (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)255, (unsigned short)255, (unsigned short)256, (unsigned short)256, (unsigned short)257, (unsigned short)257, (unsigned short)257, (unsigned short)257, (unsigned short)258, (unsigned short)258, (unsigned short)259, (unsigned short)259, (unsigned short)259, (unsigned short)259, (unsigned short)259, (unsigned short)260, (unsigned short)260, (unsigned short)261, (unsigned short)262, (unsigned short)262, (unsigned short)263, (unsigned short)263, (unsigned short)264, (unsigned short)265, (unsigned short)265, (unsigned short)265, (unsigned short)265, (unsigned short)265, (unsigned short)265, (unsigned short)266, (unsigned short)266, (unsigned short)266, (unsigned short)267, (unsigned short)267
991 };
992
993 static const yytype_uint8 yyr2[] = 
994 {
995 (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)2, (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)2, (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)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)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)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)2, (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
996 };
997
998 static const yytype_uint16 yydefact[] = 
999 {
1000 (unsigned short)0, (unsigned short)17, (unsigned short)7, (unsigned short)203, (unsigned short)204, (unsigned short)205, (unsigned short)206, (unsigned short)207, (unsigned short)232, (unsigned short)233, (unsigned short)234, (unsigned short)235, (unsigned short)236, (unsigned short)238, (unsigned short)241, (unsigned short)242, (unsigned short)239, (unsigned short)240, (unsigned short)228, (unsigned short)229, (unsigned short)231, (unsigned short)237, (unsigned short)304, (unsigned short)305, (unsigned short)0, (unsigned short)427, (unsigned short)252, (unsigned short)209, (unsigned short)210, (unsigned short)212, (unsigned short)253, (unsigned short)254, (unsigned short)243, (unsigned short)0, (unsigned short)0, (unsigned short)213, (unsigned short)214, (unsigned short)245, (unsigned short)244, (unsigned short)208, (unsigned short)167, (unsigned short)174, (unsigned short)248, (unsigned short)8, (unsigned short)5, (unsigned short)0, (unsigned short)173, (unsigned short)426, (unsigned short)161, (unsigned short)227, (unsigned short)0, (unsigned short)211, (unsigned short)230, (unsigned short)163, (unsigned short)165, (unsigned short)169, (unsigned short)246, (unsigned short)0, (unsigned short)247, (unsigned short)171, (unsigned short)511, (unsigned short)0, (unsigned short)0, (unsigned short)347, (unsigned short)346, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)4, (unsigned short)2, (unsigned short)3, (unsigned short)6, (unsigned short)414, (unsigned short)0, (unsigned short)0, (unsigned short)424, (unsigned short)168, (unsigned short)389, (unsigned short)162, (unsigned short)227, (unsigned short)164, (unsigned short)166, (unsigned short)170, (unsigned short)172, (unsigned short)374, (unsigned short)423, (unsigned short)422, (unsigned short)404, (unsigned short)0, (unsigned short)403, (unsigned short)385, (unsigned short)373, (unsigned short)0, (unsigned short)0, (unsigned short)8, (unsigned short)288, (unsigned short)287, (unsigned short)0, (unsigned short)0, (unsigned short)1, (unsigned short)355, (unsigned short)0, (unsigned short)353, (unsigned short)0, (unsigned short)0, (unsigned short)35, (unsigned short)22, (unsigned short)478, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)78, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)73, (unsigned short)0, (unsigned short)76, (unsigned short)0, (unsigned short)72, (unsigned short)74, (unsigned short)75, (unsigned short)77, (unsigned short)0, (unsigned short)20, (unsigned short)36, (unsigned short)18, (unsigned short)69, (unsigned short)68, (unsigned short)79, (unsigned short)0, (unsigned short)81, (unsigned short)85, (unsigned short)88, (unsigned short)92, (unsigned short)0, (unsigned short)97, (unsigned short)100, (unsigned short)102, (unsigned short)104, (unsigned short)106, (unsigned short)108, (unsigned short)110, (unsigned short)112, (unsigned short)0, (unsigned short)23, (unsigned short)21, (unsigned short)0, (unsigned short)0, (unsigned short)248, (unsigned short)20, (unsigned short)79, (unsigned short)295, (unsigned short)293, (unsigned short)0, (unsigned short)297, (unsigned short)296, (unsigned short)302, (unsigned short)0, (unsigned short)412, (unsigned short)415, (unsigned short)416, (unsigned short)364, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)418, (unsigned short)420, (unsigned short)358, (unsigned short)0, (unsigned short)128, (unsigned short)0, (unsigned short)0, (unsigned short)389, (unsigned short)0, (unsigned short)425, (unsigned short)0, (unsigned short)377, (unsigned short)406, (unsigned short)405, (unsigned short)376, (unsigned short)0, (unsigned short)0, (unsigned short)388, (unsigned short)399, (unsigned short)0, (unsigned short)402, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)375, (unsigned short)386, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)338, (unsigned short)280, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)20, (unsigned short)0, (unsigned short)0, (unsigned short)227, (unsigned short)0, (unsigned short)309, (unsigned short)0, (unsigned short)337, (unsigned short)306, (unsigned short)0, (unsigned short)12, (unsigned short)394, (unsigned short)0, (unsigned short)0, (unsigned short)21, (unsigned short)335, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)290, (unsigned short)289, (unsigned short)512, (unsigned short)0, (unsigned short)0, (unsigned short)348, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)46, (unsigned short)71, (unsigned short)70, (unsigned short)63, (unsigned short)0, (unsigned short)59, (unsigned short)60, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)66, (unsigned short)26, (unsigned short)126, (unsigned short)0, (unsigned short)430, (unsigned short)133, (unsigned short)135, (unsigned short)139, (unsigned short)137, (unsigned short)0, (unsigned short)24, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)43, (unsigned short)44, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)41, (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)124, (unsigned short)125, (unsigned short)115, (unsigned short)0, (unsigned short)61, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)93, (unsigned short)0, (unsigned short)0, (unsigned short)91, (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)249, (unsigned short)250, (unsigned short)251, (unsigned short)0, (unsigned short)0, (unsigned short)227, (unsigned short)294, (unsigned short)373, (unsigned short)0, (unsigned short)10, (unsigned short)9, (unsigned short)0, (unsigned short)413, (unsigned short)417, (unsigned short)357, (unsigned short)390, (unsigned short)365, (unsigned short)0, (unsigned short)360, (unsigned short)359, (unsigned short)0, (unsigned short)378, (unsigned short)387, (unsigned short)366, (unsigned short)0, (unsigned short)361, (unsigned short)0, (unsigned short)0, (unsigned short)392, (unsigned short)0, (unsigned short)0, (unsigned short)400, (unsigned short)401, (unsigned short)0, (unsigned short)215, (unsigned short)216, (unsigned short)219, (unsigned short)218, (unsigned short)217, (unsigned short)0, (unsigned short)220, (unsigned short)222, (unsigned short)0, (unsigned short)256, (unsigned short)257, (unsigned short)258, (unsigned short)259, (unsigned short)260, (unsigned short)262, (unsigned short)265, (unsigned short)266, (unsigned short)263, (unsigned short)264, (unsigned short)255, (unsigned short)261, (unsigned short)0, (unsigned short)276, (unsigned short)267, (unsigned short)0, (unsigned short)0, (unsigned short)269, (unsigned short)268, (unsigned short)272, (unsigned short)181, (unsigned short)0, (unsigned short)175, (unsigned short)177, (unsigned short)179, (unsigned short)270, (unsigned short)0, (unsigned short)271, (unsigned short)0, (unsigned short)16, (unsigned short)73, (unsigned short)0, (unsigned short)20, (unsigned short)0, (unsigned short)458, (unsigned short)0, (unsigned short)489, (unsigned short)492, (unsigned short)493, (unsigned short)491, (unsigned short)490, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)332, (unsigned short)389, (unsigned short)227, (unsigned short)0, (unsigned short)339, (unsigned short)407, (unsigned short)11, (unsigned short)341, (unsigned short)0, (unsigned short)396, (unsigned short)0, (unsigned short)278, (unsigned short)307, (unsigned short)0, (unsigned short)336, (unsigned short)0, (unsigned short)395, (unsigned short)334, (unsigned short)333, (unsigned short)0, (unsigned short)279, (unsigned short)0, (unsigned short)285, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)356, (unsigned short)354, (unsigned short)0, (unsigned short)352, (unsigned short)0, (unsigned short)349, (unsigned short)145, (unsigned short)20, (unsigned short)0, (unsigned short)432, (unsigned short)141, (unsigned short)143, (unsigned short)149, (unsigned short)147, (unsigned short)0, (unsigned short)0, (unsigned short)53, (unsigned short)54, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)51, (unsigned short)0, (unsigned short)0, (unsigned short)227, (unsigned short)380, (unsigned short)0, (unsigned short)379, (unsigned short)195, (unsigned short)0, (unsigned short)185, (unsigned short)187, (unsigned short)189, (unsigned short)191, (unsigned short)193, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)19, (unsigned short)0, (unsigned short)0, (unsigned short)134, (unsigned short)136, (unsigned short)140, (unsigned short)138, (unsigned short)431, (unsigned short)0, (unsigned short)0, (unsigned short)506, (unsigned short)0, (unsigned short)484, (unsigned short)69, (unsigned short)438, (unsigned short)437, (unsigned short)0, (unsigned short)151, (unsigned short)153, (unsigned short)155, (unsigned short)159, (unsigned short)157, (unsigned short)498, (unsigned short)45, (unsigned short)0, (unsigned short)503, (unsigned short)499, (unsigned short)509, (unsigned short)502, (unsigned short)0, (unsigned short)0, (unsigned short)486, (unsigned short)0, (unsigned short)42, (unsigned short)38, (unsigned short)56, (unsigned short)0, (unsigned short)55, (unsigned short)40, (unsigned short)0, (unsigned short)114, (unsigned short)113, (unsigned short)82, (unsigned short)83, (unsigned short)84, (unsigned short)86, (unsigned short)87, (unsigned short)89, (unsigned short)90, (unsigned short)95, (unsigned short)96, (unsigned short)94, (unsigned short)98, (unsigned short)99, (unsigned short)101, (unsigned short)103, (unsigned short)105, (unsigned short)107, (unsigned short)109, (unsigned short)0, (unsigned short)293, (unsigned short)299, (unsigned short)298, (unsigned short)376, (unsigned short)301, (unsigned short)300, (unsigned short)303, (unsigned short)419, (unsigned short)421, (unsigned short)367, (unsigned short)363, (unsigned short)362, (unsigned short)393, (unsigned short)391, (unsigned short)429, (unsigned short)226, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)223, (unsigned short)347, (unsigned short)346, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)182, (unsigned short)176, (unsigned short)178, (unsigned short)180, (unsigned short)0, (unsigned short)287, (unsigned short)0, (unsigned short)15, (unsigned short)227, (unsigned short)0, (unsigned short)459, (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)461, (unsigned short)20, (unsigned short)0, (unsigned short)450, (unsigned short)0, (unsigned short)452, (unsigned short)441, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)442, (unsigned short)443, (unsigned short)444, (unsigned short)445, (unsigned short)446, (unsigned short)0, (unsigned short)308, (unsigned short)13, (unsigned short)343, (unsigned short)0, (unsigned short)409, (unsigned short)0, (unsigned short)0, (unsigned short)331, (unsigned short)0, (unsigned short)342, (unsigned short)0, (unsigned short)408, (unsigned short)397, (unsigned short)310, (unsigned short)398, (unsigned short)281, (unsigned short)277, (unsigned short)283, (unsigned short)0, (unsigned short)284, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)62, (unsigned short)146, (unsigned short)142, (unsigned short)144, (unsigned short)150, (unsigned short)148, (unsigned short)433, (unsigned short)64, (unsigned short)52, (unsigned short)48, (unsigned short)0, (unsigned short)50, (unsigned short)0, (unsigned short)369, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)383, (unsigned short)382, (unsigned short)0, (unsigned short)0, (unsigned short)381, (unsigned short)0, (unsigned short)0, (unsigned short)196, (unsigned short)186, (unsigned short)188, (unsigned short)190, (unsigned short)192, (unsigned short)194, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)65, (unsigned short)67, (unsigned short)127, (unsigned short)80, (unsigned short)25, (unsigned short)488, (unsigned short)0, (unsigned short)0, (unsigned short)389, (unsigned short)152, (unsigned short)154, (unsigned short)156, (unsigned short)160, (unsigned short)158, (unsigned short)494, (unsigned short)495, (unsigned short)496, (unsigned short)0, (unsigned short)501, (unsigned short)507, (unsigned short)505, (unsigned short)510, (unsigned short)504, (unsigned short)483, (unsigned short)485, (unsigned short)39, (unsigned short)0, (unsigned short)37, (unsigned short)0, (unsigned short)294, (unsigned short)0, (unsigned short)225, (unsigned short)224, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)325, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)290, (unsigned short)289, (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)474, (unsigned short)475, (unsigned short)476, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)462, (unsigned short)129, (unsigned short)389, (unsigned short)0, (unsigned short)199, (unsigned short)201, (unsigned short)451, (unsigned short)0, (unsigned short)454, (unsigned short)453, (unsigned short)460, (unsigned short)131, (unsigned short)482, (unsigned short)0, (unsigned short)410, (unsigned short)0, (unsigned short)340, (unsigned short)407, (unsigned short)0, (unsigned short)344, (unsigned short)411, (unsigned short)286, (unsigned short)282, (unsigned short)351, (unsigned short)350, (unsigned short)49, (unsigned short)47, (unsigned short)368, (unsigned short)370, (unsigned short)28, (unsigned short)384, (unsigned short)371, (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)487, (unsigned short)497, (unsigned short)500, (unsigned short)58, (unsigned short)57, (unsigned short)111, (unsigned short)221, (unsigned short)273, (unsigned short)274, (unsigned short)275, (unsigned short)183, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)315, (unsigned short)0, (unsigned short)0, (unsigned short)330, (unsigned short)0, (unsigned short)0, (unsigned short)449, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)473, (unsigned short)477, (unsigned short)0, (unsigned short)447, (unsigned short)0, (unsigned short)0, (unsigned short)130, (unsigned short)0, (unsigned short)481, (unsigned short)409, (unsigned short)0, (unsigned short)0, (unsigned short)408, (unsigned short)0, (unsigned short)372, (unsigned short)27, (unsigned short)197, (unsigned short)32, (unsigned short)0, (unsigned short)0, (unsigned short)29, (unsigned short)34, (unsigned short)0, (unsigned short)0, (unsigned short)323, (unsigned short)0, (unsigned short)324, (unsigned short)184, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)320, (unsigned short)448, (unsigned short)0, (unsigned short)0, (unsigned short)470, (unsigned short)0, (unsigned short)0, (unsigned short)472, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)480, (unsigned short)0, (unsigned short)200, (unsigned short)0, (unsigned short)434, (unsigned short)202, (unsigned short)410, (unsigned short)411, (unsigned short)345, (unsigned short)198, (unsigned short)31, (unsigned short)33, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)313, (unsigned short)0, (unsigned short)314, (unsigned short)0, (unsigned short)328, (unsigned short)0, (unsigned short)329, (unsigned short)0, (unsigned short)0, (unsigned short)463, (unsigned short)465, (unsigned short)466, (unsigned short)0, (unsigned short)471, (unsigned short)0, (unsigned short)0, (unsigned short)132, (unsigned short)479, (unsigned short)439, (unsigned short)0, (unsigned short)321, (unsigned short)322, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)0, (unsigned short)318, (unsigned short)0, (unsigned short)319, (unsigned short)0, (unsigned short)0, (unsigned short)468, (unsigned short)0, (unsigned short)0, (unsigned short)435, (unsigned short)311, (unsigned short)312, (unsigned short)326, (unsigned short)327, (unsigned short)0, (unsigned short)0, (unsigned short)464, (unsigned short)467, (unsigned short)469, (unsigned short)436, (unsigned short)440, (unsigned short)316, (unsigned short)317
1001 };
1002
1003 static const yytype_int16 yydefgoto[] = 
1004 {
1005 (short)(-1), (short)40, (short)41, (short)125, (short)43, (short)44, (short)203, (short)204, (short)205, (short)206, (short)126, (short)127, (short)128, (short)129, (short)468, (short)236, (short)490, (short)130, (short)153, (short)238, (short)132, (short)133, (short)134, (short)135, (short)136, (short)137, (short)138, (short)139, (short)140, (short)141, (short)142, (short)143, (short)144, (short)145, (short)250, (short)279, (short)565, (short)174, (short)706, (short)252, (short)423, (short)470, (short)209, (short)47, (short)365, (short)443, (short)701, (short)702, (short)48, (short)49, (short)50, (short)341, (short)342, (short)343, (short)51, (short)52, (short)53, (short)54, (short)446, (short)55, (short)56, (short)156, (short)157, (short)158, (short)159, (short)160, (short)57, (short)211, (short)212, (short)213, (short)214, (short)215, (short)391, (short)392, (short)58, (short)59, (short)101, (short)102, (short)84, (short)439, (short)166, (short)440, (short)167, (short)216, (short)217, (short)88, (short)218, (short)90, (short)395, (short)162, (short)219, (short)168, (short)169, (short)170, (short)192, (short)257, (short)428, (short)820, (short)476, (short)849, (short)568, (short)569, (short)570, (short)571, (short)572, (short)379, (short)573, (short)574, (short)575, (short)576, (short)577, (short)147, (short)578, (short)220, (short)148, (short)477, (short)222, (short)478, (short)479, (short)480, (short)481, (short)482, (short)483, (short)484, (short)61
1006 };
1007
1008 static const yytype_int16 yypact[] = 
1009 {
1010 (short)8734, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)53, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-79), (short)(-26), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-17), (short)(-778), (short)120, (short)7187, (short)(-778), (short)(-778), (short)(-778), (short)(-15), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)601, (short)(-778), (short)(-778), (short)38, (short)124, (short)189, (short)86, (short)109, (short)6931, (short)79, (short)6118, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)1015, (short)7289, (short)1820, (short)1128, (short)(-778), (short)113, (short)(-778), (short)13, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)377, (short)(-778), (short)876, (short)410, (short)8171, (short)(-778), (short)(-778), (short)536, (short)136, (short)3359, (short)(-76), (short)(-778), (short)143, (short)61, (short)6931, (short)(-778), (short)154, (short)(-59), (short)(-778), (short)189, (short)189, (short)(-778), (short)(-778), (short)(-778), (short)6971, (short)7004, (short)7004, (short)8824, (short)6931, (short)(-778), (short)8824, (short)6931, (short)7082, (short)(-778), (short)6250, (short)(-778), (short)305, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)173, (short)47, (short)(-778), (short)(-778), (short)625, (short)(-778), (short)1274, (short)6931, (short)(-778), (short)219, (short)208, (short)471, (short)6931, (short)311, (short)561, (short)188, (short)205, (short)222, (short)344, (short)67, (short)(-778), (short)247, (short)(-778), (short)(-778), (short)266, (short)50, (short)173, (short)29, (short)(-778), (short)471, (short)5999, (short)262, (short)(-778), (short)(-778), (short)(-778), (short)158, (short)(-778), (short)1015, (short)(-778), (short)(-778), (short)666, (short)304, (short)853, (short)313, (short)321, (short)(-778), (short)(-778), (short)(-55), (short)(-778), (short)333, (short)1128, (short)(-778), (short)146, (short)876, (short)1088, (short)377, (short)410, (short)(-778), (short)536, (short)8266, (short)6655, (short)(-778), (short)(-778), (short)6688, (short)(-778), (short)319, (short)356, (short)131, (short)32, (short)377, (short)(-778), (short)288, (short)8914, (short)8456, (short)6601, (short)8824, (short)(-778), (short)(-778), (short)376, (short)376, (short)376, (short)446, (short)55, (short)481, (short)5773, (short)146, (short)3483, (short)(-778), (short)(-60), (short)(-778), (short)(-778), (short)410, (short)(-778), (short)(-778), (short)1088, (short)370, (short)387, (short)(-778), (short)5381, (short)3607, (short)3731, (short)388, (short)400, (short)(-778), (short)6931, (short)189, (short)(-778), (short)238, (short)324, (short)6382, (short)(-778), (short)695, (short)(-778), (short)(-778), (short)6766, (short)(-778), (short)(-778), (short)113, (short)7487, (short)9004, (short)7586, (short)9004, (short)6382, (short)(-778), (short)(-778), (short)(-778), (short)152, (short)7977, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)431, (short)432, (short)2517, (short)2659, (short)189, (short)(-778), (short)(-778), (short)5097, (short)189, (short)6931, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)5173, (short)(-778), (short)6931, (short)6931, (short)6931, (short)6931, (short)6931, (short)6931, (short)6931, (short)471, (short)6931, (short)6931, (short)(-778), (short)6931, (short)6931, (short)6931, (short)6931, (short)6931, (short)6931, (short)6931, (short)6931, (short)6931, (short)(-778), (short)(-778), (short)(-778), (short)6118, (short)7388, (short)279, (short)420, (short)428, (short)6118, (short)(-778), (short)(-778), (short)6118, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)8644, (short)(-778), (short)(-778), (short)1088, (short)377, (short)(-778), (short)(-778), (short)439, (short)(-778), (short)129, (short)436, (short)(-778), (short)149, (short)442, (short)(-778), (short)(-778), (short)189, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)444, (short)456, (short)(-778), (short)340, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)79, (short)(-778), (short)(-778), (short)460, (short)467, (short)(-778), (short)(-778), (short)(-778), (short)479, (short)5657, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)441, (short)(-778), (short)8456, (short)(-778), (short)1015, (short)6514, (short)783, (short)8550, (short)448, (short)4921, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)5173, (short)899, (short)6931, (short)(-778), (short)178, (short)146, (short)2, (short)(-778), (short)410, (short)(-778), (short)369, (short)1088, (short)(-778), (short)32, (short)(-778), (short)(-778), (short)864, (short)(-778), (short)32, (short)(-778), (short)(-778), (short)(-778), (short)3855, (short)(-778), (short)3979, (short)(-778), (short)4103, (short)5381, (short)4227, (short)(-778), (short)(-778), (short)5381, (short)(-778), (short)5381, (short)(-778), (short)(-778), (short)55, (short)491, (short)7977, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)495, (short)189, (short)(-778), (short)(-778), (short)5138, (short)189, (short)6931, (short)(-778), (short)8076, (short)6931, (short)4, (short)482, (short)493, (short)516, (short)531, (short)7784, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)6931, (short)525, (short)7883, (short)532, (short)533, (short)(-778), (short)6931, (short)189, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)6931, (short)305, (short)(-778), (short)2801, (short)(-778), (short)711, (short)(-778), (short)(-778), (short)8456, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)376, (short)(-778), (short)(-778), (short)221, (short)(-778), (short)2943, (short)514, (short)(-778), (short)524, (short)(-778), (short)(-778), (short)(-778), (short)213, (short)(-778), (short)(-778), (short)465, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)219, (short)219, (short)208, (short)208, (short)471, (short)471, (short)471, (short)311, (short)311, (short)561, (short)188, (short)205, (short)222, (short)344, (short)296, (short)7685, (short)(-778), (short)(-778), (short)428, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)6931, (short)551, (short)458, (short)(-778), (short)(-778), (short)(-778), (short)6931, (short)79, (short)6118, (short)76, (short)(-56), (short)(-778), (short)(-778), (short)(-778), (short)48, (short)(-778), (short)79, (short)(-778), (short)146, (short)556, (short)(-778), (short)6931, (short)520, (short)558, (short)560, (short)563, (short)5062, (short)566, (short)189, (short)542, (short)548, (short)5544, (short)189, (short)(-778), (short)18, (short)280, (short)(-778), (short)5886, (short)(-778), (short)(-778), (short)2072, (short)2233, (short)547, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)550, (short)(-778), (short)(-778), (short)(-778), (short)3085, (short)410, (short)32, (short)1151, (short)(-778), (short)6931, (short)(-778), (short)32, (short)410, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)4351, (short)(-778), (short)4475, (short)4599, (short)4723, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)245, (short)(-778), (short)468, (short)(-778), (short)572, (short)573, (short)574, (short)482, (short)516, (short)8361, (short)6931, (short)482, (short)6118, (short)6931, (short)580, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)581, (short)579, (short)6931, (short)6931, (short)582, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)567, (short)5173, (short)189, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)5173, (short)(-778), (short)(-778), (short)(-778), (short)221, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)5173, (short)(-778), (short)6931, (short)(-778), (short)297, (short)(-778), (short)(-778), (short)588, (short)593, (short)56, (short)(-1), (short)376, (short)376, (short)(-778), (short)6118, (short)171, (short)257, (short)583, (short)(-778), (short)(-778), (short)(-778), (short)584, (short)5062, (short)6931, (short)6931, (short)6799, (short)665, (short)5437, (short)591, (short)(-778), (short)(-778), (short)(-778), (short)314, (short)598, (short)5062, (short)(-778), (short)(-778), (short)75, (short)343, (short)(-778), (short)617, (short)(-778), (short)2375, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)602, (short)410, (short)146, (short)(-778), (short)621, (short)1088, (short)619, (short)410, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)482, (short)(-778), (short)640, (short)639, (short)167, (short)642, (short)6118, (short)6931, (short)(-778), (short)643, (short)644, (short)6931, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-22), (short)(-52), (short)254, (short)376, (short)376, (short)(-778), (short)376, (short)376, (short)(-778), (short)260, (short)5062, (short)(-778), (short)317, (short)372, (short)5062, (short)391, (short)651, (short)5062, (short)5510, (short)(-778), (short)(-778), (short)6931, (short)(-778), (short)3227, (short)1128, (short)(-778), (short)5249, (short)(-778), (short)621, (short)32, (short)32, (short)621, (short)6931, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)330, (short)646, (short)(-778), (short)(-778), (short)655, (short)376, (short)(-778), (short)376, (short)(-778), (short)(-778), (short)(-10), (short)(-14), (short)22, (short)1, (short)376, (short)376, (short)(-778), (short)(-778), (short)5062, (short)5062, (short)(-778), (short)5062, (short)6931, (short)(-778), (short)5062, (short)6839, (short)638, (short)(-778), (short)641, (short)(-778), (short)5249, (short)(-778), (short)(-778), (short)621, (short)621, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)647, (short)648, (short)376, (short)(-778), (short)376, (short)(-778), (short)376, (short)(-778), (short)376, (short)(-778), (short)24, (short)40, (short)727, (short)(-778), (short)(-778), (short)402, (short)(-778), (short)5062, (short)412, (short)(-778), (short)(-778), (short)(-778), (short)157, (short)(-778), (short)(-778), (short)653, (short)654, (short)656, (short)657, (short)376, (short)(-778), (short)376, (short)(-778), (short)5062, (short)661, (short)(-778), (short)5062, (short)4779, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)660, (short)663, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)(-778)
1011 };
1012
1013 static const yytype_int16 yypgoto[] = 
1014 {
1015 (short)(-778), (short)371, (short)(-778), (short)686, (short)746, (short)209, (short)(-778), (short)(-778), (short)(-778), (short)(-778), (short)0, (short)(-778), (short)357, (short)252, (short)(-241), (short)(-778), (short)378, (short)379, (short)193, (short)698, (short)(-778), (short)(-120), (short)346, (short)322, (short)(-41), (short)(-778), (short)348, (short)523, (short)519, (short)522, (short)527, (short)530, (short)(-778), (short)1586, (short)(-51), (short)(-778), (short)383, (short)406, (short)(-364), (short)(-778), (short)(-778), (short)(-350), (short)187, (short)(-778), (short)(-778), (short)577, (short)(-778), (short)60, (short)1308, (short)961, (short)(-778), (short)(-778), (short)(-315), (short)(-778), (short)443, (short)(-778), (short)1162, (short)1225, (short)(-143), (short)1235, (short)(-170), (short)(-778), (short)251, (short)269, (short)528, (short)(-519), (short)(-179), (short)(-124), (short)438, (short)(-778), (short)(-778), (short)(-206), (short)(-778), (short)261, (short)(-136), (short)1390, (short)540, (short)612, (short)(-71), (short)(-394), (short)(-40), (short)(-174), (short)(-45), (short)(-42), (short)(-187), (short)(-778), (short)(-39), (short)(-66), (short)384, (short)(-778), (short)868, (short)(-86), (short)(-778), (short)10, (short)(-778), (short)(-778), (short)600, (short)(-777), (short)(-372), (short)(-778), (short)274, (short)(-778), (short)(-778), (short)278, (short)(-778), (short)(-778), (short)1161, (short)(-651), (short)(-778), (short)(-778), (short)(-778), (short)(-117), (short)(-778), (short)(-778), (short)415, (short)(-778), (short)(-778), (short)(-778), (short)389, (short)207, (short)390, (short)392, (short)(-778), (short)(-251), (short)(-778)
1016 };
1017
1018 static const yytype_int16 yytable[] = 
1019 {
1020 (short)45, (short)86, (short)191, (short)258, (short)87, (short)400, (short)85, (short)89, (short)180, (short)486, (short)60, (short)373, (short)280, (short)579, (short)146, (short)566, (short)1, (short)795, (short)370, (short)673, (short)194, (short)1, (short)394, (short)489, (short)64, (short)195, (short)154, (short)369, (short)533, (short)567, (short)178, (short)87, (short)1, (short)87, (short)89, (short)1, (short)89, (short)181, (short)494, (short)769, (short)182, (short)848, (short)65, (short)67, (short)619, (short)71, (short)77, (short)623, (short)793, (short)87, (short)1, (short)1, (short)89, (short)1, (short)368, (short)831, (short)1, (short)96, (short)1, (short)1, (short)829, (short)371, (short)100, (short)677, (short)1, (short)223, (short)150, (short)152, (short)401, (short)230, (short)835, (short)450, (short)319, (short)165, (short)369, (short)176, (short)369, (short)71, (short)1, (short)176, (short)402, (short)2, (short)1, (short)231, (short)299, (short)678, (short)259, (short)876, (short)190, (short)2, (short)796, (short)176, (short)833, (short)207, (short)856, (short)66, (short)288, (short)227, (short)325, (short)407, (short)409, (short)411, (short)67, (short)100, (short)100, (short)732, (short)92, (short)2, (short)371, (short)858, (short)371, (short)242, (short)322, (short)195, (short)242, (short)307, (short)1, (short)323, (short)813, (short)750, (short)794, (short)68, (short)72, (short)1, (short)99, (short)436, (short)71, (short)312, (short)832, (short)267, (short)585, (short)72, (short)830, (short)87, (short)73, (short)181, (short)89, (short)87, (short)182, (short)74, (short)89, (short)87, (short)586, (short)836, (short)89, (short)674, (short)675, (short)69, (short)70, (short)1, (short)71, (short)181, (short)71, (short)175, (short)182, (short)242, (short)697, (short)87, (short)753, (short)260, (short)89, (short)496, (short)497, (short)498, (short)834, (short)71, (short)857, (short)393, (short)304, (short)310, (short)260, (short)397, (short)303, (short)69, (short)70, (short)176, (short)98, (short)176, (short)749, (short)176, (short)404, (short)1, (short)859, (short)176, (short)45, (short)547, (short)370, (short)46, (short)260, (short)679, (short)71, (short)489, (short)1, (short)176, (short)62, (short)369, (short)260, (short)364, (short)77, (short)376, (short)242, (short)400, (short)225, (short)400, (short)300, (short)400, (short)704, (short)71, (short)267, (short)389, (short)176, (short)207, (short)461, (short)491, (short)643, (short)788, (short)774, (short)669, (short)676, (short)176, (short)567, (short)567, (short)543, (short)207, (short)207, (short)207, (short)728, (short)103, (short)495, (short)371, (short)100, (short)69, (short)70, (short)63, (short)421, (short)180, (short)435, (short)194, (short)69, (short)70, (short)754, (short)755, (short)71, (short)242, (short)442, (short)242, (short)442, (short)421, (short)503, (short)504, (short)104, (short)505, (short)456, (short)333, (short)155, (short)323, (short)524, (short)196, (short)131, (short)334, (short)46, (short)487, (short)616, (short)154, (short)72, (short)492, (short)95, (short)175, (short)154, (short)632, (short)259, (short)154, (short)741, (short)369, (short)454, (short)46, (short)526, (short)636, (short)311, (short)87, (short)455, (short)369, (short)89, (short)651, (short)224, (short)864, (short)312, (short)786, (short)597, (short)599, (short)259, (short)335, (short)600, (short)229, (short)601, (short)312, (short)69, (short)70, (short)243, (short)865, (short)629, (short)245, (short)240, (short)241, (short)421, (short)45, (short)226, (short)371, (short)629, (short)421, (short)107, (short)131, (short)152, (short)756, (short)259, (short)371, (short)336, (short)295, (short)45, (short)582, (short)68, (short)176, (short)1, (short)289, (short)290, (short)544, (short)757, (short)758, (short)522, (short)802, (short)803, (short)711, (short)337, (short)87, (short)528, (short)662, (short)89, (short)281, (short)284, (short)285, (short)296, (short)663, (short)640, (short)335, (short)87, (short)208, (short)641, (short)89, (short)583, (short)654, (short)617, (short)397, (short)282, (short)283, (short)590, (short)567, (short)535, (short)404, (short)297, (short)591, (short)298, (short)655, (short)338, (short)339, (short)593, (short)540, (short)230, (short)723, (short)336, (short)301, (short)545, (short)46, (short)77, (short)663, (short)797, (short)376, (short)71, (short)242, (short)416, (short)564, (short)417, (short)491, (short)312, (short)608, (short)337, (short)372, (short)176, (short)377, (short)302, (short)71, (short)176, (short)400, (short)131, (short)400, (short)400, (short)400, (short)176, (short)72, (short)176, (short)759, (short)305, (short)309, (short)804, (short)176, (short)639, (short)74, (short)363, (short)207, (short)455, (short)207, (short)340, (short)207, (short)207, (short)207, (short)338, (short)339, (short)207, (short)76, (short)207, (short)746, (short)698, (short)71, (short)743, (short)242, (short)455, (short)455, (short)315, (short)422, (short)393, (short)610, (short)291, (short)292, (short)131, (short)613, (short)665, (short)317, (short)45, (short)69, (short)70, (short)806, (short)452, (short)(-428), (short)455, (short)626, (short)1, (short)455, (short)322, (short)(-428), (short)29, (short)318, (short)824, (short)626, (short)230, (short)363, (short)771, (short)363, (short)71, (short)131, (short)312, (short)131, (short)320, (short)335, (short)531, (short)208, (short)418, (short)235, (short)419, (short)267, (short)532, (short)2, (short)645, (short)775, (short)131, (short)235, (short)666, (short)208, (short)208, (short)208, (short)332, (short)35, (short)36, (short)286, (short)287, (short)776, (short)1, (short)670, (short)336, (short)237, (short)261, (short)262, (short)263, (short)514, (short)46, (short)131, (short)807, (short)237, (short)514, (short)154, (short)184, (short)155, (short)455, (short)251, (short)337, (short)185, (short)228, (short)46, (short)181, (short)587, (short)221, (short)182, (short)405, (short)467, (short)467, (short)809, (short)242, (short)27, (short)28, (short)378, (short)244, (short)455, (short)29, (short)246, (short)703, (short)816, (short)861, (short)87, (short)76, (short)406, (short)89, (short)412, (short)455, (short)187, (short)338, (short)339, (short)863, (short)730, (short)188, (short)672, (short)152, (short)1, (short)455, (short)413, (short)712, (short)715, (short)680, (short)591, (short)682, (short)718, (short)176, (short)305, (short)593, (short)35, (short)36, (short)462, (short)74, (short)515, (short)564, (short)463, (short)691, (short)(-292), (short)518, (short)523, (short)696, (short)525, (short)71, (short)534, (short)529, (short)700, (short)131, (short)527, (short)564, (short)564, (short)131, (short)516, (short)363, (short)293, (short)294, (short)530, (short)519, (short)95, (short)76, (short)536, (short)251, (short)154, (short)176, (short)176, (short)383, (short)378, (short)537, (short)176, (short)550, (short)328, (short)664, (short)455, (short)331, (short)724, (short)455, (short)207, (short)538, (short)207, (short)207, (short)207, (short)264, (short)621, (short)1, (short)420, (short)265, (short)266, (short)501, (short)502, (short)27, (short)28, (short)744, (short)602, (short)76, (short)29, (short)76, (short)609, (short)420, (short)622, (short)385, (short)45, (short)251, (short)46, (short)152, (short)131, (short)221, (short)131, (short)1, (short)2, (short)499, (short)500, (short)261, (short)262, (short)263, (short)414, (short)154, (short)436, (short)221, (short)221, (short)221, (short)506, (short)507, (short)232, (short)233, (short)71, (short)35, (short)36, (short)131, (short)493, (short)624, (short)634, (short)363, (short)208, (short)637, (short)638, (short)660, (short)73, (short)685, (short)208, (short)363, (short)208, (short)74, (short)208, (short)208, (short)208, (short)661, (short)68, (short)208, (short)1, (short)208, (short)779, (short)71, (short)668, (short)782, (short)27, (short)28, (short)152, (short)683, (short)686, (short)29, (short)687, (short)692, (short)513, (short)688, (short)564, (short)42, (short)690, (short)693, (short)708, (short)709, (short)27, (short)28, (short)154, (short)725, (short)726, (short)29, (short)564, (short)1, (short)734, (short)71, (short)727, (short)429, (short)430, (short)431, (short)564, (short)736, (short)735, (short)739, (short)740, (short)747, (short)35, (short)36, (short)176, (short)1, (short)748, (short)176, (short)467, (short)261, (short)262, (short)263, (short)767, (short)761, (short)131, (short)760, (short)155, (short)819, (short)35, (short)36, (short)131, (short)703, (short)770, (short)42, (short)87, (short)152, (short)467, (short)89, (short)772, (short)821, (short)822, (short)(-389), (short)(-389), (short)93, (short)76, (short)778, (short)(-389), (short)264, (short)188, (short)76, (short)131, (short)265, (short)266, (short)149, (short)151, (short)131, (short)681, (short)777, (short)783, (short)251, (short)42, (short)172, (short)564, (short)784, (short)131, (short)131, (short)564, (short)785, (short)819, (short)564, (short)787, (short)790, (short)791, (short)810, (short)825, (short)42, (short)176, (short)(-389), (short)(-389), (short)846, (short)151, (short)176, (short)176, (short)826, (short)847, (short)69, (short)70, (short)1, (short)(-389), (short)(-389), (short)850, (short)851, (short)860, (short)(-389), (short)581, (short)603, (short)866, (short)867, (short)42, (short)868, (short)869, (short)42, (short)873, (short)877, (short)94, (short)151, (short)878, (short)564, (short)564, (short)46, (short)564, (short)612, (short)155, (short)564, (short)819, (short)248, (short)509, (short)432, (short)614, (short)508, (short)510, (short)433, (short)434, (short)221, (short)451, (short)221, (short)511, (short)221, (short)221, (short)221, (short)512, (short)689, (short)221, (short)264, (short)221, (short)467, (short)817, (short)265, (short)266, (short)588, (short)592, (short)520, (short)42, (short)415, (short)618, (short)564, (short)707, (short)714, (short)453, (short)705, (short)208, (short)644, (short)208, (short)208, (short)208, (short)652, (short)633, (short)131, (short)(-389), (short)(-389), (short)0, (short)564, (short)742, (short)(-389), (short)564, (short)155, (short)105, (short)0, (short)1, (short)106, (short)107, (short)42, (short)327, (short)657, (short)658, (short)330, (short)659, (short)0, (short)0, (short)131, (short)131, (short)131, (short)131, (short)0, (short)131, (short)42, (short)76, (short)42, (short)0, (short)0, (short)0, (short)131, (short)0, (short)2, (short)(-389), (short)(-389), (short)42, (short)0, (short)151, (short)131, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)467, (short)0, (short)0, (short)151, (short)151, (short)151, (short)0, (short)667, (short)91, (short)0, (short)0, (short)0, (short)0, (short)0, (short)151, (short)155, (short)0, (short)0, (short)260, (short)0, (short)0, (short)27, (short)28, (short)42, (short)0, (short)42, (short)29, (short)151, (short)0, (short)111, (short)112, (short)0, (short)42, (short)0, (short)163, (short)91, (short)0, (short)179, (short)695, (short)151, (short)151, (short)183, (short)0, (short)0, (short)27, (short)28, (short)0, (short)0, (short)131, (short)29, (short)0, (short)684, (short)131, (short)762, (short)0, (short)131, (short)131, (short)35, (short)36, (short)0, (short)114, (short)115, (short)0, (short)0, (short)131, (short)773, (short)0, (short)27, (short)28, (short)316, (short)0, (short)0, (short)29, (short)707, (short)0, (short)0, (short)0, (short)0, (short)0, (short)239, (short)35, (short)36, (short)120, (short)0, (short)151, (short)42, (short)0, (short)717, (short)0, (short)151, (short)0, (short)0, (short)151, (short)131, (short)131, (short)0, (short)131, (short)131, (short)42, (short)131, (short)131, (short)79, (short)0, (short)35, (short)36, (short)131, (short)221, (short)0, (short)221, (short)221, (short)221, (short)72, (short)97, (short)0, (short)175, (short)580, (short)0, (short)308, (short)0, (short)0, (short)467, (short)0, (short)731, (short)0, (short)314, (short)733, (short)0, (short)0, (short)79, (short)805, (short)177, (short)131, (short)0, (short)808, (short)737, (short)738, (short)811, (short)179, (short)0, (short)321, (short)0, (short)186, (short)0, (short)0, (short)0, (short)0, (short)193, (short)131, (short)210, (short)0, (short)131, (short)131, (short)42, (short)18, (short)19, (short)151, (short)0, (short)42, (short)0, (short)151, (short)0, (short)179, (short)0, (short)763, (short)764, (short)766, (short)0, (short)0, (short)0, (short)0, (short)0, (short)396, (short)398, (short)0, (short)839, (short)840, (short)0, (short)841, (short)0, (short)0, (short)843, (short)0, (short)0, (short)27, (short)28, (short)1, (short)0, (short)151, (short)29, (short)151, (short)0, (short)151, (short)151, (short)151, (short)0, (short)0, (short)151, (short)0, (short)151, (short)0, (short)0, (short)0, (short)0, (short)42, (short)0, (short)441, (short)0, (short)441, (short)0, (short)0, (short)306, (short)0, (short)862, (short)0, (short)308, (short)0, (short)42, (short)0, (short)0, (short)35, (short)36, (short)0, (short)186, (short)0, (short)0, (short)1, (short)0, (short)72, (short)872, (short)0, (short)177, (short)874, (short)0, (short)186, (short)193, (short)789, (short)0, (short)0, (short)193, (short)792, (short)0, (short)0, (short)0, (short)0, (short)0, (short)151, (short)0, (short)0, (short)1, (short)0, (short)42, (short)0, (short)0, (short)210, (short)177, (short)0, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)151, (short)390, (short)0, (short)210, (short)308, (short)517, (short)0, (short)0, (short)0, (short)814, (short)0, (short)403, (short)0, (short)0, (short)0, (short)210, (short)210, (short)210, (short)0, (short)0, (short)823, (short)0, (short)0, (short)0, (short)842, (short)0, (short)0, (short)845, (short)0, (short)35, (short)36, (short)42, (short)0, (short)27, (short)28, (short)438, (short)0, (short)438, (short)29, (short)80, (short)175, (short)0, (short)0, (short)0, (short)306, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)671, (short)151, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)308, (short)161, (short)0, (short)0, (short)0, (short)35, (short)36, (short)0, (short)0, (short)163, (short)179, (short)0, (short)0, (short)72, (short)0, (short)0, (short)175, (short)0, (short)0, (short)0, (short)42, (short)179, (short)0, (short)151, (short)151, (short)584, (short)0, (short)0, (short)35, (short)36, (short)0, (short)0, (short)0, (short)306, (short)0, (short)151, (short)72, (short)0, (short)81, (short)175, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)253, (short)82, (short)193, (short)151, (short)0, (short)151, (short)151, (short)151, (short)0, (short)387, (short)0, (short)308, (short)268, (short)269, (short)270, (short)271, (short)272, (short)273, (short)274, (short)275, (short)276, (short)277, (short)0, (short)0, (short)441, (short)0, (short)620, (short)42, (short)0, (short)0, (short)151, (short)441, (short)0, (short)0, (short)0, (short)0, (short)0, (short)80, (short)0, (short)441, (short)0, (short)0, (short)0, (short)0, (short)313, (short)0, (short)306, (short)0, (short)0, (short)0, (short)0, (short)546, (short)0, (short)210, (short)0, (short)0, (short)548, (short)0, (short)396, (short)0, (short)0, (short)0, (short)0, (short)254, (short)0, (short)0, (short)0, (short)177, (short)0, (short)0, (short)0, (short)0, (short)0, (short)255, (short)78, (short)0, (short)0, (short)589, (short)0, (short)367, (short)0, (short)0, (short)0, (short)151, (short)380, (short)381, (short)382, (short)384, (short)210, (short)0, (short)210, (short)80, (short)210, (short)210, (short)210, (short)0, (short)0, (short)210, (short)0, (short)210, (short)81, (short)0, (short)308, (short)0, (short)306, (short)0, (short)0, (short)0, (short)0, (short)0, (short)82, (short)151, (short)0, (short)0, (short)0, (short)0, (short)424, (short)438, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)438, (short)80, (short)445, (short)80, (short)445, (short)424, (short)0, (short)0, (short)438, (short)278, (short)457, (short)0, (short)321, (short)0, (short)0, (short)0, (short)151, (short)472, (short)472, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)390, (short)0, (short)0, (short)81, (short)179, (short)83, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)82, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)716, (short)0, (short)0, (short)0, (short)0, (short)0, (short)425, (short)151, (short)0, (short)0, (short)78, (short)0, (short)0, (short)0, (short)0, (short)81, (short)426, (short)81, (short)0, (short)425, (short)0, (short)0, (short)306, (short)0, (short)458, (short)82, (short)447, (short)82, (short)447, (short)426, (short)0, (short)473, (short)473, (short)0, (short)459, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)474, (short)474, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)366, (short)0, (short)0, (short)256, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)78, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)542, (short)548, (short)0, (short)0, (short)0, (short)0, (short)0, (short)80, (short)0, (short)161, (short)253, (short)0, (short)80, (short)0, (short)472, (short)0, (short)0, (short)0, (short)83, (short)713, (short)0, (short)0, (short)0, (short)0, (short)78, (short)444, (short)78, (short)444, (short)0, (short)0, (short)0, (short)210, (short)0, (short)210, (short)210, (short)210, (short)0, (short)0, (short)0, (short)0, (short)471, (short)471, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)780, (short)0, (short)0, (short)0, (short)604, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)81, (short)0, (short)83, (short)254, (short)0, (short)81, (short)0, (short)473, (short)628, (short)0, (short)82, (short)0, (short)0, (short)255, (short)0, (short)82, (short)628, (short)474, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)427, (short)0, (short)0, (short)472, (short)0, (short)0, (short)0, (short)0, (short)647, (short)83, (short)448, (short)83, (short)448, (short)427, (short)0, (short)653, (short)0, (short)0, (short)460, (short)179, (short)0, (short)472, (short)0, (short)0, (short)605, (short)475, (short)475, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)606, (short)0, (short)173, (short)0, (short)0, (short)0, (short)186, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)541, (short)0, (short)0, (short)80, (short)781, (short)630, (short)0, (short)78, (short)0, (short)0, (short)0, (short)173, (short)78, (short)630, (short)471, (short)0, (short)0, (short)473, (short)0, (short)0, (short)0, (short)0, (short)648, (short)0, (short)0, (short)173, (short)0, (short)474, (short)173, (short)0, (short)0, (short)0, (short)649, (short)0, (short)0, (short)473, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)474, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)647, (short)0, (short)0, (short)472, (short)472, (short)0, (short)0, (short)177, (short)0, (short)0, (short)81, (short)0, (short)0, (short)0, (short)0, (short)472, (short)0, (short)0, (short)0, (short)0, (short)82, (short)0, (short)627, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)627, (short)0, (short)0, (short)83, (short)0, (short)0, (short)256, (short)0, (short)83, (short)0, (short)475, (short)0, (short)173, (short)0, (short)471, (short)173, (short)0, (short)0, (short)0, (short)646, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)471, (short)648, (short)0, (short)0, (short)473, (short)473, (short)0, (short)0, (short)0, (short)0, (short)0, (short)649, (short)0, (short)0, (short)474, (short)474, (short)473, (short)0, (short)0, (short)0, (short)0, (short)0, (short)607, (short)0, (short)173, (short)0, (short)474, (short)0, (short)0, (short)0, (short)105, (short)78, (short)1, (short)106, (short)107, (short)108, (short)0, (short)109, (short)110, (short)0, (short)0, (short)0, (short)631, (short)0, (short)751, (short)752, (short)0, (short)0, (short)0, (short)0, (short)631, (short)0, (short)0, (short)0, (short)469, (short)469, (short)0, (short)2, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)475, (short)0, (short)0, (short)0, (short)0, (short)650, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)472, (short)0, (short)0, (short)0, (short)0, (short)0, (short)475, (short)0, (short)646, (short)0, (short)0, (short)471, (short)471, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)471, (short)111, (short)112, (short)113, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)83, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)798, (short)799, (short)0, (short)800, (short)801, (short)0, (short)0, (short)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)473, (short)0, (short)0, (short)0, (short)0, (short)0, (short)472, (short)0, (short)117, (short)0, (short)474, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)171, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)827, (short)0, (short)828, (short)650, (short)0, (short)0, (short)475, (short)475, (short)0, (short)837, (short)838, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)469, (short)475, (short)173, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)852, (short)0, (short)853, (short)0, (short)854, (short)0, (short)855, (short)0, (short)0, (short)473, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)474, (short)0, (short)0, (short)0, (short)471, (short)0, (short)0, (short)0, (short)870, (short)0, (short)871, (short)0, (short)0, (short)0, (short)173, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)173, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)469, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)469, (short)0, (short)0, (short)0, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (short)109, (short)110, (short)471, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)475, (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)551, (short)552, (short)553, (short)554, (short)555, (short)556, (short)557, (short)558, (short)559, (short)560, (short)561, (short)0, (short)0, (short)173, (short)26, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)113, (short)27, (short)28, (short)0, (short)562, (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)475, (short)0, (short)0, (short)0, (short)469, (short)0, (short)0, (short)0, (short)34, (short)173, (short)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)173, (short)0, (short)0, (short)173, (short)563, (short)378, (short)(-456), (short)0, (short)0, (short)0, (short)0, (short)0, (short)173, (short)173, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)469, (short)0, (short)0, (short)0, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)469, (short)109, (short)110, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)745, (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)551, (short)552, (short)553, (short)554, (short)555, (short)556, (short)557, (short)558, (short)559, (short)560, (short)561, (short)0, (short)0, (short)0, (short)26, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)113, (short)27, (short)28, (short)0, (short)562, (short)0, (short)29, (short)0, (short)0, (short)30, (short)31, (short)0, (short)32, (short)0, (short)33, (short)173, (short)0, (short)0, (short)0, (short)173, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)173, (short)0, (short)469, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)173, (short)0, (short)0, (short)0, (short)563, (short)378, (short)(-455), (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)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)551, (short)552, (short)553, (short)554, (short)555, (short)556, (short)557, (short)558, (short)559, (short)560, (short)561, (short)0, (short)0, (short)0, (short)26, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)113, (short)27, (short)28, (short)0, (short)562, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)563, (short)378, (short)(-457), (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)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)111, (short)112, (short)113, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)464, (short)465, (short)466, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)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)111, (short)112, (short)113, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)464, (short)465, (short)485, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)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)111, (short)112, (short)113, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)464, (short)465, (short)642, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)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)111, (short)112, (short)113, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)656, (short)465, (short)(-508), (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)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)111, (short)112, (short)113, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)464, (short)465, (short)710, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)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)111, (short)112, (short)113, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)105, (short)0, (short)1, (short)106, (short)107, (short)0, (short)0, (short)464, (short)465, (short)815, (short)0, (short)0, (short)0, (short)0, (short)0, (short)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)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)105, (short)0, (short)1, (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)201, (short)0, (short)202, (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)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)105, (short)0, (short)1, (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)201, (short)0, (short)399, (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)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)105, (short)0, (short)1, (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)201, (short)0, (short)408, (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)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)105, (short)0, (short)1, (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)201, (short)0, (short)410, (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)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)105, (short)0, (short)1, (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)201, (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)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)105, (short)0, (short)1, (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)201, (short)0, (short)595, (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)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)105, (short)0, (short)1, (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)201, (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)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)105, (short)0, (short)1, (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)201, (short)0, (short)598, (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)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)105, (short)0, (short)1, (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)201, (short)0, (short)719, (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)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)105, (short)0, (short)1, (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)201, (short)0, (short)720, (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)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)105, (short)0, (short)1, (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)201, (short)0, (short)721, (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)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (short)109, (short)110, (short)26, (short)0, (short)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)0, (short)0, (short)111, (short)112, (short)113, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)201, (short)0, (short)722, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)818, (short)875, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)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)551, (short)552, (short)553, (short)554, (short)555, (short)556, (short)557, (short)558, (short)559, (short)560, (short)561, (short)0, (short)0, (short)0, (short)26, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)113, (short)27, (short)28, (short)0, (short)562, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)563, (short)378, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)2, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (short)109, (short)110, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)551, (short)552, (short)553, (short)554, (short)555, (short)556, (short)557, (short)558, (short)559, (short)560, (short)561, (short)2, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)113, (short)0, (short)0, (short)0, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)114, (short)115, (short)2, (short)0, (short)111, (short)112, (short)113, (short)116, (short)0, (short)0, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)117, (short)109, (short)110, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)114, (short)115, (short)2, (short)563, (short)378, (short)0, (short)0, (short)116, (short)0, (short)0, (short)111, (short)112, (short)113, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)118, (short)488, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)465, (short)0, (short)114, (short)115, (short)0, (short)0, (short)111, (short)112, (short)113, (short)116, (short)0, (short)0, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)117, (short)109, (short)110, (short)118, (short)611, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)114, (short)115, (short)2, (short)0, (short)465, (short)0, (short)0, (short)116, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)465, (short)0, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)113, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)105, (short)0, (short)1, (short)106, (short)107, (short)0, (short)0, (short)0, (short)818, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)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)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (short)109, (short)110, (short)26, (short)0, (short)197, (short)0, (short)0, (short)111, (short)112, (short)0, (short)27, (short)28, (short)0, (short)0, (short)198, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)199, (short)0, (short)200, (short)120, (short)0, (short)0, (short)111, (short)112, (short)113, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (short)109, (short)110, (short)0, (short)201, (short)0, (short)0, (short)0, (short)0, (short)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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)105, (short)116, (short)1, (short)106, (short)107, (short)108, (short)0, (short)109, (short)110, (short)0, (short)117, (short)0, (short)0, (short)118, (short)768, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)2, (short)0, (short)0, (short)0, (short)0, (short)563, (short)0, (short)0, (short)0, (short)111, (short)112, (short)113, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)114, (short)115, (short)0, (short)111, (short)112, (short)113, (short)0, (short)116, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)118, (short)812, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)114, (short)115, (short)0, (short)0, (short)563, (short)0, (short)0, (short)116, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)694, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)344, (short)345, (short)346, (short)347, (short)348, (short)349, (short)350, (short)351, (short)352, (short)353, (short)18, (short)19, (short)354, (short)355, (short)22, (short)23, (short)356, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)357, (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)358, (short)0, (short)359, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)360, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)361, (short)362, (short)0, (short)0, (short)0, (short)39, (short)72, (short)1, (short)0, (short)305, (short)0, (short)0, (short)0, (short)0, (short)74, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)539, (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)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)37, (short)38, (short)0, (short)0, (short)1, (short)39, (short)72, (short)0, (short)0, (short)386, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)387, (short)0, (short)388, (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)37, (short)38, (short)0, (short)0, (short)1, (short)39, (short)72, (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)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)699, (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)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)105, (short)305, (short)1, (short)106, (short)107, (short)108, (short)74, (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)(-291), (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)111, (short)112, (short)113, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)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)111, (short)112, (short)113, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)118, (short)249, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)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)111, (short)112, (short)113, (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)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)239, (short)249, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)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)111, (short)112, (short)113, (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)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (short)109, (short)110, (short)0, (short)0, (short)0, (short)34, (short)0, (short)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)37, (short)38, (short)0, (short)2, (short)0, (short)0, (short)374, (short)0, (short)0, (short)375, (short)249, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (short)109, (short)110, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)111, (short)112, (short)113, (short)27, (short)28, (short)0, (short)0, (short)0, (short)29, (short)0, (short)0, (short)2, (short)0, (short)0, (short)0, (short)0, (short)0, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (short)109, (short)110, (short)0, (short)0, (short)0, (short)0, (short)0, (short)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)35, (short)36, (short)0, (short)0, (short)0, (short)2, (short)0, (short)0, (short)374, (short)0, (short)0, (short)375, (short)249, (short)119, (short)120, (short)111, (short)112, (short)113, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)114, (short)115, (short)111, (short)112, (short)113, (short)0, (short)0, (short)116, (short)0, (short)0, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)117, (short)109, (short)110, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)326, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)114, (short)115, (short)0, (short)0, (short)2, (short)0, (short)0, (short)116, (short)0, (short)0, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)117, (short)109, (short)110, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)329, (short)0, (short)121, (short)122, (short)123, (short)124, (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)111, (short)112, (short)113, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)2, (short)114, (short)115, (short)111, (short)112, (short)113, (short)0, (short)0, (short)116, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)118, (short)249, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)0, (short)111, (short)112, (short)113, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)118, (short)765, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (short)109, (short)110, (short)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)2, (short)118, (short)844, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)2, (short)0, (short)0, (short)111, (short)112, (short)113, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)0, (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)2, (short)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)0, (short)116, (short)0, (short)111, (short)112, (short)113, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)118, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)114, (short)115, (short)111, (short)112, (short)113, (short)0, (short)0, (short)116, (short)0, (short)0, (short)105, (short)0, (short)1, (short)106, (short)107, (short)108, (short)117, (short)109, (short)110, (short)234, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)114, (short)115, (short)0, (short)0, (short)2, (short)0, (short)0, (short)116, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)239, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (short)0, (short)0, (short)0, (short)0, (short)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)113, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)114, (short)115, (short)0, (short)0, (short)0, (short)0, (short)1, (short)116, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)117, (short)0, (short)0, (short)247, (short)0, (short)119, (short)120, (short)0, (short)0, (short)0, (short)0, (short)121, (short)122, (short)123, (short)124, (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)1, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)73, (short)0, (short)0, (short)0, (short)0, (short)74, (short)0, (short)0, (short)75, (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)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)73, (short)164, (short)0, (short)0, (short)0, (short)74, (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)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)305, (short)164, (short)0, (short)0, (short)0, (short)74, (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)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)436, (short)0, (short)0, (short)0, (short)0, (short)437, (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)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)436, (short)0, (short)0, (short)0, (short)0, (short)449, (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)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)305, (short)0, (short)0, (short)0, (short)0, (short)74, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)344, (short)345, (short)346, (short)347, (short)348, (short)349, (short)350, (short)351, (short)352, (short)353, (short)18, (short)19, (short)354, (short)355, (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)357, (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)358, (short)0, (short)359, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)360, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)361, (short)362, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)436, (short)0, (short)0, (short)0, (short)0, (short)625, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)344, (short)345, (short)346, (short)347, (short)348, (short)349, (short)350, (short)351, (short)352, (short)353, (short)18, (short)19, (short)354, (short)355, (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)357, (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)358, (short)0, (short)359, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)360, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)361, (short)362, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)436, (short)2, (short)0, (short)0, (short)0, (short)635, (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)0, (short)0, (short)0, (short)0, (short)34, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)37, (short)38, (short)0, (short)0, (short)0, (short)0, (short)72, (short)0, (short)0, (short)305, (short)0, (short)0, (short)0, (short)0, (short)74, (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)0, (short)0, (short)1, (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)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)436, (short)615, (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)0, (short)0, (short)1, (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)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)0, (short)0, (short)0, (short)0, (short)189, (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)0, (short)0, (short)1, (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)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)0, (short)0, (short)0, (short)0, (short)324, (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)0, (short)0, (short)1, (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)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)0, (short)0, (short)0, (short)0, (short)729, (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)1, (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)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)72, (short)0, (short)0, (short)175, (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)1, (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)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)0, (short)0, (short)0, (short)549, (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)521, (short)0, (short)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)1, (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)37, (short)38, (short)0, (short)0, (short)0, (short)39, (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)1, (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)37, (short)38, (short)0, (short)0, (short)0, (short)39, (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)1, (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)37, (short)38, (short)0, (short)0, (short)0, (short)39, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)344, (short)345, (short)346, (short)347, (short)348, (short)349, (short)350, (short)351, (short)352, (short)353, (short)18, (short)19, (short)354, (short)355, (short)22, (short)23, (short)356, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)357, (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)358, (short)0, (short)359, (short)0, (short)0, (short)0, (short)0, (short)0, (short)1, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)360, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)361, (short)362, (short)0, (short)0, (short)0, (short)39, (short)2, (short)3, (short)4, (short)5, (short)6, (short)7, (short)344, (short)345, (short)346, (short)347, (short)348, (short)349, (short)350, (short)351, (short)352, (short)353, (short)18, (short)19, (short)354, (short)355, (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)357, (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)358, (short)0, (short)359, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)360, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)0, (short)35, (short)36, (short)361, (short)362, (short)0, (short)0, (short)0, (short)39
1021 };
1022
1023 static const yytype_int16 yycheck[] = 
1024 {
1025 (short)0, (short)46, (short)88, (short)120, (short)46, (short)211, (short)46, (short)46, (short)79, (short)260, (short)0, (short)198, (short)132, (short)385, (short)65, (short)379, (short)3, (short)69, (short)197, (short)538, (short)91, (short)3, (short)209, (short)264, (short)24, (short)91, (short)67, (short)197, (short)343, (short)379, (short)75, (short)73, (short)3, (short)75, (short)73, (short)3, (short)75, (short)79, (short)279, (short)690, (short)79, (short)818, (short)121, (short)119, (short)438, (short)45, (short)46, (short)441, (short)70, (short)91, (short)3, (short)3, (short)91, (short)3, (short)197, (short)69, (short)3, (short)57, (short)3, (short)3, (short)70, (short)197, (short)62, (short)119, (short)3, (short)141, (short)66, (short)67, (short)128, (short)128, (short)69, (short)245, (short)127, (short)73, (short)244, (short)75, (short)246, (short)77, (short)3, (short)79, (short)140, (short)28, (short)3, (short)142, (short)17, (short)141, (short)141, (short)864, (short)88, (short)28, (short)142, (short)91, (short)70, (short)93, (short)70, (short)121, (short)137, (short)97, (short)184, (short)223, (short)224, (short)225, (short)119, (short)103, (short)104, (short)624, (short)121, (short)28, (short)244, (short)69, (short)246, (short)111, (short)183, (short)179, (short)114, (short)155, (short)3, (short)183, (short)769, (short)120, (short)142, (short)1, (short)118, (short)3, (short)0, (short)121, (short)126, (short)128, (short)142, (short)129, (short)128, (short)118, (short)142, (short)175, (short)121, (short)177, (short)175, (short)179, (short)177, (short)126, (short)179, (short)183, (short)140, (short)142, (short)183, (short)69, (short)70, (short)118, (short)119, (short)3, (short)150, (short)193, (short)152, (short)121, (short)193, (short)155, (short)138, (short)199, (short)677, (short)141, (short)199, (short)281, (short)282, (short)283, (short)142, (short)165, (short)142, (short)209, (short)139, (short)11, (short)141, (short)210, (short)122, (short)118, (short)119, (short)175, (short)138, (short)177, (short)122, (short)179, (short)219, (short)3, (short)142, (short)183, (short)184, (short)372, (short)365, (short)0, (short)141, (short)141, (short)190, (short)432, (short)3, (short)193, (short)141, (short)365, (short)141, (short)197, (short)198, (short)199, (short)200, (short)407, (short)141, (short)409, (short)137, (short)411, (short)570, (short)207, (short)208, (short)209, (short)210, (short)211, (short)252, (short)264, (short)465, (short)734, (short)141, (short)532, (short)142, (short)219, (short)570, (short)571, (short)365, (short)223, (short)224, (short)225, (short)620, (short)141, (short)279, (short)365, (short)230, (short)118, (short)119, (short)24, (short)234, (short)306, (short)236, (short)308, (short)118, (short)119, (short)69, (short)70, (short)242, (short)243, (short)244, (short)245, (short)246, (short)247, (short)289, (short)290, (short)141, (short)292, (short)252, (short)122, (short)67, (short)321, (short)127, (short)121, (short)65, (short)128, (short)73, (short)261, (short)436, (short)304, (short)118, (short)265, (short)57, (short)121, (short)309, (short)443, (short)141, (short)312, (short)644, (short)443, (short)122, (short)88, (short)127, (short)451, (short)120, (short)321, (short)128, (short)451, (short)321, (short)470, (short)141, (short)128, (short)128, (short)120, (short)412, (short)413, (short)141, (short)3, (short)416, (short)139, (short)418, (short)128, (short)118, (short)119, (short)111, (short)142, (short)443, (short)114, (short)109, (short)110, (short)304, (short)305, (short)97, (short)443, (short)451, (short)309, (short)5, (short)118, (short)312, (short)142, (short)141, (short)451, (short)28, (short)129, (short)318, (short)141, (short)1, (short)321, (short)3, (short)12, (short)13, (short)365, (short)69, (short)70, (short)318, (short)69, (short)70, (short)582, (short)44, (short)375, (short)334, (short)122, (short)375, (short)118, (short)130, (short)131, (short)135, (short)128, (short)462, (short)3, (short)386, (short)93, (short)463, (short)386, (short)390, (short)128, (short)436, (short)390, (short)133, (short)134, (short)396, (short)705, (short)356, (short)396, (short)136, (short)398, (short)16, (short)140, (short)74, (short)75, (short)403, (short)365, (short)128, (short)122, (short)28, (short)122, (short)370, (short)184, (short)372, (short)128, (short)120, (short)375, (short)376, (short)377, (short)140, (short)379, (short)142, (short)432, (short)128, (short)423, (short)44, (short)198, (short)386, (short)200, (short)122, (short)389, (short)390, (short)597, (short)199, (short)599, (short)600, (short)601, (short)396, (short)118, (short)398, (short)142, (short)121, (short)139, (short)142, (short)403, (short)455, (short)126, (short)197, (short)407, (short)128, (short)409, (short)122, (short)411, (short)412, (short)413, (short)74, (short)75, (short)416, (short)46, (short)418, (short)122, (short)140, (short)421, (short)663, (short)423, (short)128, (short)128, (short)122, (short)234, (short)470, (short)429, (short)119, (short)120, (short)239, (short)433, (short)138, (short)122, (short)436, (short)118, (short)119, (short)122, (short)247, (short)122, (short)128, (short)443, (short)3, (short)128, (short)517, (short)128, (short)79, (short)128, (short)120, (short)451, (short)128, (short)244, (short)140, (short)246, (short)456, (short)264, (short)128, (short)266, (short)127, (short)3, (short)122, (short)211, (short)140, (short)108, (short)142, (short)467, (short)128, (short)28, (short)470, (short)128, (short)279, (short)116, (short)514, (short)223, (short)224, (short)225, (short)122, (short)110, (short)111, (short)10, (short)11, (short)140, (short)3, (short)536, (short)28, (short)108, (short)7, (short)8, (short)9, (short)304, (short)305, (short)300, (short)122, (short)116, (short)309, (short)538, (short)121, (short)312, (short)128, (short)118, (short)44, (short)126, (short)98, (short)318, (short)548, (short)138, (short)93, (short)548, (short)140, (short)259, (short)260, (short)122, (short)514, (short)74, (short)75, (short)141, (short)112, (short)128, (short)79, (short)115, (short)567, (short)774, (short)122, (short)567, (short)155, (short)140, (short)567, (short)141, (short)128, (short)121, (short)74, (short)75, (short)122, (short)621, (short)126, (short)537, (short)538, (short)3, (short)128, (short)141, (short)584, (short)585, (short)544, (short)584, (short)546, (short)589, (short)548, (short)121, (short)589, (short)110, (short)111, (short)122, (short)126, (short)304, (short)556, (short)125, (short)558, (short)139, (short)309, (short)122, (short)562, (short)127, (short)564, (short)356, (short)122, (short)567, (short)375, (short)127, (short)570, (short)571, (short)379, (short)304, (short)365, (short)14, (short)15, (short)121, (short)309, (short)370, (short)209, (short)121, (short)199, (short)624, (short)584, (short)585, (short)140, (short)141, (short)121, (short)589, (short)142, (short)185, (short)127, (short)128, (short)188, (short)127, (short)128, (short)597, (short)119, (short)599, (short)600, (short)601, (short)121, (short)121, (short)3, (short)234, (short)125, (short)126, (short)286, (short)287, (short)74, (short)75, (short)663, (short)122, (short)243, (short)79, (short)245, (short)122, (short)247, (short)126, (short)139, (short)621, (short)239, (short)436, (short)624, (short)432, (short)211, (short)434, (short)3, (short)28, (short)284, (short)285, (short)7, (short)8, (short)9, (short)229, (short)677, (short)121, (short)223, (short)224, (short)225, (short)293, (short)294, (short)103, (short)104, (short)645, (short)110, (short)111, (short)455, (short)266, (short)119, (short)126, (short)443, (short)401, (short)122, (short)122, (short)142, (short)121, (short)138, (short)407, (short)451, (short)409, (short)126, (short)411, (short)412, (short)413, (short)142, (short)1, (short)416, (short)3, (short)418, (short)713, (short)672, (short)122, (short)716, (short)74, (short)75, (short)677, (short)122, (short)121, (short)79, (short)121, (short)140, (short)300, (short)121, (short)685, (short)0, (short)121, (short)140, (short)142, (short)140, (short)74, (short)75, (short)734, (short)122, (short)122, (short)79, (short)697, (short)3, (short)119, (short)700, (short)127, (short)7, (short)8, (short)9, (short)705, (short)127, (short)126, (short)126, (short)142, (short)122, (short)110, (short)111, (short)713, (short)3, (short)122, (short)716, (short)465, (short)7, (short)8, (short)9, (short)56, (short)138, (short)530, (short)141, (short)538, (short)777, (short)110, (short)111, (short)536, (short)775, (short)140, (short)46, (short)775, (short)734, (short)483, (short)775, (short)139, (short)780, (short)781, (short)74, (short)75, (short)141, (short)372, (short)142, (short)79, (short)121, (short)126, (short)377, (short)556, (short)125, (short)126, (short)66, (short)67, (short)561, (short)546, (short)139, (short)138, (short)375, (short)73, (short)74, (short)761, (short)122, (short)570, (short)571, (short)765, (short)127, (short)818, (short)768, (short)127, (short)127, (short)127, (short)121, (short)127, (short)88, (short)775, (short)110, (short)111, (short)140, (short)93, (short)780, (short)781, (short)127, (short)142, (short)118, (short)119, (short)3, (short)121, (short)122, (short)142, (short)142, (short)64, (short)126, (short)387, (short)423, (short)142, (short)142, (short)111, (short)142, (short)142, (short)114, (short)140, (short)142, (short)57, (short)118, (short)142, (short)806, (short)807, (short)621, (short)809, (short)432, (short)624, (short)812, (short)864, (short)116, (short)296, (short)121, (short)434, (short)295, (short)297, (short)125, (short)126, (short)407, (short)246, (short)409, (short)298, (short)411, (short)412, (short)413, (short)299, (short)556, (short)416, (short)121, (short)418, (short)582, (short)775, (short)125, (short)126, (short)395, (short)401, (short)312, (short)155, (short)230, (short)437, (short)844, (short)571, (short)585, (short)247, (short)570, (short)597, (short)139, (short)599, (short)600, (short)601, (short)470, (short)449, (short)663, (short)74, (short)75, (short)(-1), (short)860, (short)654, (short)79, (short)863, (short)677, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)184, (short)185, (short)483, (short)483, (short)188, (short)483, (short)(-1), (short)(-1), (short)685, (short)686, (short)687, (short)688, (short)(-1), (short)690, (short)198, (short)514, (short)200, (short)(-1), (short)(-1), (short)(-1), (short)697, (short)(-1), (short)28, (short)110, (short)111, (short)209, (short)(-1), (short)211, (short)705, (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)654, (short)(-1), (short)(-1), (short)223, (short)224, (short)225, (short)(-1), (short)530, (short)46, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)234, (short)734, (short)(-1), (short)(-1), (short)141, (short)(-1), (short)(-1), (short)74, (short)75, (short)243, (short)(-1), (short)245, (short)79, (short)247, (short)(-1), (short)71, (short)72, (short)(-1), (short)252, (short)(-1), (short)72, (short)73, (short)(-1), (short)75, (short)561, (short)259, (short)260, (short)79, (short)(-1), (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)761, (short)79, (short)(-1), (short)551, (short)765, (short)685, (short)(-1), (short)768, (short)769, (short)110, (short)111, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)777, (short)697, (short)(-1), (short)74, (short)75, (short)122, (short)(-1), (short)(-1), (short)79, (short)705, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)121, (short)110, (short)111, (short)124, (short)(-1), (short)304, (short)305, (short)(-1), (short)587, (short)(-1), (short)309, (short)(-1), (short)(-1), (short)312, (short)806, (short)807, (short)(-1), (short)809, (short)810, (short)318, (short)812, (short)813, (short)46, (short)(-1), (short)110, (short)111, (short)818, (short)597, (short)(-1), (short)599, (short)600, (short)601, (short)118, (short)57, (short)(-1), (short)121, (short)122, (short)(-1), (short)155, (short)(-1), (short)(-1), (short)774, (short)(-1), (short)622, (short)(-1), (short)162, (short)625, (short)(-1), (short)(-1), (short)73, (short)761, (short)75, (short)844, (short)(-1), (short)765, (short)634, (short)635, (short)768, (short)175, (short)(-1), (short)177, (short)(-1), (short)86, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)91, (short)860, (short)93, (short)(-1), (short)863, (short)864, (short)372, (short)44, (short)45, (short)375, (short)(-1), (short)377, (short)(-1), (short)379, (short)(-1), (short)199, (short)(-1), (short)686, (short)687, (short)688, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)209, (short)210, (short)(-1), (short)806, (short)807, (short)(-1), (short)809, (short)(-1), (short)(-1), (short)812, (short)(-1), (short)(-1), (short)74, (short)75, (short)3, (short)(-1), (short)407, (short)79, (short)409, (short)(-1), (short)411, (short)412, (short)413, (short)(-1), (short)(-1), (short)416, (short)(-1), (short)418, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)423, (short)(-1), (short)243, (short)(-1), (short)245, (short)(-1), (short)(-1), (short)155, (short)(-1), (short)844, (short)(-1), (short)252, (short)(-1), (short)436, (short)(-1), (short)(-1), (short)110, (short)111, (short)(-1), (short)167, (short)(-1), (short)(-1), (short)3, (short)(-1), (short)118, (short)860, (short)(-1), (short)175, (short)863, (short)(-1), (short)178, (short)179, (short)735, (short)(-1), (short)(-1), (short)183, (short)739, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)465, (short)(-1), (short)(-1), (short)3, (short)(-1), (short)470, (short)(-1), (short)(-1), (short)198, (short)199, (short)(-1), (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)483, (short)209, (short)(-1), (short)211, (short)305, (short)306, (short)(-1), (short)(-1), (short)(-1), (short)772, (short)(-1), (short)219, (short)(-1), (short)(-1), (short)(-1), (short)223, (short)224, (short)225, (short)(-1), (short)(-1), (short)783, (short)(-1), (short)(-1), (short)(-1), (short)810, (short)(-1), (short)(-1), (short)813, (short)(-1), (short)110, (short)111, (short)514, (short)(-1), (short)74, (short)75, (short)243, (short)(-1), (short)245, (short)79, (short)46, (short)121, (short)(-1), (short)(-1), (short)(-1), (short)252, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)537, (short)538, (short)74, (short)75, (short)(-1), (short)(-1), (short)(-1), (short)79, (short)(-1), (short)(-1), (short)365, (short)72, (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)(-1), (short)(-1), (short)374, (short)375, (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)(-1), (short)(-1), (short)567, (short)386, (short)(-1), (short)570, (short)571, (short)390, (short)(-1), (short)(-1), (short)110, (short)111, (short)(-1), (short)(-1), (short)(-1), (short)305, (short)(-1), (short)582, (short)118, (short)(-1), (short)46, (short)121, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)46, (short)321, (short)597, (short)(-1), (short)599, (short)600, (short)601, (short)(-1), (short)138, (short)(-1), (short)423, (short)18, (short)19, (short)20, (short)21, (short)22, (short)23, (short)24, (short)25, (short)26, (short)27, (short)(-1), (short)(-1), (short)436, (short)(-1), (short)438, (short)621, (short)(-1), (short)(-1), (short)624, (short)443, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)155, (short)(-1), (short)451, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)162, (short)(-1), (short)365, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)370, (short)(-1), (short)372, (short)(-1), (short)(-1), (short)375, (short)(-1), (short)470, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)(-1), (short)386, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)46, (short)(-1), (short)(-1), (short)396, (short)(-1), (short)197, (short)(-1), (short)(-1), (short)(-1), (short)677, (short)203, (short)204, (short)205, (short)206, (short)407, (short)(-1), (short)409, (short)209, (short)411, (short)412, (short)413, (short)(-1), (short)(-1), (short)416, (short)(-1), (short)418, (short)155, (short)(-1), (short)514, (short)(-1), (short)423, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)155, (short)705, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)234, (short)436, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)443, (short)243, (short)244, (short)245, (short)246, (short)247, (short)(-1), (short)(-1), (short)451, (short)139, (short)252, (short)(-1), (short)548, (short)(-1), (short)(-1), (short)(-1), (short)734, (short)259, (short)260, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)470, (short)(-1), (short)(-1), (short)209, (short)567, (short)46, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)209, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)585, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)234, (short)774, (short)(-1), (short)(-1), (short)155, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)243, (short)234, (short)245, (short)(-1), (short)247, (short)(-1), (short)(-1), (short)514, (short)(-1), (short)252, (short)243, (short)244, (short)245, (short)246, (short)247, (short)(-1), (short)259, (short)260, (short)(-1), (short)252, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)259, (short)260, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)197, (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)209, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)365, (short)567, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)372, (short)(-1), (short)374, (short)375, (short)(-1), (short)377, (short)(-1), (short)379, (short)(-1), (short)(-1), (short)(-1), (short)155, (short)585, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)243, (short)244, (short)245, (short)246, (short)(-1), (short)(-1), (short)(-1), (short)597, (short)(-1), (short)599, (short)600, (short)601, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)259, (short)260, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)713, (short)(-1), (short)(-1), (short)(-1), (short)423, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)372, (short)(-1), (short)209, (short)375, (short)(-1), (short)377, (short)(-1), (short)379, (short)443, (short)(-1), (short)372, (short)(-1), (short)(-1), (short)375, (short)(-1), (short)377, (short)451, (short)379, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)234, (short)(-1), (short)(-1), (short)465, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)470, (short)243, (short)244, (short)245, (short)246, (short)247, (short)(-1), (short)478, (short)(-1), (short)(-1), (short)252, (short)775, (short)(-1), (short)483, (short)(-1), (short)(-1), (short)423, (short)259, (short)260, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)423, (short)(-1), (short)74, (short)(-1), (short)(-1), (short)(-1), (short)703, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)365, (short)(-1), (short)(-1), (short)514, (short)716, (short)443, (short)(-1), (short)372, (short)(-1), (short)(-1), (short)(-1), (short)98, (short)377, (short)451, (short)379, (short)(-1), (short)(-1), (short)465, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)470, (short)(-1), (short)(-1), (short)112, (short)(-1), (short)465, (short)115, (short)(-1), (short)(-1), (short)(-1), (short)470, (short)(-1), (short)(-1), (short)483, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)483, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)567, (short)(-1), (short)(-1), (short)570, (short)571, (short)(-1), (short)(-1), (short)775, (short)(-1), (short)(-1), (short)514, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)582, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)514, (short)(-1), (short)443, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)451, (short)(-1), (short)(-1), (short)372, (short)(-1), (short)(-1), (short)375, (short)(-1), (short)377, (short)(-1), (short)379, (short)(-1), (short)185, (short)(-1), (short)465, (short)188, (short)(-1), (short)(-1), (short)(-1), (short)470, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)483, (short)567, (short)(-1), (short)(-1), (short)570, (short)571, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)567, (short)(-1), (short)(-1), (short)570, (short)571, (short)582, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)423, (short)(-1), (short)229, (short)(-1), (short)582, (short)(-1), (short)(-1), (short)(-1), (short)1, (short)514, (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)443, (short)(-1), (short)674, (short)675, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)451, (short)(-1), (short)(-1), (short)(-1), (short)259, (short)260, (short)(-1), (short)28, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)465, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)470, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)705, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)483, (short)(-1), (short)567, (short)(-1), (short)(-1), (short)570, (short)571, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)582, (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)514, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)754, (short)755, (short)(-1), (short)757, (short)758, (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)705, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)774, (short)(-1), (short)118, (short)(-1), (short)705, (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)127, (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)793, (short)(-1), (short)795, (short)567, (short)(-1), (short)(-1), (short)570, (short)571, (short)(-1), (short)802, (short)803, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)385, (short)582, (short)387, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)829, (short)(-1), (short)831, (short)(-1), (short)833, (short)(-1), (short)835, (short)(-1), (short)(-1), (short)774, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)774, (short)(-1), (short)(-1), (short)(-1), (short)705, (short)(-1), (short)(-1), (short)(-1), (short)856, (short)(-1), (short)858, (short)(-1), (short)(-1), (short)(-1), (short)437, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)449, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)465, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)483, (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)774, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)705, (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)551, (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)774, (short)(-1), (short)(-1), (short)(-1), (short)582, (short)(-1), (short)(-1), (short)(-1), (short)100, (short)587, (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)622, (short)(-1), (short)(-1), (short)625, (short)140, (short)141, (short)142, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)634, (short)635, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)644, (short)(-1), (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)654, (short)8, (short)9, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)665, (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)735, (short)(-1), (short)(-1), (short)(-1), (short)739, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)772, (short)(-1), (short)774, (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)783, (short)(-1), (short)(-1), (short)(-1), (short)140, (short)141, (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)140, (short)141, (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)140, (short)141, (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)140, (short)141, (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)140, (short)141, (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)140, (short)141, (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)140, (short)141, (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)140, (short)141, (short)142, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (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)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (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)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)(-1), (short)110, (short)111, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)142, (short)(-1), (short)(-1), (short)(-1), (short)(-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)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)141, (short)142, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)140, (short)141, (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)(-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)(-1), (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)28, (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)(-1), (short)(-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)28, (short)(-1), (short)71, (short)72, (short)73, (short)109, (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)118, (short)8, (short)9, (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)28, (short)140, (short)141, (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)141, (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)71, (short)72, (short)73, (short)109, (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)118, (short)8, (short)9, (short)121, (short)122, (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)28, (short)(-1), (short)141, (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)141, (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)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)(-1), (short)(-1), (short)(-1), (short)141, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-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)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (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)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)(-1), (short)110, (short)111, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (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)140, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-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)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)28, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)140, (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)71, (short)72, (short)73, (short)(-1), (short)109, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)140, (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)140, (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, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)3, (short)(-1), (short)121, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (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)141, (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)(-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)113, (short)(-1), (short)(-1), (short)3, (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)138, (short)(-1), (short)140, (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)113, (short)(-1), (short)(-1), (short)3, (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)140, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)1, (short)121, (short)3, (short)4, (short)5, (short)6, (short)126, (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)139, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (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)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (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)113, (short)(-1), (short)28, (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (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)(-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)28, (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)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)110, (short)111, (short)(-1), (short)(-1), (short)(-1), (short)28, (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (short)123, (short)124, (short)71, (short)72, (short)73, (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-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)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)118, (short)8, (short)9, (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)127, (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)28, (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)118, (short)8, (short)9, (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)127, (short)(-1), (short)129, (short)130, (short)131, (short)132, (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)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)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)(-1), (short)8, (short)9, (short)102, (short)103, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)28, (short)121, (short)122, (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (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)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)71, (short)72, (short)73, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (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)(-1), (short)(-1), (short)1, (short)(-1), (short)3, (short)4, (short)5, (short)6, (short)118, (short)8, (short)9, (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)102, (short)103, (short)(-1), (short)(-1), (short)28, (short)(-1), (short)(-1), (short)109, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-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)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-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)3, (short)109, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)123, (short)124, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)129, (short)130, (short)131, (short)132, (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)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)126, (short)(-1), (short)(-1), (short)129, (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)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (short)(-1), (short)(-1), (short)(-1), (short)126, (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)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (short)(-1), (short)(-1), (short)(-1), (short)126, (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)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)126, (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)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)126, (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)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)126, (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)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)126, (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)3, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)28, (short)(-1), (short)(-1), (short)(-1), (short)126, (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)(-1), (short)(-1), (short)(-1), (short)(-1), (short)100, (short)(-1), (short)3, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)110, (short)111, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)118, (short)(-1), (short)(-1), (short)121, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)126, (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)(-1), (short)(-1), (short)3, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (short)122, (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)(-1), (short)(-1), (short)3, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)122, (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)(-1), (short)(-1), (short)3, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)122, (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)(-1), (short)(-1), (short)3, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)122, (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)3, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)118, (short)(-1), (short)(-1), (short)121, (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)3, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (short)(-1), (short)(-1), (short)(-1), (short)121, (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)(-1), (short)(-1), (short)(-1), (short)(-1), (short)(-1), (short)3, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (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)3, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (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)3, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (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)3, (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)113, (short)(-1), (short)(-1), (short)(-1), (short)117, (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, (short)112, (short)113, (short)(-1), (short)(-1), (short)(-1), (short)117
1026 };
1027
1028 static const yytype_uint16 yystos[] = 
1029 {
1030 (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)112, (unsigned short)113, (unsigned short)117, (unsigned short)144, (unsigned short)145, (unsigned short)146, (unsigned short)147, (unsigned short)148, (unsigned short)153, (unsigned short)185, (unsigned short)186, (unsigned short)191, (unsigned short)192, (unsigned short)193, (unsigned short)197, (unsigned short)198, (unsigned short)199, (unsigned short)200, (unsigned short)202, (unsigned short)203, (unsigned short)209, (unsigned short)217, (unsigned short)218, (unsigned short)236, (unsigned short)267, (unsigned short)141, (unsigned short)148, (unsigned short)153, (unsigned short)121, (unsigned short)121, (unsigned short)119, (unsigned short)1, (unsigned short)118, (unsigned short)119, (unsigned short)153, (unsigned short)118, (unsigned short)121, (unsigned short)126, (unsigned short)129, (unsigned short)144, (unsigned short)153, (unsigned short)191, (unsigned short)192, (unsigned short)199, (unsigned short)200, (unsigned short)202, (unsigned short)218, (unsigned short)221, (unsigned short)223, (unsigned short)225, (unsigned short)226, (unsigned short)228, (unsigned short)229, (unsigned short)230, (unsigned short)233, (unsigned short)121, (unsigned short)141, (unsigned short)147, (unsigned short)148, (unsigned short)153, (unsigned short)192, (unsigned short)138, (unsigned short)0, (unsigned short)153, (unsigned short)219, (unsigned short)220, (unsigned short)141, (unsigned short)141, (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)118, (unsigned short)121, (unsigned short)123, (unsigned short)124, (unsigned short)129, (unsigned short)130, (unsigned short)131, (unsigned short)132, (unsigned short)146, (unsigned short)153, (unsigned short)154, (unsigned short)155, (unsigned short)156, (unsigned short)160, (unsigned short)161, (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)172, (unsigned short)173, (unsigned short)174, (unsigned short)175, (unsigned short)176, (unsigned short)177, (unsigned short)254, (unsigned short)257, (unsigned short)146, (unsigned short)153, (unsigned short)146, (unsigned short)153, (unsigned short)161, (unsigned short)167, (unsigned short)185, (unsigned short)204, (unsigned short)205, (unsigned short)206, (unsigned short)207, (unsigned short)208, (unsigned short)199, (unsigned short)232, (unsigned short)233, (unsigned short)122, (unsigned short)153, (unsigned short)223, (unsigned short)225, (unsigned short)234, (unsigned short)235, (unsigned short)236, (unsigned short)127, (unsigned short)146, (unsigned short)176, (unsigned short)180, (unsigned short)121, (unsigned short)153, (unsigned short)192, (unsigned short)225, (unsigned short)233, (unsigned short)221, (unsigned short)226, (unsigned short)229, (unsigned short)233, (unsigned short)121, (unsigned short)126, (unsigned short)192, (unsigned short)121, (unsigned short)126, (unsigned short)122, (unsigned short)153, (unsigned short)234, (unsigned short)237, (unsigned short)192, (unsigned short)221, (unsigned short)230, (unsigned short)121, (unsigned short)68, (unsigned short)78, (unsigned short)121, (unsigned short)123, (unsigned short)140, (unsigned short)142, (unsigned short)149, (unsigned short)150, (unsigned short)151, (unsigned short)152, (unsigned short)153, (unsigned short)156, (unsigned short)185, (unsigned short)192, (unsigned short)210, (unsigned short)211, (unsigned short)212, (unsigned short)213, (unsigned short)214, (unsigned short)226, (unsigned short)227, (unsigned short)229, (unsigned short)233, (unsigned short)256, (unsigned short)257, (unsigned short)259, (unsigned short)141, (unsigned short)141, (unsigned short)141, (unsigned short)148, (unsigned short)153, (unsigned short)180, (unsigned short)139, (unsigned short)128, (unsigned short)142, (unsigned short)219, (unsigned short)219, (unsigned short)121, (unsigned short)155, (unsigned short)158, (unsigned short)160, (unsigned short)162, (unsigned short)121, (unsigned short)161, (unsigned short)161, (unsigned short)153, (unsigned short)185, (unsigned short)180, (unsigned short)185, (unsigned short)180, (unsigned short)121, (unsigned short)162, (unsigned short)122, (unsigned short)177, (unsigned short)179, (unsigned short)182, (unsigned short)199, (unsigned short)200, (unsigned short)202, (unsigned short)218, (unsigned short)238, (unsigned short)254, (unsigned short)141, (unsigned short)141, (unsigned short)7, (unsigned short)8, (unsigned short)9, (unsigned short)121, (unsigned short)125, (unsigned short)126, (unsigned short)153, (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)139, (unsigned short)178, (unsigned short)164, (unsigned short)118, (unsigned short)133, (unsigned short)134, (unsigned short)130, (unsigned short)131, (unsigned short)10, (unsigned short)11, (unsigned short)167, (unsigned short)12, (unsigned short)13, (unsigned short)119, (unsigned short)120, (unsigned short)14, (unsigned short)15, (unsigned short)129, (unsigned short)135, (unsigned short)136, (unsigned short)16, (unsigned short)17, (unsigned short)137, (unsigned short)122, (unsigned short)122, (unsigned short)122, (unsigned short)139, (unsigned short)121, (unsigned short)192, (unsigned short)223, (unsigned short)233, (unsigned short)139, (unsigned short)11, (unsigned short)120, (unsigned short)128, (unsigned short)199, (unsigned short)233, (unsigned short)122, (unsigned short)122, (unsigned short)122, (unsigned short)128, (unsigned short)127, (unsigned short)127, (unsigned short)233, (unsigned short)221, (unsigned short)230, (unsigned short)122, (unsigned short)234, (unsigned short)127, (unsigned short)146, (unsigned short)180, (unsigned short)127, (unsigned short)146, (unsigned short)180, (unsigned short)122, (unsigned short)122, (unsigned short)128, (unsigned short)3, (unsigned short)28, (unsigned short)44, (unsigned short)74, (unsigned short)75, (unsigned short)122, (unsigned short)194, (unsigned short)195, (unsigned short)196, (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)112, (unsigned short)113, (unsigned short)148, (unsigned short)153, (unsigned short)187, (unsigned short)191, (unsigned short)199, (unsigned short)201, (unsigned short)203, (unsigned short)209, (unsigned short)217, (unsigned short)185, (unsigned short)227, (unsigned short)118, (unsigned short)121, (unsigned short)153, (unsigned short)185, (unsigned short)141, (unsigned short)248, (unsigned short)249, (unsigned short)249, (unsigned short)249, (unsigned short)140, (unsigned short)249, (unsigned short)139, (unsigned short)121, (unsigned short)138, (unsigned short)140, (unsigned short)153, (unsigned short)192, (unsigned short)215, (unsigned short)216, (unsigned short)226, (unsigned short)227, (unsigned short)231, (unsigned short)233, (unsigned short)229, (unsigned short)233, (unsigned short)142, (unsigned short)214, (unsigned short)128, (unsigned short)140, (unsigned short)192, (unsigned short)229, (unsigned short)140, (unsigned short)140, (unsigned short)210, (unsigned short)142, (unsigned short)210, (unsigned short)142, (unsigned short)210, (unsigned short)141, (unsigned short)141, (unsigned short)180, (unsigned short)220, (unsigned short)140, (unsigned short)142, (unsigned short)140, (unsigned short)142, (unsigned short)144, (unsigned short)153, (unsigned short)161, (unsigned short)183, (unsigned short)199, (unsigned short)200, (unsigned short)202, (unsigned short)218, (unsigned short)239, (unsigned short)7, (unsigned short)8, (unsigned short)9, (unsigned short)121, (unsigned short)125, (unsigned short)126, (unsigned short)153, (unsigned short)121, (unsigned short)126, (unsigned short)192, (unsigned short)222, (unsigned short)224, (unsigned short)233, (unsigned short)153, (unsigned short)188, (unsigned short)191, (unsigned short)199, (unsigned short)201, (unsigned short)202, (unsigned short)218, (unsigned short)126, (unsigned short)224, (unsigned short)188, (unsigned short)161, (unsigned short)239, (unsigned short)122, (unsigned short)128, (unsigned short)153, (unsigned short)199, (unsigned short)200, (unsigned short)202, (unsigned short)218, (unsigned short)223, (unsigned short)122, (unsigned short)125, (unsigned short)140, (unsigned short)141, (unsigned short)142, (unsigned short)156, (unsigned short)157, (unsigned short)176, (unsigned short)184, (unsigned short)191, (unsigned short)199, (unsigned short)200, (unsigned short)202, (unsigned short)218, (unsigned short)241, (unsigned short)258, (unsigned short)260, (unsigned short)261, (unsigned short)262, (unsigned short)263, (unsigned short)264, (unsigned short)265, (unsigned short)266, (unsigned short)142, (unsigned short)266, (unsigned short)153, (unsigned short)122, (unsigned short)157, (unsigned short)159, (unsigned short)177, (unsigned short)153, (unsigned short)179, (unsigned short)157, (unsigned short)177, (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)167, (unsigned short)169, (unsigned short)169, (unsigned short)170, (unsigned short)171, (unsigned short)172, (unsigned short)173, (unsigned short)174, (unsigned short)179, (unsigned short)185, (unsigned short)205, (unsigned short)206, (unsigned short)233, (unsigned short)205, (unsigned short)206, (unsigned short)207, (unsigned short)51, (unsigned short)236, (unsigned short)122, (unsigned short)127, (unsigned short)127, (unsigned short)127, (unsigned short)127, (unsigned short)153, (unsigned short)122, (unsigned short)121, (unsigned short)122, (unsigned short)128, (unsigned short)195, (unsigned short)148, (unsigned short)153, (unsigned short)121, (unsigned short)121, (unsigned short)119, (unsigned short)141, (unsigned short)153, (unsigned short)191, (unsigned short)199, (unsigned short)201, (unsigned short)223, (unsigned short)153, (unsigned short)192, (unsigned short)227, (unsigned short)192, (unsigned short)121, (unsigned short)142, (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)140, (unsigned short)153, (unsigned short)179, (unsigned short)181, (unsigned short)184, (unsigned short)243, (unsigned short)244, (unsigned short)245, (unsigned short)246, (unsigned short)247, (unsigned short)249, (unsigned short)250, (unsigned short)251, (unsigned short)252, (unsigned short)253, (unsigned short)255, (unsigned short)241, (unsigned short)122, (unsigned short)180, (unsigned short)141, (unsigned short)226, (unsigned short)233, (unsigned short)128, (unsigned short)140, (unsigned short)138, (unsigned short)197, (unsigned short)192, (unsigned short)226, (unsigned short)229, (unsigned short)211, (unsigned short)229, (unsigned short)142, (unsigned short)142, (unsigned short)142, (unsigned short)210, (unsigned short)142, (unsigned short)210, (unsigned short)210, (unsigned short)210, (unsigned short)122, (unsigned short)144, (unsigned short)199, (unsigned short)200, (unsigned short)202, (unsigned short)218, (unsigned short)223, (unsigned short)122, (unsigned short)153, (unsigned short)122, (unsigned short)159, (unsigned short)153, (unsigned short)179, (unsigned short)122, (unsigned short)224, (unsigned short)234, (unsigned short)180, (unsigned short)222, (unsigned short)233, (unsigned short)121, (unsigned short)126, (unsigned short)222, (unsigned short)119, (unsigned short)126, (unsigned short)153, (unsigned short)191, (unsigned short)199, (unsigned short)201, (unsigned short)202, (unsigned short)218, (unsigned short)224, (unsigned short)180, (unsigned short)126, (unsigned short)126, (unsigned short)224, (unsigned short)122, (unsigned short)122, (unsigned short)177, (unsigned short)164, (unsigned short)254, (unsigned short)142, (unsigned short)266, (unsigned short)139, (unsigned short)153, (unsigned short)191, (unsigned short)199, (unsigned short)200, (unsigned short)202, (unsigned short)218, (unsigned short)227, (unsigned short)231, (unsigned short)249, (unsigned short)128, (unsigned short)140, (unsigned short)140, (unsigned short)261, (unsigned short)263, (unsigned short)264, (unsigned short)142, (unsigned short)142, (unsigned short)122, (unsigned short)128, (unsigned short)127, (unsigned short)138, (unsigned short)223, (unsigned short)179, (unsigned short)122, (unsigned short)195, (unsigned short)177, (unsigned short)146, (unsigned short)153, (unsigned short)208, (unsigned short)69, (unsigned short)70, (unsigned short)142, (unsigned short)119, (unsigned short)141, (unsigned short)141, (unsigned short)153, (unsigned short)148, (unsigned short)153, (unsigned short)122, (unsigned short)180, (unsigned short)138, (unsigned short)121, (unsigned short)121, (unsigned short)121, (unsigned short)243, (unsigned short)121, (unsigned short)153, (unsigned short)140, (unsigned short)140, (unsigned short)140, (unsigned short)179, (unsigned short)153, (unsigned short)138, (unsigned short)140, (unsigned short)140, (unsigned short)153, (unsigned short)189, (unsigned short)190, (unsigned short)225, (unsigned short)181, (unsigned short)246, (unsigned short)181, (unsigned short)243, (unsigned short)142, (unsigned short)140, (unsigned short)142, (unsigned short)266, (unsigned short)226, (unsigned short)192, (unsigned short)216, (unsigned short)226, (unsigned short)233, (unsigned short)180, (unsigned short)226, (unsigned short)142, (unsigned short)142, (unsigned short)142, (unsigned short)142, (unsigned short)122, (unsigned short)127, (unsigned short)122, (unsigned short)122, (unsigned short)127, (unsigned short)222, (unsigned short)122, (unsigned short)234, (unsigned short)180, (unsigned short)208, (unsigned short)180, (unsigned short)119, (unsigned short)126, (unsigned short)127, (unsigned short)180, (unsigned short)180, (unsigned short)126, (unsigned short)142, (unsigned short)241, (unsigned short)262, (unsigned short)157, (unsigned short)177, (unsigned short)176, (unsigned short)122, (unsigned short)122, (unsigned short)122, (unsigned short)122, (unsigned short)120, (unsigned short)249, (unsigned short)249, (unsigned short)208, (unsigned short)69, (unsigned short)70, (unsigned short)142, (unsigned short)69, (unsigned short)70, (unsigned short)142, (unsigned short)141, (unsigned short)138, (unsigned short)243, (unsigned short)179, (unsigned short)179, (unsigned short)122, (unsigned short)179, (unsigned short)56, (unsigned short)122, (unsigned short)250, (unsigned short)140, (unsigned short)140, (unsigned short)139, (unsigned short)243, (unsigned short)141, (unsigned short)128, (unsigned short)140, (unsigned short)139, (unsigned short)142, (unsigned short)226, (unsigned short)233, (unsigned short)192, (unsigned short)226, (unsigned short)138, (unsigned short)122, (unsigned short)127, (unsigned short)120, (unsigned short)127, (unsigned short)208, (unsigned short)180, (unsigned short)127, (unsigned short)127, (unsigned short)180, (unsigned short)70, (unsigned short)142, (unsigned short)69, (unsigned short)142, (unsigned short)120, (unsigned short)249, (unsigned short)249, (unsigned short)249, (unsigned short)249, (unsigned short)69, (unsigned short)70, (unsigned short)142, (unsigned short)243, (unsigned short)122, (unsigned short)122, (unsigned short)243, (unsigned short)122, (unsigned short)121, (unsigned short)243, (unsigned short)122, (unsigned short)250, (unsigned short)180, (unsigned short)142, (unsigned short)266, (unsigned short)190, (unsigned short)141, (unsigned short)177, (unsigned short)240, (unsigned short)226, (unsigned short)226, (unsigned short)180, (unsigned short)120, (unsigned short)127, (unsigned short)127, (unsigned short)249, (unsigned short)249, (unsigned short)70, (unsigned short)142, (unsigned short)69, (unsigned short)142, (unsigned short)70, (unsigned short)142, (unsigned short)69, (unsigned short)142, (unsigned short)249, (unsigned short)249, (unsigned short)243, (unsigned short)243, (unsigned short)243, (unsigned short)179, (unsigned short)243, (unsigned short)122, (unsigned short)179, (unsigned short)140, (unsigned short)142, (unsigned short)240, (unsigned short)242, (unsigned short)142, (unsigned short)142, (unsigned short)249, (unsigned short)249, (unsigned short)249, (unsigned short)249, (unsigned short)70, (unsigned short)142, (unsigned short)69, (unsigned short)142, (unsigned short)64, (unsigned short)122, (unsigned short)243, (unsigned short)122, (unsigned short)128, (unsigned short)142, (unsigned short)142, (unsigned short)142, (unsigned short)142, (unsigned short)142, (unsigned short)249, (unsigned short)249, (unsigned short)243, (unsigned short)140, (unsigned short)243, (unsigned short)142, (unsigned short)240, (unsigned short)142, (unsigned short)142
1031 };
1032
1033 void exit(int status);
1034
1035 void * calloc(size_t nmemb, size_t size);
1036
1037 void free(void * ptr);
1038
1039 void * malloc(size_t size);
1040
1041 void * realloc(void * ptr, size_t size);
1042
1043 long int strtol(const char * nptr, char ** endptr, int base);
1044
1045 long long int strtoll(const char * nptr, char ** endptr, int base);
1046
1047 unsigned long long int strtoull(const char * nptr, char ** endptr, int base);
1048
1049 typedef __builtin_va_list va_list;
1050
1051 typedef void FILE;
1052
1053 FILE * bsl_stdin(void);
1054
1055 FILE * bsl_stdout(void);
1056
1057 FILE * bsl_stderr(void);
1058
1059 char * fgets(char * s, int size, FILE * stream);
1060
1061 FILE * fopen(const char * path, const char * mode);
1062
1063 int fclose(FILE * fp);
1064
1065 int fflush(FILE * stream);
1066
1067 int fgetc(FILE * stream);
1068
1069 int fprintf(FILE * stream, const char * format, ...);
1070
1071 int fputc(int c, FILE * stream);
1072
1073 size_t fread(void * ptr, size_t size, size_t nmemb, FILE * stream);
1074
1075 size_t fwrite(const void * ptr, size_t size, size_t nmemb, FILE * stream);
1076
1077 int vsnprintf(char *, size_t, const char *, ...);
1078
1079 int snprintf(char * str, size_t, const char * format, ...);
1080
1081 int fseek(FILE * stream, long offset, int whence);
1082
1083 long ftell(FILE * stream);
1084
1085 int feof(FILE * stream);
1086
1087 int ferror(FILE * stream);
1088
1089 int fileno(FILE * stream);
1090
1091 static void yy_symbol_value_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1092 {
1093 if(!yyvaluep)
1094 return ;
1095 ((void)(yylocationp));
1096 ((void)(yyoutput));
1097 switch(yytype)
1098 {
1099 default:
1100 break;
1101 }
1102 }
1103
1104 static void yy_symbol_print(FILE * yyoutput, int yytype, YYSTYPE const * const yyvaluep, struct Location const * const yylocationp)
1105 {
1106 if(yytype < 143)
1107 fprintf(yyoutput, "token %s (", yytname[yytype]);
1108 else
1109 fprintf(yyoutput, "nterm %s (", yytname[yytype]);
1110 ((void)0);
1111 fprintf(yyoutput, ": ");
1112 yy_symbol_value_print(yyoutput, yytype, yyvaluep, yylocationp);
1113 fprintf(yyoutput, ")");
1114 }
1115
1116 static void yy_stack_print(yytype_int16 * yybottom, yytype_int16 * yytop)
1117 {
1118 fprintf((bsl_stderr()), "Stack now");
1119 for(; yybottom <= yytop; yybottom++)
1120 {
1121 int yybot = *yybottom;
1122
1123 fprintf((bsl_stderr()), " %d", yybot);
1124 }
1125 fprintf((bsl_stderr()), "\n");
1126 }
1127
1128 static void yy_reduce_print(YYSTYPE * yyvsp, struct Location * yylsp, int yyrule)
1129 {
1130 int yynrhs = yyr2[yyrule];
1131 int yyi;
1132 unsigned long int yylno = yyrline[yyrule];
1133
1134 fprintf((bsl_stderr()), "Reducing stack by rule %d (line %lu):\n", yyrule - 1, yylno);
1135 for(yyi = 0; yyi < yynrhs; yyi++)
1136 {
1137 fprintf((bsl_stderr()), "   $%d = ", yyi + 1);
1138 yy_symbol_print((bsl_stderr()), yyrhs[yyprhs[yyrule] + yyi], &(yyvsp[(yyi + 1) - (yynrhs)]), &(yylsp[(yyi + 1) - (yynrhs)]));
1139 fprintf((bsl_stderr()), "\n");
1140 }
1141 }
1142
1143 int type_yydebug;
1144
1145 extern void FreeSpecifier(struct Specifier * spec);
1146
1147 extern void FreeClassFunction(struct ClassFunction * func);
1148
1149 extern void FreeIdentifier(struct Identifier * id);
1150
1151 extern void FreeExpression(struct Expression * exp);
1152
1153 extern void FreeList(struct __ecereNameSpace__ecere__sys__OldList * list, void (*  FreeFunction)(void * ));
1154
1155 extern void FreeDeclaration(struct Declaration * decl);
1156
1157 extern void FreeInitDeclarator(struct InitDeclarator * decl);
1158
1159 extern void FreeExtDecl(struct ExtDecl * extDecl);
1160
1161 extern void FreeAttribute(struct Attribute * attr);
1162
1163 extern void FreeAttrib(struct Attrib * attr);
1164
1165 extern void FreeTemplateDataType(struct TemplateDatatype * type);
1166
1167 extern void FreeTemplateArgument(struct TemplateArgument * arg);
1168
1169 extern void FreeClassDef(struct ClassDef * def);
1170
1171 extern void FreeMemberInit(struct MemberInit * init);
1172
1173 extern void FreeProperty(struct PropertyDef * def);
1174
1175 extern void FreeDeclarator(struct Declarator * decl);
1176
1177 extern void FreeEnumerator(struct Enumerator * enumerator);
1178
1179 extern void FreePointer(struct Pointer * pointer);
1180
1181 extern void FreeTypeName(struct TypeName * typeName);
1182
1183 extern void FreeInitializer(struct Initializer * initializer);
1184
1185 extern void FreeStatement(struct Statement * stmt);
1186
1187 extern void PopContext(struct Context * ctx);
1188
1189 extern void FreeContext(struct Context * context);
1190
1191 extern void FreeInstance(struct Instantiation * inst);
1192
1193 extern void FreeMembersInit(struct MembersInit * init);
1194
1195 static void yydestruct(const char * yymsg, int yytype, YYSTYPE * yyvaluep, struct Location * yylocationp)
1196 {
1197 ((void)(yyvaluep));
1198 ((void)(yylocationp));
1199 if(!yymsg)
1200 yymsg = "Deleting";
1201 do
1202 {
1203 if(type_yydebug)
1204 {
1205 fprintf((bsl_stderr()), "%s ", yymsg);
1206 yy_symbol_print((bsl_stderr()), yytype, yyvaluep, yylocationp);
1207 fprintf((bsl_stderr()), "\n");
1208 }
1209 }while((0));
1210 switch(yytype)
1211 {
1212 case 144:
1213 {
1214 FreeSpecifier((*yyvaluep).specifier);
1215 }
1216 ;
1217 break;
1218 case 146:
1219 {
1220 FreeSpecifier((*yyvaluep).specifier);
1221 }
1222 ;
1223 break;
1224 case 147:
1225 {
1226 FreeSpecifier((*yyvaluep).specifier);
1227 }
1228 ;
1229 break;
1230 case 148:
1231 {
1232 FreeSpecifier((*yyvaluep).specifier);
1233 }
1234 ;
1235 break;
1236 case 149:
1237 {
1238 FreeClassFunction((*yyvaluep).classFunction);
1239 }
1240 ;
1241 break;
1242 case 150:
1243 {
1244 FreeClassFunction((*yyvaluep).classFunction);
1245 }
1246 ;
1247 break;
1248 case 151:
1249 {
1250 FreeClassFunction((*yyvaluep).classFunction);
1251 }
1252 ;
1253 break;
1254 case 152:
1255 {
1256 FreeClassFunction((*yyvaluep).classFunction);
1257 }
1258 ;
1259 break;
1260 case 153:
1261 {
1262 FreeIdentifier((*yyvaluep).id);
1263 }
1264 ;
1265 break;
1266 case 154:
1267 {
1268 FreeExpression((*yyvaluep).exp);
1269 }
1270 ;
1271 break;
1272 case 156:
1273 {
1274 FreeExpression((*yyvaluep).exp);
1275 }
1276 ;
1277 break;
1278 case 159:
1279 {
1280 FreeList((*yyvaluep).list, FreeExpression);
1281 }
1282 ;
1283 break;
1284 case 161:
1285 {
1286 FreeExpression((*yyvaluep).exp);
1287 }
1288 ;
1289 break;
1290 case 164:
1291 {
1292 FreeExpression((*yyvaluep).exp);
1293 }
1294 ;
1295 break;
1296 case 165:
1297 {
1298 FreeExpression((*yyvaluep).exp);
1299 }
1300 ;
1301 break;
1302 case 166:
1303 {
1304 FreeExpression((*yyvaluep).exp);
1305 }
1306 ;
1307 break;
1308 case 167:
1309 {
1310 FreeExpression((*yyvaluep).exp);
1311 }
1312 ;
1313 break;
1314 case 169:
1315 {
1316 FreeExpression((*yyvaluep).exp);
1317 }
1318 ;
1319 break;
1320 case 170:
1321 {
1322 FreeExpression((*yyvaluep).exp);
1323 }
1324 ;
1325 break;
1326 case 171:
1327 {
1328 FreeExpression((*yyvaluep).exp);
1329 }
1330 ;
1331 break;
1332 case 172:
1333 {
1334 FreeExpression((*yyvaluep).exp);
1335 }
1336 ;
1337 break;
1338 case 173:
1339 {
1340 FreeExpression((*yyvaluep).exp);
1341 }
1342 ;
1343 break;
1344 case 174:
1345 {
1346 FreeExpression((*yyvaluep).exp);
1347 }
1348 ;
1349 break;
1350 case 175:
1351 {
1352 FreeExpression((*yyvaluep).exp);
1353 }
1354 ;
1355 break;
1356 case 176:
1357 {
1358 FreeExpression((*yyvaluep).exp);
1359 }
1360 ;
1361 break;
1362 case 177:
1363 {
1364 FreeExpression((*yyvaluep).exp);
1365 }
1366 ;
1367 break;
1368 case 179:
1369 {
1370 FreeList((*yyvaluep).list, FreeExpression);
1371 }
1372 ;
1373 break;
1374 case 180:
1375 {
1376 FreeExpression((*yyvaluep).exp);
1377 }
1378 ;
1379 break;
1380 case 181:
1381 {
1382 FreeDeclaration((*yyvaluep).declaration);
1383 }
1384 ;
1385 break;
1386 case 182:
1387 {
1388 FreeList((*yyvaluep).list, FreeSpecifier);
1389 }
1390 ;
1391 break;
1392 case 183:
1393 {
1394 FreeList((*yyvaluep).list, FreeSpecifier);
1395 }
1396 ;
1397 break;
1398 case 184:
1399 {
1400 FreeList((*yyvaluep).list, FreeSpecifier);
1401 }
1402 ;
1403 break;
1404 case 185:
1405 {
1406 FreeList((*yyvaluep).list, FreeSpecifier);
1407 }
1408 ;
1409 break;
1410 case 189:
1411 {
1412 FreeList((*yyvaluep).list, FreeInitDeclarator);
1413 }
1414 ;
1415 break;
1416 case 190:
1417 {
1418 FreeInitDeclarator((*yyvaluep).initDeclarator);
1419 }
1420 ;
1421 break;
1422 case 191:
1423 {
1424 FreeSpecifier((*yyvaluep).specifier);
1425 }
1426 ;
1427 break;
1428 case 192:
1429 {
1430 FreeExtDecl((*yyvaluep).extDecl);
1431 }
1432 ;
1433 break;
1434 case 194:
1435 {
1436 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
1437 }
1438 ;
1439 break;
1440 case 195:
1441 {
1442 FreeAttribute((*yyvaluep).attribute);
1443 }
1444 ;
1445 break;
1446 case 196:
1447 {
1448 FreeList((*yyvaluep).list, FreeAttribute);
1449 }
1450 ;
1451 break;
1452 case 197:
1453 {
1454 FreeAttrib((*yyvaluep).attrib);
1455 }
1456 ;
1457 break;
1458 case 198:
1459 {
1460 FreeSpecifier((*yyvaluep).specifier);
1461 }
1462 ;
1463 break;
1464 case 199:
1465 {
1466 FreeSpecifier((*yyvaluep).specifier);
1467 }
1468 ;
1469 break;
1470 case 200:
1471 {
1472 FreeSpecifier((*yyvaluep).specifier);
1473 }
1474 ;
1475 break;
1476 case 201:
1477 {
1478 FreeSpecifier((*yyvaluep).specifier);
1479 }
1480 ;
1481 break;
1482 case 202:
1483 {
1484 FreeSpecifier((*yyvaluep).specifier);
1485 }
1486 ;
1487 break;
1488 case 203:
1489 {
1490 FreeSpecifier((*yyvaluep).specifier);
1491 }
1492 ;
1493 break;
1494 case 204:
1495 {
1496 FreeTemplateDataType((*yyvaluep).templateDatatype);
1497 }
1498 ;
1499 break;
1500 case 205:
1501 {
1502 FreeTemplateArgument((*yyvaluep).templateArgument);
1503 }
1504 ;
1505 break;
1506 case 206:
1507 {
1508 FreeTemplateArgument((*yyvaluep).templateArgument);
1509 }
1510 ;
1511 break;
1512 case 207:
1513 {
1514 FreeTemplateArgument((*yyvaluep).templateArgument);
1515 }
1516 ;
1517 break;
1518 case 210:
1519 {
1520 FreeList((*yyvaluep).list, FreeClassDef);
1521 }
1522 ;
1523 break;
1524 case 211:
1525 {
1526 FreeMemberInit((*yyvaluep).memberInit);
1527 }
1528 ;
1529 break;
1530 case 212:
1531 {
1532 FreeList((*yyvaluep).list, FreeMemberInit);
1533 }
1534 ;
1535 break;
1536 case 213:
1537 {
1538 FreeProperty((*yyvaluep).prop);
1539 }
1540 ;
1541 break;
1542 case 214:
1543 {
1544 FreeClassDef((*yyvaluep).classDef);
1545 }
1546 ;
1547 break;
1548 case 215:
1549 {
1550 FreeList((*yyvaluep).list, FreeDeclarator);
1551 }
1552 ;
1553 break;
1554 case 216:
1555 {
1556 FreeDeclarator((*yyvaluep).declarator);
1557 }
1558 ;
1559 break;
1560 case 217:
1561 {
1562 FreeSpecifier((*yyvaluep).specifier);
1563 }
1564 ;
1565 break;
1566 case 218:
1567 {
1568 FreeSpecifier((*yyvaluep).specifier);
1569 }
1570 ;
1571 break;
1572 case 219:
1573 {
1574 FreeList((*yyvaluep).list, FreeEnumerator);
1575 }
1576 ;
1577 break;
1578 case 220:
1579 {
1580 FreeEnumerator((*yyvaluep).enumerator);
1581 }
1582 ;
1583 break;
1584 case 221:
1585 {
1586 FreeDeclarator((*yyvaluep).declarator);
1587 }
1588 ;
1589 break;
1590 case 222:
1591 {
1592 FreeDeclarator((*yyvaluep).declarator);
1593 }
1594 ;
1595 break;
1596 case 223:
1597 {
1598 FreeDeclarator((*yyvaluep).declarator);
1599 }
1600 ;
1601 break;
1602 case 224:
1603 {
1604 FreeDeclarator((*yyvaluep).declarator);
1605 }
1606 ;
1607 break;
1608 case 225:
1609 {
1610 FreeDeclarator((*yyvaluep).declarator);
1611 }
1612 ;
1613 break;
1614 case 226:
1615 {
1616 FreeDeclarator((*yyvaluep).declarator);
1617 }
1618 ;
1619 break;
1620 case 227:
1621 {
1622 FreeDeclarator((*yyvaluep).declarator);
1623 }
1624 ;
1625 break;
1626 case 228:
1627 {
1628 FreeDeclarator((*yyvaluep).declarator);
1629 }
1630 ;
1631 break;
1632 case 229:
1633 {
1634 FreeDeclarator((*yyvaluep).declarator);
1635 }
1636 ;
1637 break;
1638 case 230:
1639 {
1640 FreeDeclarator((*yyvaluep).declarator);
1641 }
1642 ;
1643 break;
1644 case 231:
1645 {
1646 FreeDeclarator((*yyvaluep).declarator);
1647 }
1648 ;
1649 break;
1650 case 232:
1651 {
1652 FreeList((*yyvaluep).list, FreeSpecifier);
1653 }
1654 ;
1655 break;
1656 case 233:
1657 {
1658 FreePointer((*yyvaluep).pointer);
1659 }
1660 ;
1661 break;
1662 case 234:
1663 {
1664 FreeList((*yyvaluep).list, FreeTypeName);
1665 }
1666 ;
1667 break;
1668 case 235:
1669 {
1670 FreeList((*yyvaluep).list, FreeTypeName);
1671 }
1672 ;
1673 break;
1674 case 236:
1675 {
1676 FreeTypeName((*yyvaluep).typeName);
1677 }
1678 ;
1679 break;
1680 case 237:
1681 {
1682 FreeList((*yyvaluep).list, FreeTypeName);
1683 }
1684 ;
1685 break;
1686 case 238:
1687 {
1688 FreeTypeName((*yyvaluep).typeName);
1689 }
1690 ;
1691 break;
1692 case 239:
1693 {
1694 FreeTypeName((*yyvaluep).typeName);
1695 }
1696 ;
1697 break;
1698 case 240:
1699 {
1700 FreeInitializer((*yyvaluep).initializer);
1701 }
1702 ;
1703 break;
1704 case 241:
1705 {
1706 FreeInitializer((*yyvaluep).initializer);
1707 }
1708 ;
1709 break;
1710 case 242:
1711 {
1712 FreeList((*yyvaluep).list, FreeInitializer);
1713 }
1714 ;
1715 break;
1716 case 243:
1717 {
1718 FreeStatement((*yyvaluep).stmt);
1719 }
1720 ;
1721 break;
1722 case 244:
1723 {
1724 FreeStatement((*yyvaluep).stmt);
1725 }
1726 ;
1727 break;
1728 case 245:
1729 {
1730 FreeList((*yyvaluep).list, FreeDeclaration);
1731 }
1732 ;
1733 break;
1734 case 246:
1735 {
1736 FreeList((*yyvaluep).list, FreeStatement);
1737 }
1738 ;
1739 break;
1740 case 247:
1741 {
1742 FreeStatement((*yyvaluep).stmt);
1743 }
1744 ;
1745 break;
1746 case 248:
1747 {
1748 PopContext((*yyvaluep).context);
1749 FreeContext((*yyvaluep).context);
1750 (((*yyvaluep).context ? (__ecereClass_Context->Destructor ? __ecereClass_Context->Destructor((*yyvaluep).context) : 0, __ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).context)) : 0), (*yyvaluep).context = 0);
1751 }
1752 ;
1753 break;
1754 case 249:
1755 {
1756 FreeStatement((*yyvaluep).stmt);
1757 }
1758 ;
1759 break;
1760 case 250:
1761 {
1762 FreeStatement((*yyvaluep).stmt);
1763 }
1764 ;
1765 break;
1766 case 251:
1767 {
1768 FreeStatement((*yyvaluep).stmt);
1769 }
1770 ;
1771 break;
1772 case 252:
1773 {
1774 FreeStatement((*yyvaluep).stmt);
1775 }
1776 ;
1777 break;
1778 case 253:
1779 {
1780 FreeStatement((*yyvaluep).stmt);
1781 }
1782 ;
1783 break;
1784 case 254:
1785 {
1786 (__ecereNameSpace__ecere__com__eSystem_Delete((*yyvaluep).string), (*yyvaluep).string = 0);
1787 }
1788 ;
1789 break;
1790 case 255:
1791 {
1792 FreeInstance((*yyvaluep).instance);
1793 }
1794 ;
1795 break;
1796 case 257:
1797 {
1798 FreeInstance((*yyvaluep).instance);
1799 }
1800 ;
1801 break;
1802 case 259:
1803 {
1804 FreeClassFunction((*yyvaluep).classFunction);
1805 }
1806 ;
1807 break;
1808 case 260:
1809 {
1810 FreeClassFunction((*yyvaluep).classFunction);
1811 }
1812 ;
1813 break;
1814 case 261:
1815 {
1816 FreeClassFunction((*yyvaluep).classFunction);
1817 }
1818 ;
1819 break;
1820 case 262:
1821 {
1822 FreeMemberInit((*yyvaluep).memberInit);
1823 }
1824 ;
1825 break;
1826 case 263:
1827 {
1828 FreeList((*yyvaluep).list, FreeMemberInit);
1829 }
1830 ;
1831 break;
1832 case 264:
1833 {
1834 FreeList((*yyvaluep).list, FreeMemberInit);
1835 }
1836 ;
1837 break;
1838 case 265:
1839 {
1840 FreeList((*yyvaluep).list, FreeMembersInit);
1841 }
1842 ;
1843 break;
1844 case 266:
1845 {
1846 FreeList((*yyvaluep).list, FreeMembersInit);
1847 }
1848 ;
1849 break;
1850 default:
1851 break;
1852 }
1853 }
1854
1855 int type_yyparse(void);
1856
1857 int type_yychar;
1858
1859 YYSTYPE type_yylval;
1860
1861 struct Location type_yylloc;
1862
1863 int type_yynerrs;
1864
1865 extern struct Symbol * DeclClass(int symbolID, char *  name);
1866
1867 extern void resetScannerPos(struct CodePosition * pos);
1868
1869 extern char *  strcpy(char * , const char * );
1870
1871 extern char *  strcat(char * , const char * );
1872
1873 extern struct Symbol * _DeclClass(int symbolID, char *  name);
1874
1875 extern struct Specifier * MkSpecifierName(char *  name);
1876
1877 extern void SetClassTemplateArgs(struct Specifier * spec, struct __ecereNameSpace__ecere__sys__OldList * templateArgs);
1878
1879 extern struct ClassFunction * MkClassFunction(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct Specifier * _class, struct Declarator * decl, struct __ecereNameSpace__ecere__sys__OldList * declList);
1880
1881 extern struct Context * globalContext;
1882
1883 extern struct Identifier * MkIdentifier(char *  string);
1884
1885 extern struct Expression * MkExpBrackets(struct __ecereNameSpace__ecere__sys__OldList * expressions);
1886
1887 extern struct Expression * MkExpIdentifier(struct Identifier * id);
1888
1889 extern struct Expression * MkExpInstance(struct Instantiation * inst);
1890
1891 extern struct Expression * MkExpConstant(char *  string);
1892
1893 extern struct Expression * MkExpString(char *  string);
1894
1895 extern struct Expression * MkExpIntlString(char *  string, char *  context);
1896
1897 extern struct Expression * MkExpDummy(void);
1898
1899 extern struct __ecereNameSpace__ecere__sys__OldList *  MkListOne(void *  item);
1900
1901 extern struct Expression * MkExpNew(struct TypeName * type, struct Expression * size);
1902
1903 extern struct TypeName * MkTypeName(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Declarator * declarator);
1904
1905 extern struct Expression * MkExpNew0(struct TypeName * type, struct Expression * size);
1906
1907 extern struct Expression * MkExpRenew(struct Expression * memExp, struct TypeName * type, struct Expression * size);
1908
1909 extern struct Expression * MkExpRenew0(struct Expression * memExp, struct TypeName * type, struct Expression * size);
1910
1911 extern struct Expression * MkExpIndex(struct Expression * expression, struct __ecereNameSpace__ecere__sys__OldList * index);
1912
1913 extern struct Expression * MkExpCall(struct Expression * expression, struct __ecereNameSpace__ecere__sys__OldList * arguments);
1914
1915 extern struct __ecereNameSpace__ecere__sys__OldList *  MkList(void);
1916
1917 extern struct Expression * MkExpMember(struct Expression * expression, struct Identifier * member);
1918
1919 extern size_t strlen(const char * );
1920
1921 extern struct Expression * MkExpPointer(struct Expression * expression, struct Identifier * member);
1922
1923 extern struct Expression * MkExpOp(struct Expression * exp1, int op, struct Expression * exp2);
1924
1925 extern void ListAdd(struct __ecereNameSpace__ecere__sys__OldList * list, void *  item);
1926
1927 extern struct Expression * MkExpTypeSize(struct TypeName * typeName);
1928
1929 extern struct Expression * MkExpTypeAlign(struct TypeName * typeName);
1930
1931 extern struct Expression * MkExpCast(struct TypeName * typeName, struct Expression * expression);
1932
1933 extern unsigned int skipErrors;
1934
1935 extern struct Expression * MkExpCondition(struct Expression * cond, struct __ecereNameSpace__ecere__sys__OldList * expressions, struct Expression * elseExp);
1936
1937 extern struct Declaration * MkDeclaration(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct __ecereNameSpace__ecere__sys__OldList * initDeclarators);
1938
1939 extern struct Declaration * MkDeclarationInst(struct Instantiation * inst);
1940
1941 extern struct Declaration * MkDeclarationDefine(struct Identifier * id, struct Expression * exp);
1942
1943 extern struct Specifier * MkSpecifierNameArgs(char *  name, struct __ecereNameSpace__ecere__sys__OldList *  templateArgs);
1944
1945 extern struct InitDeclarator * MkInitDeclarator(struct Declarator * declarator, struct Initializer * initializer);
1946
1947 extern struct Specifier * MkSpecifier(int specifier);
1948
1949 extern struct ExtDecl * MkExtDeclString(char * s);
1950
1951 extern char *  (* __ecereFunction___ecereNameSpace__ecere__sys__CopyString)(char *  string);
1952
1953 extern struct ExtDecl * MkExtDeclAttrib(struct Attrib * attr);
1954
1955 extern struct Attribute * MkAttribute(char * attr, struct Expression * exp);
1956
1957 extern struct Attrib * MkAttrib(int type, struct __ecereNameSpace__ecere__sys__OldList *  attribs);
1958
1959 extern struct Specifier * MkSpecifierExtended(struct ExtDecl * extDecl);
1960
1961 extern struct Specifier * MkSpecifierTypeOf(struct Expression * expression);
1962
1963 extern struct Specifier * MkSpecifierSubClass(struct Specifier * _class);
1964
1965 extern struct Specifier * MkStructOrUnion(int type, struct Identifier * id, struct __ecereNameSpace__ecere__sys__OldList * definitions);
1966
1967 extern int declMode;
1968
1969 extern struct TemplateDatatype * MkTemplateDatatype(struct __ecereNameSpace__ecere__sys__OldList *  specifiers, struct Declarator * decl);
1970
1971 extern struct TemplateArgument * MkTemplateTypeArgument(struct TemplateDatatype * tplDatatype);
1972
1973 extern struct TemplateArgument * MkTemplateExpressionArgument(struct Expression * expr);
1974
1975 extern struct MemberInit * MkMemberInitExp(struct Expression * idExp, struct Initializer * initializer);
1976
1977 extern struct PropertyDef * MkProperty(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Declarator * decl, struct Identifier * id, struct Statement * setStmt, struct Statement * getStmt);
1978
1979 extern struct ClassDef * MkClassDefDeclaration(struct Declaration * decl);
1980
1981 extern struct Declaration * MkStructDeclaration(struct __ecereNameSpace__ecere__sys__OldList * specifiers, struct __ecereNameSpace__ecere__sys__OldList * declarators, struct Specifier * extStorage);
1982
1983 extern struct Declaration * MkDeclarationClassInst(struct Instantiation * inst);
1984
1985 extern struct ClassDef * MkClassDefFunction(struct ClassFunction * function);
1986
1987 extern struct ClassDef * MkClassDefDefaultProperty(struct __ecereNameSpace__ecere__sys__OldList * defProperties);
1988
1989 extern struct ClassDef * MkClassDefProperty(struct PropertyDef * propertyDef);
1990
1991 extern struct Declarator * MkStructDeclarator(struct Declarator * declarator, struct Expression * exp);
1992
1993 extern struct Specifier * MkEnum(struct Identifier * id, struct __ecereNameSpace__ecere__sys__OldList * list);
1994
1995 extern struct Enumerator * MkEnumerator(struct Identifier * id, struct Expression * exp);
1996
1997 extern struct Declarator * MkDeclaratorBrackets(struct Declarator * declarator);
1998
1999 extern struct Declarator * MkDeclaratorArray(struct Declarator * declarator, struct Expression * exp);
2000
2001 extern struct Declarator * MkDeclaratorEnumArray(struct Declarator * declarator, struct Specifier * _class);
2002
2003 extern struct Declarator * MkDeclaratorFunction(struct Declarator * declarator, struct __ecereNameSpace__ecere__sys__OldList * parameters);
2004
2005 extern struct Declarator * MkDeclaratorPointer(struct Pointer * pointer, struct Declarator * declarator);
2006
2007 extern struct Declarator * MkDeclaratorExtended(struct ExtDecl * extended, struct Declarator * declarator);
2008
2009 extern struct Declarator * MkDeclaratorExtendedEnd(struct ExtDecl * extended, struct Declarator * declarator);
2010
2011 extern struct Declarator * MkDeclaratorIdentifier(struct Identifier * id);
2012
2013 extern struct Pointer * MkPointer(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Pointer * pointer);
2014
2015 extern struct Initializer * MkInitializerAssignment(struct Expression * exp);
2016
2017 extern struct Initializer * MkInitializerList(struct __ecereNameSpace__ecere__sys__OldList * list);
2018
2019 extern struct Statement * MkLabeledStmt(struct Identifier * id, struct Statement * statement);
2020
2021 extern struct Statement * MkCaseStmt(struct Expression * exp, struct Statement * statement);
2022
2023 extern struct Statement * MkBadDeclStmt(struct Declaration * decl);
2024
2025 extern struct Statement * MkCompoundStmt(struct __ecereNameSpace__ecere__sys__OldList * declarations, struct __ecereNameSpace__ecere__sys__OldList * statements);
2026
2027 extern struct Context * PushContext(void);
2028
2029 extern struct Statement * MkExpressionStmt(struct __ecereNameSpace__ecere__sys__OldList * expressions);
2030
2031 extern struct Statement * MkIfStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement, struct Statement * elseStmt);
2032
2033 extern struct Statement * MkSwitchStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement);
2034
2035 extern struct Statement * MkWhileStmt(struct __ecereNameSpace__ecere__sys__OldList * exp, struct Statement * statement);
2036
2037 extern struct Statement * MkDoWhileStmt(struct Statement * statement, struct __ecereNameSpace__ecere__sys__OldList * exp);
2038
2039 extern struct Statement * MkForStmt(struct Statement * init, struct Statement * check, struct __ecereNameSpace__ecere__sys__OldList * inc, struct Statement * statement);
2040
2041 extern struct Statement * MkGotoStmt(struct Identifier * id);
2042
2043 extern struct Statement * MkContinueStmt(void);
2044
2045 extern struct Statement * MkBreakStmt(void);
2046
2047 extern struct Statement * MkReturnStmt(struct __ecereNameSpace__ecere__sys__OldList * exp);
2048
2049 extern struct Instantiation * MkInstantiationNamed(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
2050
2051 extern struct Instantiation * MkInstantiation(struct Specifier * _class, struct Expression * exp, struct __ecereNameSpace__ecere__sys__OldList * members);
2052
2053 extern void ProcessClassFunctionBody(struct ClassFunction * func, struct Statement * body);
2054
2055 extern struct MemberInit * MkMemberInit(struct __ecereNameSpace__ecere__sys__OldList * ids, struct Initializer * initializer);
2056
2057 extern struct MembersInit * MkMembersInitList(struct __ecereNameSpace__ecere__sys__OldList * dataMembers);
2058
2059 extern struct MembersInit * MkMembersInitMethod(struct ClassFunction * function);
2060
2061 extern int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek;
2062
2063 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__File;
2064
2065 int type_yyparse(void)
2066 {
2067 int yystate;
2068 int yyerrstatus;
2069 yytype_int16 yyssa[200];
2070 yytype_int16 * yyss;
2071 yytype_int16 * yyssp;
2072 YYSTYPE yyvsa[200];
2073 YYSTYPE * yyvs;
2074 YYSTYPE * yyvsp;
2075 struct Location yylsa[200];
2076 struct Location * yyls;
2077 struct Location * yylsp;
2078 struct Location yyerror_range[2];
2079 unsigned int yystacksize;
2080 int yyn;
2081 int yyresult;
2082 int yytoken;
2083 YYSTYPE yyval;
2084 struct Location yyloc;
2085 int yylen = 0;
2086
2087 yytoken = 0;
2088 yyss = yyssa;
2089 yyvs = yyvsa;
2090 yyls = yylsa;
2091 yystacksize = 200;
2092 do
2093 {
2094 if(type_yydebug)
2095 fprintf((bsl_stderr()), "Starting parse\n");
2096 }while((0));
2097 yystate = 0;
2098 yyerrstatus = 0;
2099 type_yynerrs = 0;
2100 type_yychar = (-2);
2101 yyssp = yyss;
2102 yyvsp = yyvs;
2103 yylsp = yyls;
2104 goto yysetstate;
2105 yynewstate:
2106 yyssp++;
2107 yysetstate:
2108 *yyssp = yystate;
2109 if(yyss + yystacksize - 1 <= yyssp)
2110 {
2111 unsigned int yysize = yyssp - yyss + 1;
2112
2113 if(10000 <= yystacksize)
2114 goto yyexhaustedlab;
2115 yystacksize *= 2;
2116 if(10000 < yystacksize)
2117 yystacksize = 10000;
2118 {
2119 yytype_int16 * yyss1 = yyss;
2120 union yyalloc * yyptr = (union yyalloc *)malloc(((yystacksize) * (sizeof(yytype_int16) + sizeof(YYSTYPE) + sizeof(struct Location)) + 2 * (sizeof(union yyalloc) - 1)));
2121
2122 if(!yyptr)
2123 goto yyexhaustedlab;
2124 do
2125 {
2126 unsigned int yynewbytes;
2127
2128 __builtin_memcpy(&(*yyptr).yyss_alloc, yyss, (yysize) * sizeof *(yyss));
2129 yyss = &(*yyptr).yyss_alloc;
2130 yynewbytes = yystacksize * sizeof *yyss + (sizeof(union yyalloc) - 1);
2131 yyptr += yynewbytes / sizeof *yyptr;
2132 }while((0));
2133 do
2134 {
2135 unsigned int yynewbytes;
2136
2137 __builtin_memcpy(&(*yyptr).yyvs_alloc, yyvs, (yysize) * sizeof *(yyvs));
2138 yyvs = &(*yyptr).yyvs_alloc;
2139 yynewbytes = yystacksize * sizeof *yyvs + (sizeof(union yyalloc) - 1);
2140 yyptr += yynewbytes / sizeof *yyptr;
2141 }while((0));
2142 do
2143 {
2144 unsigned int yynewbytes;
2145
2146 __builtin_memcpy(&(*yyptr).yyls_alloc, yyls, (yysize) * sizeof *(yyls));
2147 yyls = &(*yyptr).yyls_alloc;
2148 yynewbytes = yystacksize * sizeof *yyls + (sizeof(union yyalloc) - 1);
2149 yyptr += yynewbytes / sizeof *yyptr;
2150 }while((0));
2151 if(yyss1 != yyssa)
2152 free(yyss1);
2153 }
2154 yyssp = yyss + yysize - 1;
2155 yyvsp = yyvs + yysize - 1;
2156 yylsp = yyls + yysize - 1;
2157 do
2158 {
2159 if(type_yydebug)
2160 fprintf((bsl_stderr()), "Stack size increased to %lu\n", yystacksize);
2161 }while((0));
2162 if(yyss + yystacksize - 1 <= yyssp)
2163 goto yyabortlab;
2164 }
2165 do
2166 {
2167 if(type_yydebug)
2168 fprintf((bsl_stderr()), "Entering state %d\n", yystate);
2169 }while((0));
2170 if(yystate == 99)
2171 goto yyacceptlab;
2172 goto yybackup;
2173 yybackup:
2174 yyn = yypact[yystate];
2175 if(yyn == -778)
2176 goto yydefault;
2177 if(type_yychar == (-2))
2178 {
2179 do
2180 {
2181 if(type_yydebug)
2182 fprintf((bsl_stderr()), "Reading a token: ");
2183 }while((0));
2184 type_yychar = yylex();
2185 }
2186 if(type_yychar <= 0)
2187 {
2188 type_yychar = yytoken = 0;
2189 do
2190 {
2191 if(type_yydebug)
2192 fprintf((bsl_stderr()), "Now at end of input.\n");
2193 }while((0));
2194 }
2195 else
2196 {
2197 yytoken = ((unsigned int)(type_yychar) <= 372 ? yytranslate[type_yychar] : 2);
2198 do
2199 {
2200 if(type_yydebug)
2201 {
2202 fprintf((bsl_stderr()), "%s ", "Next token is");
2203 yy_symbol_print((bsl_stderr()), yytoken, &type_yylval, &type_yylloc);
2204 fprintf((bsl_stderr()), "\n");
2205 }
2206 }while((0));
2207 }
2208 yyn += yytoken;
2209 if(yyn < 0 || 9121 < yyn || yycheck[yyn] != yytoken)
2210 goto yydefault;
2211 yyn = yytable[yyn];
2212 if(yyn <= 0)
2213 {
2214 if(yyn == 0 || yyn == -509)
2215 goto yyerrlab;
2216 yyn = -yyn;
2217 goto yyreduce;
2218 }
2219 if(yyerrstatus)
2220 yyerrstatus--;
2221 do
2222 {
2223 if(type_yydebug)
2224 {
2225 fprintf((bsl_stderr()), "%s ", "Shifting");
2226 yy_symbol_print((bsl_stderr()), yytoken, &type_yylval, &type_yylloc);
2227 fprintf((bsl_stderr()), "\n");
2228 }
2229 }while((0));
2230 type_yychar = (-2);
2231 yystate = yyn;
2232 *++yyvsp = type_yylval;
2233 *++yylsp = type_yylloc;
2234 goto yynewstate;
2235 yydefault:
2236 yyn = yydefact[yystate];
2237 if(yyn == 0)
2238 goto yyerrlab;
2239 goto yyreduce;
2240 yyreduce:
2241 yylen = yyr2[yyn];
2242 yyval = yyvsp[1 - yylen];
2243 (yyloc.start = ((yylsp - yylen))[1].start);
2244 (yyloc.end = ((yylsp - yylen))[yylen].end);
2245 ;
2246 do
2247 {
2248 if(type_yydebug)
2249 yy_reduce_print(yyvsp, yylsp, yyn);
2250 }while((0));
2251 switch(yyn)
2252 {
2253 case 2:
2254 {
2255 yyval.specifier = (((void *)0));
2256 DeclClass(0, yyvsp[(1) - (2)].id->string);
2257 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2258 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2259
2260 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2261 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2262 resetScannerPos(&(yylsp[(1) - (2)]).start);
2263 (type_yychar = (-2));
2264 FreeIdentifier(yyvsp[(1) - (2)].id);
2265 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2266 yystate = *yyssp;
2267 do
2268 {
2269 if(type_yydebug)
2270 yy_stack_print((yyss), (yyssp));
2271 }while((0));
2272 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2273 yystate = *yyssp;
2274 do
2275 {
2276 if(type_yydebug)
2277 yy_stack_print((yyss), (yyssp));
2278 }while((0));
2279 goto yysetstate;
2280 ;
2281 }
2282 break;
2283 case 3:
2284 {
2285 yyval.specifier = (((void *)0));
2286 if(yyvsp[(1) - (2)].id->_class)
2287 {
2288 char name[1024];
2289
2290 strcpy(name, yyvsp[(1) - (2)].id->_class->name ? yyvsp[(1) - (2)].id->_class->name : "");
2291 strcat(name, "::");
2292 strcat(name, yyvsp[(1) - (2)].id->string);
2293 _DeclClass(0, name);
2294 }
2295 else
2296 _DeclClass(0, yyvsp[(1) - (2)].id->string);
2297 FreeIdentifier(yyvsp[(1) - (2)].id);
2298 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2299 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2300
2301 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2302 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2303 resetScannerPos(&(yylsp[(1) - (2)]).start);
2304 (type_yychar = (-2));
2305 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2306 yystate = *yyssp;
2307 do
2308 {
2309 if(type_yydebug)
2310 yy_stack_print((yyss), (yyssp));
2311 }while((0));
2312 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2313 yystate = *yyssp;
2314 do
2315 {
2316 if(type_yydebug)
2317 yy_stack_print((yyss), (yyssp));
2318 }while((0));
2319 goto yysetstate;
2320 ;
2321 }
2322 break;
2323 case 4:
2324 {
2325 DeclClass(0, yyvsp[(1) - (2)].id->string);
2326 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2327 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2328
2329 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2330 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2331 parseTypeError = (unsigned int)0;
2332 resetScannerPos(&(yylsp[(1) - (2)]).start);
2333 (type_yychar = (-2));
2334 FreeIdentifier(yyvsp[(1) - (2)].id);
2335 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2336 yystate = *yyssp;
2337 do
2338 {
2339 if(type_yydebug)
2340 yy_stack_print((yyss), (yyssp));
2341 }while((0));
2342 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2343 yystate = *yyssp;
2344 do
2345 {
2346 if(type_yydebug)
2347 yy_stack_print((yyss), (yyssp));
2348 }while((0));
2349 goto yysetstate;
2350 ;
2351 }
2352 break;
2353 case 5:
2354 {
2355 yyval.specifier = yyvsp[(1) - (1)].specifier;
2356 ;
2357 }
2358 break;
2359 case 6:
2360 {
2361 DeclClass(0, yyvsp[(1) - (2)].id->string);
2362 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2363 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2364
2365 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2366 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(1) - (2)]).start.pos, 0);
2367 resetScannerPos(&(yylsp[(1) - (2)]).start);
2368 (type_yychar = (-2));
2369 FreeIdentifier(yyvsp[(1) - (2)].id);
2370 FreeIdentifier(yyvsp[(2) - (2)].id);
2371 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2372 yystate = *yyssp;
2373 do
2374 {
2375 if(type_yydebug)
2376 yy_stack_print((yyss), (yyssp));
2377 }while((0));
2378 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
2379 yystate = *yyssp;
2380 do
2381 {
2382 if(type_yydebug)
2383 yy_stack_print((yyss), (yyssp));
2384 }while((0));
2385 goto yysetstate;
2386 ;
2387 }
2388 break;
2389 case 7:
2390 {
2391 yyval.specifier = MkSpecifierName(yytext);
2392 ;
2393 }
2394 break;
2395 case 9:
2396 {
2397 yyval.specifier = yyvsp[(1) - (4)].specifier;
2398 SetClassTemplateArgs(yyval.specifier, yyvsp[(3) - (4)].list);
2399 yyval.specifier->loc = (yyloc);
2400 ;
2401 }
2402 break;
2403 case 10:
2404 {
2405 yyval.specifier = yyvsp[(1) - (4)].specifier;
2406 SetClassTemplateArgs(yyval.specifier, yyvsp[(3) - (4)].list);
2407 yyval.specifier->loc = (yyloc);
2408 (yylsp[(4) - (4)]).end.pos--;
2409 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2410 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = fileInput;
2411
2412 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2413 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek])(fileInput, (yylsp[(4) - (4)]).end.pos, 0);
2414 resetScannerPos(&(yylsp[(4) - (4)]).end);
2415 (type_yychar = (-2));
2416 ;
2417 }
2418 break;
2419 case 11:
2420 {
2421 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
2422 yyval.classFunction->loc = (yyloc);
2423 yyval.classFunction->id = ++globalContext->nextID;
2424 ;
2425 }
2426 break;
2427 case 12:
2428 {
2429 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(1) - (1)].declarator, (((void *)0)));
2430 yyval.classFunction->loc = (yyloc);
2431 yyval.classFunction->id = ++globalContext->nextID;
2432 ;
2433 }
2434 break;
2435 case 13:
2436 {
2437 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
2438 yyval.classFunction->isConstructor = 0x1;
2439 yyval.classFunction->loc = (yyloc);
2440 yyval.classFunction->id = ++globalContext->nextID;
2441 FreeList(yyvsp[(1) - (3)].list, FreeSpecifier);
2442 ;
2443 }
2444 break;
2445 case 14:
2446 {
2447 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
2448 yyval.classFunction->isDestructor = 0x1;
2449 yyval.classFunction->loc = (yyloc);
2450 yyval.classFunction->id = ++globalContext->nextID;
2451 FreeList(yyvsp[(2) - (4)].list, FreeSpecifier);
2452 ;
2453 }
2454 break;
2455 case 15:
2456 {
2457 yyval.classFunction = MkClassFunction(yyvsp[(2) - (3)].list, (((void *)0)), yyvsp[(3) - (3)].declarator, (((void *)0)));
2458 yyval.classFunction->isVirtual = 0x1;
2459 yyval.classFunction->loc = (yyloc);
2460 yyval.classFunction->id = ++globalContext->nextID;
2461 ;
2462 }
2463 break;
2464 case 16:
2465 {
2466 yyval.classFunction = MkClassFunction((((void *)0)), (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
2467 yyval.classFunction->isVirtual = 0x1;
2468 yyval.classFunction->loc = (yyloc);
2469 yyval.classFunction->id = ++globalContext->nextID;
2470 ;
2471 }
2472 break;
2473 case 17:
2474 {
2475 yyval.id = MkIdentifier(yytext);
2476 yyval.id->loc = (yylsp[(1) - (1)]);
2477 ;
2478 }
2479 break;
2480 case 19:
2481 {
2482 yyval.exp = MkExpBrackets(yyvsp[(2) - (3)].list);
2483 yyval.exp->loc = (yyloc);
2484 ;
2485 }
2486 break;
2487 case 20:
2488 {
2489 yyval.exp = MkExpIdentifier(yyvsp[(1) - (1)].id);
2490 yyval.exp->loc = (yyloc);
2491 ;
2492 }
2493 break;
2494 case 21:
2495 {
2496 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
2497 yyval.exp->loc = (yyloc);
2498 ;
2499 }
2500 break;
2501 case 22:
2502 {
2503 yyval.exp = MkExpConstant(yytext);
2504 yyval.exp->loc = (yyloc);
2505 ;
2506 }
2507 break;
2508 case 23:
2509 {
2510 yyval.exp = MkExpString(yyvsp[(1) - (1)].string);
2511 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(1) - (1)].string), yyvsp[(1) - (1)].string = 0);
2512 yyval.exp->loc = (yyloc);
2513 ;
2514 }
2515 break;
2516 case 24:
2517 {
2518 yyval.exp = MkExpIntlString(yyvsp[(2) - (2)].string, (((void *)0)));
2519 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (2)].string), yyvsp[(2) - (2)].string = 0);
2520 yyval.exp->loc = (yyloc);
2521 ;
2522 }
2523 break;
2524 case 25:
2525 {
2526 yyval.exp = MkExpIntlString(yyvsp[(4) - (4)].string, yyvsp[(2) - (4)].string);
2527 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(2) - (4)].string), yyvsp[(2) - (4)].string = 0);
2528 (__ecereNameSpace__ecere__com__eSystem_Delete(yyvsp[(4) - (4)].string), yyvsp[(4) - (4)].string = 0);
2529 yyval.exp->loc = (yyloc);
2530 ;
2531 }
2532 break;
2533 case 26:
2534 {
2535 struct Expression * exp = MkExpDummy();
2536
2537 exp->loc.start = (yylsp[(1) - (2)]).end;
2538 exp->loc.end = (yylsp[(2) - (2)]).start;
2539 yyval.exp = MkExpBrackets(MkListOne(exp));
2540 yyval.exp->loc = (yyloc);
2541 yyerror();
2542 ;
2543 }
2544 break;
2545 case 27:
2546 {
2547 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
2548 yyval.exp->loc = (yyloc);
2549 ;
2550 }
2551 break;
2552 case 28:
2553 {
2554 yyval.exp = MkExpNew(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
2555 yyval.exp->loc = (yyloc);
2556 ;
2557 }
2558 break;
2559 case 29:
2560 {
2561 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator), yyvsp[(5) - (6)].exp);
2562 yyval.exp->loc = (yyloc);
2563 ;
2564 }
2565 break;
2566 case 30:
2567 {
2568 yyval.exp = MkExpNew0(MkTypeName(yyvsp[(2) - (5)].list, (((void *)0))), yyvsp[(4) - (5)].exp);
2569 yyval.exp->loc = (yyloc);
2570 ;
2571 }
2572 break;
2573 case 31:
2574 {
2575 yyval.exp = MkExpRenew(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
2576 yyval.exp->loc = (yyloc);
2577 ;
2578 }
2579 break;
2580 case 32:
2581 {
2582 yyval.exp = MkExpRenew(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
2583 yyval.exp->loc = (yyloc);
2584 ;
2585 }
2586 break;
2587 case 33:
2588 {
2589 yyval.exp = MkExpRenew0(yyvsp[(2) - (7)].exp, MkTypeName(yyvsp[(3) - (7)].list, yyvsp[(4) - (7)].declarator), yyvsp[(6) - (7)].exp);
2590 yyval.exp->loc = (yyloc);
2591 ;
2592 }
2593 break;
2594 case 34:
2595 {
2596 yyval.exp = MkExpRenew0(yyvsp[(2) - (6)].exp, MkTypeName(yyvsp[(3) - (6)].list, (((void *)0))), yyvsp[(5) - (6)].exp);
2597 yyval.exp->loc = (yyloc);
2598 ;
2599 }
2600 break;
2601 case 35:
2602 {
2603 yyval.exp = MkExpDummy();
2604 ;
2605 }
2606 break;
2607 case 37:
2608 {
2609 yyval.exp = MkExpIndex(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2610 yyval.exp->loc = (yyloc);
2611 ;
2612 }
2613 break;
2614 case 38:
2615 {
2616 yyval.exp = MkExpCall(yyvsp[(1) - (3)].exp, MkList());
2617 yyval.exp->call.argLoc.start = (yylsp[(2) - (3)]).start;
2618 yyval.exp->call.argLoc.end = (yylsp[(3) - (3)]).end;
2619 yyval.exp->loc = (yyloc);
2620 ;
2621 }
2622 break;
2623 case 39:
2624 {
2625 yyval.exp = MkExpCall(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2626 yyval.exp->call.argLoc.start = (yylsp[(2) - (4)]).start;
2627 yyval.exp->call.argLoc.end = (yylsp[(4) - (4)]).end;
2628 yyval.exp->loc = (yyloc);
2629 ;
2630 }
2631 break;
2632 case 40:
2633 {
2634 yyval.exp = MkExpMember(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2635 yyval.exp->loc = (yyloc);
2636 ;
2637 }
2638 break;
2639 case 41:
2640 {
2641 char * constant = yyvsp[(1) - (2)].exp->type == 2 ? yyvsp[(1) - (2)].exp->constant : (((void *)0));
2642 int len = constant ? strlen(constant) : 0;
2643
2644 if(constant && constant[len - 1] == '.')
2645 {
2646 constant[len - 1] = (char)0;
2647 yyval.exp = MkExpMember(yyvsp[(1) - (2)].exp, yyvsp[(2) - (2)].id);
2648 yyval.exp->loc = (yyloc);
2649 }
2650 else
2651 yyerror();
2652 ;
2653 }
2654 break;
2655 case 42:
2656 {
2657 yyval.exp = MkExpPointer(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2658 yyval.exp->loc = (yyloc);
2659 ;
2660 }
2661 break;
2662 case 43:
2663 {
2664 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, INC_OP, (((void *)0)));
2665 yyval.exp->loc = (yyloc);
2666 ;
2667 }
2668 break;
2669 case 44:
2670 {
2671 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, DEC_OP, (((void *)0)));
2672 yyval.exp->loc = (yyloc);
2673 ;
2674 }
2675 break;
2676 case 45:
2677 {
2678 yyval.exp = MkExpInstance(yyvsp[(1) - (1)].instance);
2679 yyval.exp->loc = (yyloc);
2680 ;
2681 }
2682 break;
2683 case 47:
2684 {
2685 yyval.exp = MkExpIndex(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2686 yyval.exp->loc = (yyloc);
2687 ;
2688 }
2689 break;
2690 case 48:
2691 {
2692 yyval.exp = MkExpCall(yyvsp[(1) - (3)].exp, MkList());
2693 yyval.exp->call.argLoc.start = (yylsp[(2) - (3)]).start;
2694 yyval.exp->call.argLoc.end = (yylsp[(3) - (3)]).end;
2695 yyval.exp->loc = (yyloc);
2696 ;
2697 }
2698 break;
2699 case 49:
2700 {
2701 yyval.exp = MkExpCall(yyvsp[(1) - (4)].exp, yyvsp[(3) - (4)].list);
2702 yyval.exp->call.argLoc.start = (yylsp[(2) - (4)]).start;
2703 yyval.exp->call.argLoc.end = (yylsp[(4) - (4)]).end;
2704 yyval.exp->loc = (yyloc);
2705 ;
2706 }
2707 break;
2708 case 50:
2709 {
2710 yyval.exp = MkExpMember(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2711 yyval.exp->loc = (yyloc);
2712 ;
2713 }
2714 break;
2715 case 51:
2716 {
2717 char * constant = yyvsp[(1) - (2)].exp->type == 2 ? yyvsp[(1) - (2)].exp->constant : (((void *)0));
2718 int len = constant ? strlen(constant) : 0;
2719
2720 if(constant && constant[len - 1] == '.')
2721 {
2722 constant[len - 1] = (char)0;
2723 yyval.exp = MkExpMember(yyvsp[(1) - (2)].exp, yyvsp[(2) - (2)].id);
2724 yyval.exp->loc = (yyloc);
2725 }
2726 else
2727 yyerror();
2728 ;
2729 }
2730 break;
2731 case 52:
2732 {
2733 yyval.exp = MkExpPointer(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].id);
2734 yyval.exp->loc = (yyloc);
2735 ;
2736 }
2737 break;
2738 case 53:
2739 {
2740 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, INC_OP, (((void *)0)));
2741 yyval.exp->loc = (yyloc);
2742 ;
2743 }
2744 break;
2745 case 54:
2746 {
2747 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, DEC_OP, (((void *)0)));
2748 yyval.exp->loc = (yyloc);
2749 ;
2750 }
2751 break;
2752 case 55:
2753 {
2754 yyval.list = MkList();
2755 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
2756 ;
2757 }
2758 break;
2759 case 56:
2760 {
2761 yyval.list = MkList();
2762 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
2763 ;
2764 }
2765 break;
2766 case 57:
2767 {
2768 yyval.list = yyvsp[(1) - (3)].list;
2769 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
2770 ;
2771 }
2772 break;
2773 case 58:
2774 {
2775 yyval.list = yyvsp[(1) - (3)].list;
2776 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
2777 ;
2778 }
2779 break;
2780 case 59:
2781 {
2782 yyval.exp = MkExpOp((((void *)0)), INC_OP, yyvsp[(2) - (2)].exp);
2783 yyval.exp->loc = (yyloc);
2784 ;
2785 }
2786 break;
2787 case 60:
2788 {
2789 yyval.exp = MkExpOp((((void *)0)), DEC_OP, yyvsp[(2) - (2)].exp);
2790 yyval.exp->loc = (yyloc);
2791 ;
2792 }
2793 break;
2794 case 61:
2795 {
2796 yyval.exp = MkExpOp((((void *)0)), yyvsp[(1) - (2)].i, yyvsp[(2) - (2)].exp);
2797 yyval.exp->loc = (yyloc);
2798 ;
2799 }
2800 break;
2801 case 62:
2802 {
2803 yyval.exp = MkExpOp((((void *)0)), SIZEOF, yyvsp[(3) - (4)].exp);
2804 yyval.exp->loc = (yyloc);
2805 ;
2806 }
2807 break;
2808 case 63:
2809 {
2810 yyval.exp = MkExpOp((((void *)0)), SIZEOF, yyvsp[(2) - (2)].exp);
2811 yyval.exp->loc = (yyloc);
2812 ;
2813 }
2814 break;
2815 case 64:
2816 {
2817 yyval.exp = MkExpTypeSize(yyvsp[(3) - (4)].typeName);
2818 yyval.exp->loc = (yyloc);
2819 ;
2820 }
2821 break;
2822 case 65:
2823 {
2824 yyval.exp = MkExpOp((((void *)0)), ALIGNOF, yyvsp[(3) - (4)].exp);
2825 yyval.exp->loc = (yyloc);
2826 ;
2827 }
2828 break;
2829 case 66:
2830 {
2831 yyval.exp = MkExpOp((((void *)0)), ALIGNOF, yyvsp[(2) - (2)].exp);
2832 yyval.exp->loc = (yyloc);
2833 ;
2834 }
2835 break;
2836 case 67:
2837 {
2838 yyval.exp = MkExpTypeAlign(yyvsp[(3) - (4)].typeName);
2839 yyval.exp->loc = (yyloc);
2840 ;
2841 }
2842 break;
2843 case 72:
2844 {
2845 yyval.i = '&';
2846 ;
2847 }
2848 break;
2849 case 73:
2850 {
2851 yyval.i = '*';
2852 ;
2853 }
2854 break;
2855 case 74:
2856 {
2857 yyval.i = '+';
2858 ;
2859 }
2860 break;
2861 case 75:
2862 {
2863 yyval.i = '-';
2864 ;
2865 }
2866 break;
2867 case 76:
2868 {
2869 yyval.i = '~';
2870 ;
2871 }
2872 break;
2873 case 77:
2874 {
2875 yyval.i = '!';
2876 ;
2877 }
2878 break;
2879 case 78:
2880 {
2881 yyval.i = DELETE;
2882 ;
2883 }
2884 break;
2885 case 80:
2886 {
2887 yyval.exp = MkExpCast(yyvsp[(2) - (4)].typeName, yyvsp[(4) - (4)].exp);
2888 yyval.exp->loc = (yyloc);
2889 ;
2890 }
2891 break;
2892 case 82:
2893 {
2894 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '*', yyvsp[(3) - (3)].exp);
2895 yyval.exp->loc = (yyloc);
2896 ;
2897 }
2898 break;
2899 case 83:
2900 {
2901 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '/', yyvsp[(3) - (3)].exp);
2902 yyval.exp->loc = (yyloc);
2903 ;
2904 }
2905 break;
2906 case 84:
2907 {
2908 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '%', yyvsp[(3) - (3)].exp);
2909 yyval.exp->loc = (yyloc);
2910 ;
2911 }
2912 break;
2913 case 86:
2914 {
2915 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '+', yyvsp[(3) - (3)].exp);
2916 yyval.exp->loc = (yyloc);
2917 ;
2918 }
2919 break;
2920 case 87:
2921 {
2922 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '-', yyvsp[(3) - (3)].exp);
2923 yyval.exp->loc = (yyloc);
2924 ;
2925 }
2926 break;
2927 case 89:
2928 {
2929 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LEFT_OP, yyvsp[(3) - (3)].exp);
2930 yyval.exp->loc = (yyloc);
2931 ;
2932 }
2933 break;
2934 case 90:
2935 {
2936 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, RIGHT_OP, yyvsp[(3) - (3)].exp);
2937 yyval.exp->loc = (yyloc);
2938 ;
2939 }
2940 break;
2941 case 91:
2942 {
2943 yyval.exp = yyvsp[(1) - (2)].exp;
2944 skipErrors = 0x1;
2945 ;
2946 }
2947 break;
2948 case 93:
2949 {
2950 skipErrors = 0x0;
2951 yyval.exp = MkExpOp(yyvsp[(1) - (2)].exp, '<', yyvsp[(2) - (2)].exp);
2952 yyval.exp->loc = (yyloc);
2953 ;
2954 }
2955 break;
2956 case 94:
2957 {
2958 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '>', yyvsp[(3) - (3)].exp);
2959 yyval.exp->loc = (yyloc);
2960 ;
2961 }
2962 break;
2963 case 95:
2964 {
2965 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, LE_OP, yyvsp[(3) - (3)].exp);
2966 yyval.exp->loc = (yyloc);
2967 ;
2968 }
2969 break;
2970 case 96:
2971 {
2972 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, GE_OP, yyvsp[(3) - (3)].exp);
2973 yyval.exp->loc = (yyloc);
2974 ;
2975 }
2976 break;
2977 case 98:
2978 {
2979 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, EQ_OP, yyvsp[(3) - (3)].exp);
2980 yyval.exp->loc = (yyloc);
2981 ;
2982 }
2983 break;
2984 case 99:
2985 {
2986 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, NE_OP, yyvsp[(3) - (3)].exp);
2987 yyval.exp->loc = (yyloc);
2988 ;
2989 }
2990 break;
2991 case 101:
2992 {
2993 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '&', yyvsp[(3) - (3)].exp);
2994 yyval.exp->loc = (yyloc);
2995 ;
2996 }
2997 break;
2998 case 103:
2999 {
3000 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '^', yyvsp[(3) - (3)].exp);
3001 yyval.exp->loc = (yyloc);
3002 ;
3003 }
3004 break;
3005 case 105:
3006 {
3007 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, '|', yyvsp[(3) - (3)].exp);
3008 yyval.exp->loc = (yyloc);
3009 ;
3010 }
3011 break;
3012 case 107:
3013 {
3014 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, AND_OP, yyvsp[(3) - (3)].exp);
3015 yyval.exp->loc = (yyloc);
3016 ;
3017 }
3018 break;
3019 case 109:
3020 {
3021 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, OR_OP, yyvsp[(3) - (3)].exp);
3022 yyval.exp->loc = (yyloc);
3023 ;
3024 }
3025 break;
3026 case 111:
3027 {
3028 yyval.exp = MkExpCondition(yyvsp[(1) - (5)].exp, yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].exp);
3029 yyval.exp->loc = (yyloc);
3030 ;
3031 }
3032 break;
3033 case 113:
3034 {
3035 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
3036 yyval.exp->loc = (yyloc);
3037 ;
3038 }
3039 break;
3040 case 114:
3041 {
3042 yyval.exp = MkExpOp(yyvsp[(1) - (3)].exp, yyvsp[(2) - (3)].i, yyvsp[(3) - (3)].exp);
3043 yyval.exp->loc = (yyloc);
3044 ;
3045 }
3046 break;
3047 case 115:
3048 {
3049 yyval.i = '=';
3050 ;
3051 }
3052 break;
3053 case 116:
3054 {
3055 yyval.i = MUL_ASSIGN;
3056 ;
3057 }
3058 break;
3059 case 117:
3060 {
3061 yyval.i = DIV_ASSIGN;
3062 ;
3063 }
3064 break;
3065 case 118:
3066 {
3067 yyval.i = MOD_ASSIGN;
3068 ;
3069 }
3070 break;
3071 case 119:
3072 {
3073 yyval.i = ADD_ASSIGN;
3074 ;
3075 }
3076 break;
3077 case 120:
3078 {
3079 yyval.i = SUB_ASSIGN;
3080 ;
3081 }
3082 break;
3083 case 121:
3084 {
3085 yyval.i = LEFT_ASSIGN;
3086 ;
3087 }
3088 break;
3089 case 122:
3090 {
3091 yyval.i = RIGHT_ASSIGN;
3092 ;
3093 }
3094 break;
3095 case 123:
3096 {
3097 yyval.i = AND_ASSIGN;
3098 ;
3099 }
3100 break;
3101 case 124:
3102 {
3103 yyval.i = XOR_ASSIGN;
3104 ;
3105 }
3106 break;
3107 case 125:
3108 {
3109 yyval.i = OR_ASSIGN;
3110 ;
3111 }
3112 break;
3113 case 126:
3114 {
3115 yyval.list = MkList();
3116 ListAdd(yyval.list, yyvsp[(1) - (1)].exp);
3117 ;
3118 }
3119 break;
3120 case 127:
3121 {
3122 yyval.list = yyvsp[(1) - (3)].list;
3123 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
3124 ;
3125 }
3126 break;
3127 case 129:
3128 {
3129 yyval.declaration = MkDeclaration(yyvsp[(1) - (2)].list, (((void *)0)));
3130 yyval.declaration->loc = (yyloc);
3131 ;
3132 }
3133 break;
3134 case 130:
3135 {
3136 yyval.declaration = MkDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list);
3137 yyval.declaration->loc = (yyloc);
3138 ;
3139 }
3140 break;
3141 case 131:
3142 {
3143 yyval.declaration = MkDeclarationInst(yyvsp[(1) - (2)].instance);
3144 yyval.declaration->loc = (yyloc);
3145 ;
3146 }
3147 break;
3148 case 132:
3149 {
3150 yyval.declaration = MkDeclarationDefine(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].exp);
3151 yyval.declaration->loc = (yyloc);
3152 ;
3153 }
3154 break;
3155 case 133:
3156 {
3157 yyval.list = MkList();
3158 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3159 ;
3160 }
3161 break;
3162 case 134:
3163 {
3164 yyval.list = yyvsp[(1) - (2)].list;
3165 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3166 ;
3167 }
3168 break;
3169 case 135:
3170 {
3171 yyval.list = MkList();
3172 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3173 ;
3174 }
3175 break;
3176 case 136:
3177 {
3178 yyval.list = yyvsp[(1) - (2)].list;
3179 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3180 ;
3181 }
3182 break;
3183 case 137:
3184 {
3185 yyval.list = MkList();
3186 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3187 ;
3188 }
3189 break;
3190 case 138:
3191 {
3192 yyval.list = yyvsp[(1) - (2)].list;
3193 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3194 ;
3195 }
3196 break;
3197 case 139:
3198 {
3199 yyval.list = MkList();
3200 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3201 ;
3202 }
3203 break;
3204 case 140:
3205 {
3206 yyval.list = yyvsp[(1) - (2)].list;
3207 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3208 ;
3209 }
3210 break;
3211 case 141:
3212 {
3213 yyval.list = MkList();
3214 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3215 ;
3216 }
3217 break;
3218 case 142:
3219 {
3220 yyval.list = yyvsp[(1) - (2)].list;
3221 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3222 ;
3223 }
3224 break;
3225 case 143:
3226 {
3227 yyval.list = MkList();
3228 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3229 ;
3230 }
3231 break;
3232 case 144:
3233 {
3234 yyval.list = yyvsp[(1) - (2)].list;
3235 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3236 ;
3237 }
3238 break;
3239 case 145:
3240 {
3241 yyval.list = MkList();
3242 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3243 ;
3244 }
3245 break;
3246 case 146:
3247 {
3248 yyval.list = yyvsp[(1) - (2)].list;
3249 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3250 ;
3251 }
3252 break;
3253 case 147:
3254 {
3255 yyval.list = MkList();
3256 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3257 ;
3258 }
3259 break;
3260 case 148:
3261 {
3262 yyval.list = yyvsp[(1) - (2)].list;
3263 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3264 ;
3265 }
3266 break;
3267 case 149:
3268 {
3269 yyval.list = MkList();
3270 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3271 ;
3272 }
3273 break;
3274 case 150:
3275 {
3276 yyval.list = yyvsp[(1) - (2)].list;
3277 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3278 ;
3279 }
3280 break;
3281 case 151:
3282 {
3283 yyval.list = MkList();
3284 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3285 ;
3286 }
3287 break;
3288 case 152:
3289 {
3290 yyval.list = yyvsp[(1) - (2)].list;
3291 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3292 ;
3293 }
3294 break;
3295 case 153:
3296 {
3297 yyval.list = MkList();
3298 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3299 ;
3300 }
3301 break;
3302 case 154:
3303 {
3304 yyval.list = yyvsp[(1) - (2)].list;
3305 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3306 ;
3307 }
3308 break;
3309 case 155:
3310 {
3311 yyval.list = MkList();
3312 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3313 ;
3314 }
3315 break;
3316 case 156:
3317 {
3318 yyval.list = yyvsp[(1) - (2)].list;
3319 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3320 ;
3321 }
3322 break;
3323 case 157:
3324 {
3325 yyval.list = MkList();
3326 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3327 ;
3328 }
3329 break;
3330 case 158:
3331 {
3332 yyval.list = yyvsp[(1) - (2)].list;
3333 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3334 ;
3335 }
3336 break;
3337 case 159:
3338 {
3339 yyval.list = MkList();
3340 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3341 ;
3342 }
3343 break;
3344 case 160:
3345 {
3346 yyval.list = yyvsp[(1) - (2)].list;
3347 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3348 ;
3349 }
3350 break;
3351 case 161:
3352 {
3353 yyval.list = MkList();
3354 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3355 ;
3356 }
3357 break;
3358 case 162:
3359 {
3360 yyval.list = yyvsp[(1) - (2)].list;
3361 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3362 ;
3363 }
3364 break;
3365 case 163:
3366 {
3367 yyval.list = MkList();
3368 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3369 ;
3370 }
3371 break;
3372 case 164:
3373 {
3374 yyval.list = yyvsp[(1) - (2)].list;
3375 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3376 ;
3377 }
3378 break;
3379 case 165:
3380 {
3381 yyval.list = MkList();
3382 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3383 ;
3384 }
3385 break;
3386 case 166:
3387 {
3388 yyval.list = yyvsp[(1) - (2)].list;
3389 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3390 ;
3391 }
3392 break;
3393 case 167:
3394 {
3395 yyval.list = MkList();
3396 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3397 ;
3398 }
3399 break;
3400 case 168:
3401 {
3402 yyval.list = yyvsp[(1) - (2)].list;
3403 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3404 ;
3405 }
3406 break;
3407 case 169:
3408 {
3409 yyval.list = MkList();
3410 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3411 ;
3412 }
3413 break;
3414 case 170:
3415 {
3416 yyval.list = yyvsp[(1) - (2)].list;
3417 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3418 ;
3419 }
3420 break;
3421 case 171:
3422 {
3423 yyval.list = MkList();
3424 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3425 ;
3426 }
3427 break;
3428 case 172:
3429 {
3430 yyval.list = yyvsp[(1) - (2)].list;
3431 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3432 ;
3433 }
3434 break;
3435 case 173:
3436 {
3437 yyval.list = yyvsp[(1) - (1)].list;
3438 ;
3439 }
3440 break;
3441 case 174:
3442 {
3443 yyval.list = MkList();
3444 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3445 ;
3446 }
3447 break;
3448 case 175:
3449 {
3450 yyval.list = MkList();
3451 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3452 ;
3453 }
3454 break;
3455 case 176:
3456 {
3457 yyval.list = yyvsp[(1) - (2)].list;
3458 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3459 ;
3460 }
3461 break;
3462 case 177:
3463 {
3464 yyval.list = MkList();
3465 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3466 ;
3467 }
3468 break;
3469 case 178:
3470 {
3471 yyval.list = yyvsp[(1) - (2)].list;
3472 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3473 ;
3474 }
3475 break;
3476 case 179:
3477 {
3478 yyval.list = MkList();
3479 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3480 ;
3481 }
3482 break;
3483 case 180:
3484 {
3485 yyval.list = yyvsp[(1) - (2)].list;
3486 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3487 ;
3488 }
3489 break;
3490 case 181:
3491 {
3492 yyval.list = MkList();
3493 ListAdd(yyval.list, MkSpecifierName(yyvsp[(1) - (1)].id->string));
3494 FreeIdentifier(yyvsp[(1) - (1)].id);
3495 ;
3496 }
3497 break;
3498 case 182:
3499 {
3500 ListAdd(yyvsp[(1) - (2)].list, MkSpecifierName(yyvsp[(2) - (2)].id->string));
3501 FreeIdentifier(yyvsp[(2) - (2)].id);
3502 ;
3503 }
3504 break;
3505 case 183:
3506 {
3507 if(yyvsp[(1) - (4)].id->_class)
3508 {
3509 char name[1024];
3510
3511 strcpy(name, yyvsp[(1) - (4)].id->_class->name ? yyvsp[(1) - (4)].id->_class->name : "");
3512 strcat(name, "::");
3513 strcat(name, yyvsp[(1) - (4)].id->string);
3514 _DeclClass(0, name);
3515 }
3516 else
3517 _DeclClass(0, yyvsp[(1) - (4)].id->string);
3518 yyval.list = MkList();
3519 ListAdd(yyval.list, MkSpecifierNameArgs(yyvsp[(1) - (4)].id->string, yyvsp[(3) - (4)].list));
3520 FreeIdentifier(yyvsp[(1) - (4)].id);
3521 ;
3522 }
3523 break;
3524 case 184:
3525 {
3526 if(yyvsp[(2) - (5)].id->_class && !yyvsp[(2) - (5)].id->_class->name)
3527 {
3528 char name[1024];
3529
3530 strcpy(name, "::");
3531 strcat(name, yyvsp[(2) - (5)].id->string);
3532 _DeclClass(0, name);
3533 }
3534 else
3535 _DeclClass(0, yyvsp[(2) - (5)].id->string);
3536 ListAdd(yyvsp[(1) - (5)].list, MkSpecifierNameArgs(yyvsp[(2) - (5)].id->string, yyvsp[(4) - (5)].list));
3537 FreeIdentifier(yyvsp[(2) - (5)].id);
3538 ;
3539 }
3540 break;
3541 case 185:
3542 {
3543 yyval.list = MkList();
3544 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3545 ;
3546 }
3547 break;
3548 case 186:
3549 {
3550 yyval.list = yyvsp[(1) - (2)].list;
3551 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3552 ;
3553 }
3554 break;
3555 case 187:
3556 {
3557 yyval.list = MkList();
3558 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3559 ;
3560 }
3561 break;
3562 case 188:
3563 {
3564 yyval.list = yyvsp[(1) - (2)].list;
3565 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3566 ;
3567 }
3568 break;
3569 case 189:
3570 {
3571 yyval.list = MkList();
3572 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3573 ;
3574 }
3575 break;
3576 case 190:
3577 {
3578 yyval.list = yyvsp[(1) - (2)].list;
3579 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3580 ;
3581 }
3582 break;
3583 case 191:
3584 {
3585 yyval.list = MkList();
3586 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3587 ;
3588 }
3589 break;
3590 case 192:
3591 {
3592 yyval.list = yyvsp[(1) - (2)].list;
3593 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3594 ;
3595 }
3596 break;
3597 case 193:
3598 {
3599 yyval.list = MkList();
3600 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
3601 ;
3602 }
3603 break;
3604 case 194:
3605 {
3606 yyval.list = yyvsp[(1) - (2)].list;
3607 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
3608 ;
3609 }
3610 break;
3611 case 195:
3612 {
3613 yyval.list = MkList();
3614 ListAdd(yyval.list, MkSpecifierName(yyvsp[(1) - (1)].id->string));
3615 FreeIdentifier(yyvsp[(1) - (1)].id);
3616 ;
3617 }
3618 break;
3619 case 196:
3620 {
3621 yyval.list = yyvsp[(1) - (2)].list;
3622 ListAdd(yyvsp[(1) - (2)].list, MkSpecifierName(yyvsp[(2) - (2)].id->string));
3623 FreeIdentifier(yyvsp[(2) - (2)].id);
3624 }
3625 break;
3626 case 197:
3627 {
3628 if(yyvsp[(1) - (4)].id->_class)
3629 {
3630 char name[1024];
3631
3632 strcpy(name, yyvsp[(1) - (4)].id->_class->name ? yyvsp[(1) - (4)].id->_class->name : "");
3633 strcat(name, "::");
3634 strcat(name, yyvsp[(1) - (4)].id->string);
3635 _DeclClass(0, name);
3636 }
3637 else
3638 _DeclClass(0, yyvsp[(1) - (4)].id->string);
3639 yyval.list = MkList();
3640 ListAdd(yyval.list, MkSpecifierNameArgs(yyvsp[(1) - (4)].id->string, yyvsp[(3) - (4)].list));
3641 FreeIdentifier(yyvsp[(1) - (4)].id);
3642 ;
3643 }
3644 break;
3645 case 198:
3646 {
3647 if(yyvsp[(2) - (5)].id->_class && !yyvsp[(2) - (5)].id->_class->name)
3648 {
3649 char name[1024];
3650
3651 strcpy(name, "::");
3652 strcat(name, yyvsp[(2) - (5)].id->string);
3653 _DeclClass(0, name);
3654 }
3655 else
3656 _DeclClass(0, yyvsp[(2) - (5)].id->string);
3657 ListAdd(yyvsp[(1) - (5)].list, MkSpecifierNameArgs(yyvsp[(2) - (5)].id->string, yyvsp[(4) - (5)].list));
3658 FreeIdentifier(yyvsp[(2) - (5)].id);
3659 ;
3660 }
3661 break;
3662 case 199:
3663 {
3664 yyval.list = MkList();
3665 ListAdd(yyval.list, yyvsp[(1) - (1)].initDeclarator);
3666 ;
3667 }
3668 break;
3669 case 200:
3670 {
3671 yyval.list = yyvsp[(1) - (3)].list;
3672 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initDeclarator);
3673 ;
3674 }
3675 break;
3676 case 201:
3677 {
3678 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
3679 yyval.initDeclarator->loc = (yyloc);
3680 ;
3681 }
3682 break;
3683 case 202:
3684 {
3685 yyval.initDeclarator = MkInitDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].initializer);
3686 yyval.initDeclarator->loc = (yyloc);
3687 yyval.initDeclarator->initializer->loc.start = (yylsp[(2) - (3)]).end;
3688 ;
3689 }
3690 break;
3691 case 203:
3692 {
3693 yyval.specifier = MkSpecifier(TYPEDEF);
3694 ;
3695 }
3696 break;
3697 case 204:
3698 {
3699 yyval.specifier = MkSpecifier(EXTERN);
3700 ;
3701 }
3702 break;
3703 case 205:
3704 {
3705 yyval.specifier = MkSpecifier(STATIC);
3706 ;
3707 }
3708 break;
3709 case 206:
3710 {
3711 yyval.specifier = MkSpecifier(AUTO);
3712 ;
3713 }
3714 break;
3715 case 207:
3716 {
3717 yyval.specifier = MkSpecifier(REGISTER);
3718 ;
3719 }
3720 break;
3721 case 208:
3722 {
3723 yyval.specifier = MkSpecifier(THREAD);
3724 ;
3725 }
3726 break;
3727 case 209:
3728 {
3729 yyval.extDecl = MkExtDeclString(__ecereFunction___ecereNameSpace__ecere__sys__CopyString(yytext));
3730 ;
3731 }
3732 break;
3733 case 210:
3734 {
3735 yyval.extDecl = MkExtDeclString(__ecereFunction___ecereNameSpace__ecere__sys__CopyString(yytext));
3736 ;
3737 }
3738 break;
3739 case 211:
3740 {
3741 yyval.extDecl = MkExtDeclAttrib(yyvsp[(1) - (1)].attrib);
3742 ;
3743 }
3744 break;
3745 case 212:
3746 {
3747 yyval.i = ATTRIB;
3748 ;
3749 }
3750 break;
3751 case 213:
3752 {
3753 yyval.i = ATTRIB_DEP;
3754 ;
3755 }
3756 break;
3757 case 214:
3758 {
3759 yyval.i = __ATTRIB;
3760 ;
3761 }
3762 break;
3763 case 215:
3764 {
3765 yyval.string = __ecereFunction___ecereNameSpace__ecere__sys__CopyString(yytext);
3766 ;
3767 }
3768 break;
3769 case 216:
3770 {
3771 yyval.string = __ecereFunction___ecereNameSpace__ecere__sys__CopyString(yytext);
3772 ;
3773 }
3774 break;
3775 case 217:
3776 {
3777 yyval.string = __ecereFunction___ecereNameSpace__ecere__sys__CopyString(yytext);
3778 ;
3779 }
3780 break;
3781 case 218:
3782 {
3783 yyval.string = __ecereFunction___ecereNameSpace__ecere__sys__CopyString(yytext);
3784 ;
3785 }
3786 break;
3787 case 219:
3788 {
3789 yyval.string = __ecereFunction___ecereNameSpace__ecere__sys__CopyString(yytext);
3790 ;
3791 }
3792 break;
3793 case 220:
3794 {
3795 yyval.attribute = MkAttribute(yyvsp[(1) - (1)].string, (((void *)0)));
3796 yyval.attribute->loc = (yyloc);
3797 ;
3798 }
3799 break;
3800 case 221:
3801 {
3802 yyval.attribute = MkAttribute(yyvsp[(1) - (4)].string, MkExpBrackets(yyvsp[(3) - (4)].list));
3803 yyval.attribute->loc = (yyloc);
3804 ;
3805 }
3806 break;
3807 case 222:
3808 {
3809 yyval.list = MkListOne(yyvsp[(1) - (1)].attribute);
3810 ;
3811 }
3812 break;
3813 case 223:
3814 {
3815 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].attribute);
3816 yyval.list = yyvsp[(1) - (2)].list;
3817 ;
3818 }
3819 break;
3820 case 224:
3821 {
3822 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].attribute);
3823 yyval.list = yyvsp[(1) - (3)].list;
3824 ;
3825 }
3826 break;
3827 case 225:
3828 {
3829 yyval.attrib = MkAttrib(yyvsp[(1) - (6)].i, yyvsp[(4) - (6)].list);
3830 yyval.attrib->loc = (yyloc);
3831 ;
3832 }
3833 break;
3834 case 226:
3835 {
3836 yyval.attrib = MkAttrib(yyvsp[(1) - (5)].i, (((void *)0)));
3837 yyval.attrib->loc = (yyloc);
3838 ;
3839 }
3840 break;
3841 case 227:
3842 {
3843 yyval.specifier = MkSpecifierExtended(yyvsp[(1) - (1)].extDecl);
3844 ;
3845 }
3846 break;
3847 case 228:
3848 {
3849 yyval.specifier = MkSpecifier(CONST);
3850 ;
3851 }
3852 break;
3853 case 229:
3854 {
3855 yyval.specifier = MkSpecifier(VOLATILE);
3856 ;
3857 }
3858 break;
3859 case 230:
3860 {
3861 yyval.specifier = yyvsp[(1) - (1)].specifier;
3862 ;
3863 }
3864 break;
3865 case 231:
3866 {
3867 yyval.specifier = MkSpecifier(VOID);
3868 ;
3869 }
3870 break;
3871 case 232:
3872 {
3873 yyval.specifier = MkSpecifier(CHAR);
3874 ;
3875 }
3876 break;
3877 case 233:
3878 {
3879 yyval.specifier = MkSpecifier(SHORT);
3880 ;
3881 }
3882 break;
3883 case 234:
3884 {
3885 yyval.specifier = MkSpecifier(INT);
3886 ;
3887 }
3888 break;
3889 case 235:
3890 {
3891 yyval.specifier = MkSpecifier(UINT);
3892 ;
3893 }
3894 break;
3895 case 236:
3896 {
3897 yyval.specifier = MkSpecifier(INT64);
3898 ;
3899 }
3900 break;
3901 case 237:
3902 {
3903 yyval.specifier = MkSpecifier(VALIST);
3904 ;
3905 }
3906 break;
3907 case 238:
3908 {
3909 yyval.specifier = MkSpecifier(LONG);
3910 ;
3911 }
3912 break;
3913 case 239:
3914 {
3915 yyval.specifier = MkSpecifier(FLOAT);
3916 ;
3917 }
3918 break;
3919 case 240:
3920 {
3921 yyval.specifier = MkSpecifier(DOUBLE);
3922 ;
3923 }
3924 break;
3925 case 241:
3926 {
3927 yyval.specifier = MkSpecifier(SIGNED);
3928 ;
3929 }
3930 break;
3931 case 242:
3932 {
3933 yyval.specifier = MkSpecifier(UNSIGNED);
3934 ;
3935 }
3936 break;
3937 case 243:
3938 {
3939 yyval.specifier = MkSpecifier(EXTENSION);
3940 ;
3941 }
3942 break;
3943 case 244:
3944 {
3945 yyval.specifier = MkSpecifier(_BOOL);
3946 ;
3947 }
3948 break;
3949 case 245:
3950 {
3951 yyval.specifier = MkSpecifier(BOOL);
3952 ;
3953 }
3954 break;
3955 case 249:
3956 {
3957 yyval.specifier = MkSpecifierTypeOf(yyvsp[(3) - (4)].exp);
3958 ;
3959 }
3960 break;
3961 case 250:
3962 {
3963 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
3964 ;
3965 }
3966 break;
3967 case 251:
3968 {
3969 _DeclClass(0, yyvsp[(3) - (4)].id->string);
3970 yyval.specifier = MkSpecifierSubClass(MkSpecifierName(yyvsp[(3) - (4)].id->string));
3971 FreeIdentifier(yyvsp[(3) - (4)].id);
3972 ;
3973 }
3974 break;
3975 case 252:
3976 {
3977 yyval.specifier = MkSpecifier(THISCLASS);
3978 ;
3979 }
3980 break;
3981 case 253:
3982 {
3983 yyval.specifier = MkSpecifier(TYPED_OBJECT);
3984 ;
3985 }
3986 break;
3987 case 254:
3988 {
3989 yyval.specifier = MkSpecifier(ANY_OBJECT);
3990 ;
3991 }
3992 break;
3993 case 255:
3994 {
3995 yyval.specifier = MkSpecifier(VOID);
3996 ;
3997 }
3998 break;
3999 case 256:
4000 {
4001 yyval.specifier = MkSpecifier(CHAR);
4002 ;
4003 }
4004 break;
4005 case 257:
4006 {
4007 yyval.specifier = MkSpecifier(SHORT);
4008 ;
4009 }
4010 break;
4011 case 258:
4012 {
4013 yyval.specifier = MkSpecifier(INT);
4014 ;
4015 }
4016 break;
4017 case 259:
4018 {
4019 yyval.specifier = MkSpecifier(UINT);
4020 ;
4021 }
4022 break;
4023 case 260:
4024 {
4025 yyval.specifier = MkSpecifier(INT64);
4026 ;
4027 }
4028 break;
4029 case 261:
4030 {
4031 yyval.specifier = MkSpecifier(VALIST);
4032 ;
4033 }
4034 break;
4035 case 262:
4036 {
4037 yyval.specifier = MkSpecifier(LONG);
4038 ;
4039 }
4040 break;
4041 case 263:
4042 {
4043 yyval.specifier = MkSpecifier(FLOAT);
4044 ;
4045 }
4046 break;
4047 case 264:
4048 {
4049 yyval.specifier = MkSpecifier(DOUBLE);
4050 ;
4051 }
4052 break;
4053 case 265:
4054 {
4055 yyval.specifier = MkSpecifier(SIGNED);
4056 ;
4057 }
4058 break;
4059 case 266:
4060 {
4061 yyval.specifier = MkSpecifier(UNSIGNED);
4062 ;
4063 }
4064 break;
4065 case 267:
4066 {
4067 yyval.specifier = MkSpecifier(EXTENSION);
4068 ;
4069 }
4070 break;
4071 case 268:
4072 {
4073 yyval.specifier = MkSpecifier(_BOOL);
4074 ;
4075 }
4076 break;
4077 case 269:
4078 {
4079 yyval.specifier = MkSpecifier(BOOL);
4080 ;
4081 }
4082 break;
4083 case 273:
4084 {
4085 yyval.specifier = MkSpecifierTypeOf(yyvsp[(3) - (4)].exp);
4086 ;
4087 }
4088 break;
4089 case 274:
4090 {
4091 yyval.specifier = MkSpecifierSubClass(yyvsp[(3) - (4)].specifier);
4092 ;
4093 }
4094 break;
4095 case 275:
4096 {
4097 _DeclClass(0, yyvsp[(3) - (4)].id->string);
4098 yyval.specifier = MkSpecifierSubClass(MkSpecifierName(yyvsp[(3) - (4)].id->string));
4099 FreeIdentifier(yyvsp[(3) - (4)].id);
4100 ;
4101 }
4102 break;
4103 case 276:
4104 {
4105 yyval.specifier = MkSpecifier(THISCLASS);
4106 ;
4107 }
4108 break;
4109 case 277:
4110 {
4111 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
4112 if(declMode)
4113 DeclClass(globalContext->nextID++, yyvsp[(2) - (5)].id->string);
4114 ;
4115 }
4116 break;
4117 case 278:
4118 {
4119 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), yyvsp[(3) - (4)].list);
4120 ;
4121 }
4122 break;
4123 case 279:
4124 {
4125 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, yyvsp[(2) - (4)].id, (((void *)0)));
4126 if(declMode)
4127 DeclClass(globalContext->nextID++, yyvsp[(2) - (4)].id->string);
4128 ;
4129 }
4130 break;
4131 case 280:
4132 {
4133 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, (((void *)0)), (((void *)0)));
4134 ;
4135 }
4136 break;
4137 case 281:
4138 {
4139 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, MkIdentifier(yyvsp[(2) - (5)].specifier->name), yyvsp[(4) - (5)].list);
4140 if(declMode)
4141 DeclClass(globalContext->nextID++, yyvsp[(2) - (5)].specifier->name);
4142 FreeSpecifier(yyvsp[(2) - (5)].specifier);
4143 ;
4144 }
4145 break;
4146 case 282:
4147 {
4148 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, yyvsp[(3) - (6)].id, yyvsp[(5) - (6)].list);
4149 yyval.specifier->extDeclStruct = yyvsp[(2) - (6)].extDecl;
4150 if(declMode)
4151 DeclClass(globalContext->nextID++, yyvsp[(3) - (6)].id->string);
4152 ;
4153 }
4154 break;
4155 case 283:
4156 {
4157 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, (((void *)0)), yyvsp[(4) - (5)].list);
4158 yyval.specifier->extDeclStruct = yyvsp[(2) - (5)].extDecl;
4159 ;
4160 }
4161 break;
4162 case 284:
4163 {
4164 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (5)].specifierType, yyvsp[(3) - (5)].id, (((void *)0)));
4165 yyval.specifier->extDeclStruct = yyvsp[(2) - (5)].extDecl;
4166 if(declMode)
4167 DeclClass(globalContext->nextID++, yyvsp[(3) - (5)].id->string);
4168 ;
4169 }
4170 break;
4171 case 285:
4172 {
4173 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (4)].specifierType, (((void *)0)), (((void *)0)));
4174 yyval.specifier->extDeclStruct = yyvsp[(2) - (4)].extDecl;
4175 ;
4176 }
4177 break;
4178 case 286:
4179 {
4180 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (6)].specifierType, MkIdentifier(yyvsp[(3) - (6)].specifier->name), yyvsp[(5) - (6)].list);
4181 yyval.specifier->extDeclStruct = yyvsp[(2) - (6)].extDecl;
4182 if(declMode)
4183 DeclClass(globalContext->nextID++, yyvsp[(3) - (6)].specifier->name);
4184 FreeSpecifier(yyvsp[(3) - (6)].specifier);
4185 ;
4186 }
4187 break;
4188 case 287:
4189 {
4190 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, yyvsp[(2) - (2)].id, (((void *)0)));
4191 if(declMode)
4192 DeclClass(0, yyvsp[(2) - (2)].id->string);
4193 ;
4194 }
4195 break;
4196 case 288:
4197 {
4198 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (2)].specifierType, MkIdentifier(yyvsp[(2) - (2)].specifier->name), (((void *)0)));
4199 if(declMode)
4200 DeclClass(0, yyvsp[(2) - (2)].specifier->name);
4201 FreeSpecifier(yyvsp[(2) - (2)].specifier);
4202 ;
4203 }
4204 break;
4205 case 289:
4206 {
4207 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, yyvsp[(3) - (3)].id, (((void *)0)));
4208 yyval.specifier->extDeclStruct = yyvsp[(2) - (3)].extDecl;
4209 if(declMode)
4210 DeclClass(0, yyvsp[(3) - (3)].id->string);
4211 ;
4212 }
4213 break;
4214 case 290:
4215 {
4216 yyval.specifier = MkStructOrUnion(yyvsp[(1) - (3)].specifierType, MkIdentifier(yyvsp[(3) - (3)].specifier->name), (((void *)0)));
4217 yyval.specifier->extDeclStruct = yyvsp[(2) - (3)].extDecl;
4218 if(declMode)
4219 DeclClass(0, yyvsp[(3) - (3)].specifier->name);
4220 FreeSpecifier(yyvsp[(3) - (3)].specifier);
4221 ;
4222 }
4223 break;
4224 case 291:
4225 {
4226 yyval.templateDatatype = MkTemplateDatatype(yyvsp[(1) - (1)].list, (((void *)0)));
4227 ;
4228 }
4229 break;
4230 case 292:
4231 {
4232 yyval.templateDatatype = MkTemplateDatatype(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
4233 ;
4234 }
4235 break;
4236 case 293:
4237 {
4238 yyval.templateArgument = MkTemplateTypeArgument(MkTemplateDatatype(yyvsp[(1) - (1)].list, (((void *)0))));
4239 ;
4240 }
4241 break;
4242 case 294:
4243 {
4244 yyval.templateArgument = MkTemplateTypeArgument(MkTemplateDatatype(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator));
4245 ;
4246 }
4247 break;
4248 case 295:
4249 {
4250 yyval.templateArgument = MkTemplateExpressionArgument(yyvsp[(1) - (1)].exp);
4251 ;
4252 }
4253 break;
4254 case 298:
4255 {
4256 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4257 yyval.templateArgument->name = yyvsp[(1) - (3)].id;
4258 yyval.templateArgument->loc = (yyloc);
4259 ;
4260 }
4261 break;
4262 case 299:
4263 {
4264 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4265 yyval.templateArgument->name = yyvsp[(1) - (3)].id;
4266 yyval.templateArgument->loc = (yyloc);
4267 ;
4268 }
4269 break;
4270 case 300:
4271 {
4272 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4273 if(yyvsp[(1) - (3)].templateDatatype->specifiers && (*yyvsp[(1) - (3)].templateDatatype->specifiers).first)
4274 {
4275 struct Specifier * spec = (*yyvsp[(1) - (3)].templateDatatype->specifiers).first;
4276
4277 if(spec->type == 1)
4278 yyval.templateArgument->name = MkIdentifier(spec->name);
4279 }
4280 FreeTemplateDataType(yyvsp[(1) - (3)].templateDatatype);
4281 yyval.templateArgument->loc = (yyloc);
4282 ;
4283 }
4284 break;
4285 case 301:
4286 {
4287 yyval.templateArgument = yyvsp[(3) - (3)].templateArgument;
4288 if(yyvsp[(1) - (3)].templateDatatype->specifiers && (*yyvsp[(1) - (3)].templateDatatype->specifiers).first)
4289 {
4290 struct Specifier * spec = (*yyvsp[(1) - (3)].templateDatatype->specifiers).first;
4291
4292 if(spec->type == 1)
4293 yyval.templateArgument->name = MkIdentifier(spec->name);
4294 }
4295 FreeTemplateDataType(yyvsp[(1) - (3)].templateDatatype);
4296 yyval.templateArgument->loc = (yyloc);
4297 ;
4298 }
4299 break;
4300 case 302:
4301 {
4302 yyval.list = MkList();
4303 ListAdd(yyval.list, yyvsp[(1) - (1)].templateArgument);
4304 ;
4305 }
4306 break;
4307 case 303:
4308 {
4309 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].templateArgument);
4310 ;
4311 }
4312 break;
4313 case 304:
4314 {
4315 yyval.specifierType = 3;
4316 ;
4317 }
4318 break;
4319 case 305:
4320 {
4321 yyval.specifierType = 4;
4322 ;
4323 }
4324 break;
4325 case 306:
4326 {
4327 yyval.list = MkList();
4328 ListAdd(yyval.list, yyvsp[(1) - (1)].classDef);
4329 ;
4330 }
4331 break;
4332 case 307:
4333 {
4334 yyval.list = yyvsp[(1) - (2)].list;
4335 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].classDef);
4336 ;
4337 }
4338 break;
4339 case 308:
4340 {
4341 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
4342 yyval.memberInit->loc = (yyloc);
4343 yyval.memberInit->realLoc = (yyloc);
4344 ;
4345 }
4346 break;
4347 case 309:
4348 {
4349 yyval.list = MkList();
4350 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
4351 ((struct MemberInit *)(*yyval.list).last)->loc = (yyloc);
4352 ;
4353 }
4354 break;
4355 case 310:
4356 {
4357 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
4358 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
4359 yyval.list = yyvsp[(1) - (3)].list;
4360 ;
4361 }
4362 break;
4363 case 311:
4364 {
4365 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
4366 yyval.prop->loc = (yyloc);
4367 ;
4368 }
4369 break;
4370 case 312:
4371 {
4372 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, (((void *)0)), yyvsp[(3) - (9)].id, yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
4373 yyval.prop->loc = (yyloc);
4374 ;
4375 }
4376 break;
4377 case 313:
4378 {
4379 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, yyvsp[(6) - (7)].stmt, (((void *)0)));
4380 yyval.prop->loc = (yyloc);
4381 ;
4382 }
4383 break;
4384 case 314:
4385 {
4386 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, (((void *)0)), yyvsp[(3) - (7)].id, (((void *)0)), yyvsp[(6) - (7)].stmt);
4387 yyval.prop->loc = (yyloc);
4388 ;
4389 }
4390 break;
4391 case 315:
4392 {
4393 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, (((void *)0)), yyvsp[(3) - (5)].id, (((void *)0)), (((void *)0)));
4394 yyval.prop->loc = (yyloc);
4395 ;
4396 }
4397 break;
4398 case 316:
4399 {
4400 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(7) - (10)].stmt, yyvsp[(9) - (10)].stmt);
4401 yyval.prop->loc = (yyloc);
4402 ;
4403 }
4404 break;
4405 case 317:
4406 {
4407 yyval.prop = MkProperty(yyvsp[(2) - (10)].list, yyvsp[(3) - (10)].declarator, yyvsp[(4) - (10)].id, yyvsp[(9) - (10)].stmt, yyvsp[(7) - (10)].stmt);
4408 yyval.prop->loc = (yyloc);
4409 ;
4410 }
4411 break;
4412 case 318:
4413 {
4414 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, yyvsp[(7) - (8)].stmt, (((void *)0)));
4415 yyval.prop->loc = (yyloc);
4416 ;
4417 }
4418 break;
4419 case 319:
4420 {
4421 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, yyvsp[(3) - (8)].declarator, yyvsp[(4) - (8)].id, (((void *)0)), yyvsp[(7) - (8)].stmt);
4422 yyval.prop->loc = (yyloc);
4423 ;
4424 }
4425 break;
4426 case 320:
4427 {
4428 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, yyvsp[(3) - (6)].declarator, yyvsp[(4) - (6)].id, (((void *)0)), (((void *)0)));
4429 yyval.prop->loc = (yyloc);
4430 ;
4431 }
4432 break;
4433 case 321:
4434 {
4435 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (8)].stmt, yyvsp[(7) - (8)].stmt);
4436 yyval.prop->loc = (yyloc);
4437 ;
4438 }
4439 break;
4440 case 322:
4441 {
4442 yyval.prop = MkProperty(yyvsp[(2) - (8)].list, (((void *)0)), (((void *)0)), yyvsp[(7) - (8)].stmt, yyvsp[(5) - (8)].stmt);
4443 yyval.prop->loc = (yyloc);
4444 ;
4445 }
4446 break;
4447 case 323:
4448 {
4449 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt, (((void *)0)));
4450 yyval.prop->loc = (yyloc);
4451 ;
4452 }
4453 break;
4454 case 324:
4455 {
4456 yyval.prop = MkProperty(yyvsp[(2) - (6)].list, (((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(5) - (6)].stmt);
4457 yyval.prop->loc = (yyloc);
4458 ;
4459 }
4460 break;
4461 case 325:
4462 {
4463 yyval.prop = MkProperty(yyvsp[(2) - (4)].list, (((void *)0)), (((void *)0)), (((void *)0)), (((void *)0)));
4464 yyval.prop->loc = (yyloc);
4465 ;
4466 }
4467 break;
4468 case 326:
4469 {
4470 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(6) - (9)].stmt, yyvsp[(8) - (9)].stmt);
4471 yyval.prop->loc = (yyloc);
4472 ;
4473 }
4474 break;
4475 case 327:
4476 {
4477 yyval.prop = MkProperty(yyvsp[(2) - (9)].list, yyvsp[(3) - (9)].declarator, (((void *)0)), yyvsp[(8) - (9)].stmt, yyvsp[(6) - (9)].stmt);
4478 yyval.prop->loc = (yyloc);
4479 ;
4480 }
4481 break;
4482 case 328:
4483 {
4484 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), yyvsp[(6) - (7)].stmt, (((void *)0)));
4485 yyval.prop->loc = (yyloc);
4486 ;
4487 }
4488 break;
4489 case 329:
4490 {
4491 yyval.prop = MkProperty(yyvsp[(2) - (7)].list, yyvsp[(3) - (7)].declarator, (((void *)0)), (((void *)0)), yyvsp[(6) - (7)].stmt);
4492 yyval.prop->loc = (yyloc);
4493 ;
4494 }
4495 break;
4496 case 330:
4497 {
4498 yyval.prop = MkProperty(yyvsp[(2) - (5)].list, yyvsp[(3) - (5)].declarator, (((void *)0)), (((void *)0)), (((void *)0)));
4499 yyval.prop->loc = (yyloc);
4500 ;
4501 }
4502 break;
4503 case 331:
4504 {
4505 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (3)].list, yyvsp[(2) - (3)].list, (((void *)0))));
4506 yyval.classDef->decl->loc = (yyloc);
4507 yyval.classDef->loc = (yyloc);
4508 ;
4509 }
4510 break;
4511 case 332:
4512 {
4513 yyval.classDef = MkClassDefDeclaration(MkStructDeclaration(yyvsp[(1) - (2)].list, (((void *)0)), (((void *)0))));
4514 yyval.classDef->decl->loc = (yyloc);
4515 yyval.classDef->loc = (yyloc);
4516 ;
4517 }
4518 break;
4519 case 333:
4520 {
4521 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
4522 yyval.classDef->loc = (yyloc);
4523 yyval.classDef->decl->loc = (yyloc);
4524 ;
4525 }
4526 break;
4527 case 334:
4528 {
4529 yyval.classDef = MkClassDefDeclaration(MkDeclarationClassInst(yyvsp[(1) - (2)].instance));
4530 yyval.classDef->loc = (yyloc);
4531 yyval.classDef->decl->loc = (yyloc);
4532 ;
4533 }
4534 break;
4535 case 335:
4536 {
4537 yyval.classDef = MkClassDefFunction(yyvsp[(1) - (1)].classFunction);
4538 yyval.classDef->loc = (yyloc);
4539 ;
4540 }
4541 break;
4542 case 336:
4543 {
4544 yyval.classDef = MkClassDefDefaultProperty(yyvsp[(1) - (2)].list);
4545 if((*yyvsp[(1) - (2)].list).last)
4546 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).start;
4547 yyval.classDef->loc = (yyloc);
4548 ;
4549 }
4550 break;
4551 case 337:
4552 {
4553 yyval.classDef = MkClassDefProperty(yyvsp[(1) - (1)].prop);
4554 yyval.classDef->loc = (yyloc);
4555 globalContext->nextID++;
4556 ;
4557 }
4558 break;
4559 case 338:
4560 {
4561 yyval.classDef = (((void *)0));
4562 ;
4563 }
4564 break;
4565 case 339:
4566 {
4567 yyval.list = MkList();
4568 ListAdd(yyval.list, yyvsp[(1) - (1)].declarator);
4569 ;
4570 }
4571 break;
4572 case 340:
4573 {
4574 yyval.list = yyvsp[(1) - (3)].list;
4575 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].declarator);
4576 ;
4577 }
4578 break;
4579 case 341:
4580 {
4581 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (1)].declarator, (((void *)0)));
4582 yyval.declarator->loc = (yyloc);
4583 ;
4584 }
4585 break;
4586 case 342:
4587 {
4588 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (2)].declarator, (((void *)0)));
4589 yyval.declarator->structDecl.attrib = yyvsp[(2) - (2)].attrib;
4590 yyval.declarator->loc = (yyloc);
4591 ;
4592 }
4593 break;
4594 case 343:
4595 {
4596 yyval.declarator = MkStructDeclarator((((void *)0)), yyvsp[(2) - (2)].exp);
4597 yyval.declarator->loc = (yyloc);
4598 ;
4599 }
4600 break;
4601 case 344:
4602 {
4603 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (3)].declarator, yyvsp[(3) - (3)].exp);
4604 yyval.declarator->loc = (yyloc);
4605 ;
4606 }
4607 break;
4608 case 345:
4609 {
4610 yyval.declarator = MkStructDeclarator(yyvsp[(1) - (5)].declarator, yyvsp[(3) - (5)].exp);
4611 yyval.declarator->structDecl.posExp = yyvsp[(5) - (5)].exp;
4612 yyval.declarator->loc = (yyloc);
4613 ;
4614 }
4615 break;
4616 case 346:
4617 {
4618 yyval.specifier = MkEnum(yyvsp[(2) - (2)].id, (((void *)0)));
4619 if(declMode)
4620 DeclClass(0, yyvsp[(2) - (2)].id->string);
4621 ;
4622 }
4623 break;
4624 case 347:
4625 {
4626 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (2)].specifier->name), (((void *)0)));
4627 if(declMode)
4628 DeclClass(0, yyvsp[(2) - (2)].specifier->name);
4629 FreeSpecifier(yyvsp[(2) - (2)].specifier);
4630 ;
4631 }
4632 break;
4633 case 348:
4634 {
4635 yyval.specifier = MkEnum((((void *)0)), yyvsp[(3) - (4)].list);
4636 ;
4637 }
4638 break;
4639 case 349:
4640 {
4641 yyval.specifier = MkEnum(yyvsp[(2) - (5)].id, yyvsp[(4) - (5)].list);
4642 if(declMode)
4643 DeclClass(globalContext->nextID++, yyvsp[(2) - (5)].id->string);
4644 ;
4645 }
4646 break;
4647 case 350:
4648 {
4649 yyval.specifier = MkEnum(yyvsp[(2) - (7)].id, yyvsp[(4) - (7)].list);
4650 yyval.specifier->definitions = yyvsp[(6) - (7)].list;
4651 if(declMode)
4652 DeclClass(globalContext->nextID++, yyvsp[(2) - (7)].id->string);
4653 ;
4654 }
4655 break;
4656 case 351:
4657 {
4658 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (7)].specifier->name), yyvsp[(4) - (7)].list);
4659 yyval.specifier->definitions = yyvsp[(6) - (7)].list;
4660 if(declMode)
4661 DeclClass(globalContext->nextID++, yyvsp[(2) - (7)].specifier->name);
4662 FreeSpecifier(yyvsp[(2) - (7)].specifier);
4663 ;
4664 }
4665 break;
4666 case 352:
4667 {
4668 yyval.specifier = MkEnum(MkIdentifier(yyvsp[(2) - (5)].specifier->name), yyvsp[(4) - (5)].list);
4669 if(declMode)
4670 DeclClass(globalContext->nextID++, yyvsp[(2) - (5)].specifier->name);
4671 FreeSpecifier(yyvsp[(2) - (5)].specifier);
4672 ;
4673 }
4674 break;
4675 case 353:
4676 {
4677 yyval.list = MkList();
4678 ListAdd(yyval.list, yyvsp[(1) - (1)].enumerator);
4679 ;
4680 }
4681 break;
4682 case 354:
4683 {
4684 yyval.list = yyvsp[(1) - (3)].list;
4685 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].enumerator);
4686 ;
4687 }
4688 break;
4689 case 355:
4690 {
4691 yyval.enumerator = MkEnumerator(yyvsp[(1) - (1)].id, (((void *)0)));
4692 ;
4693 }
4694 break;
4695 case 356:
4696 {
4697 yyval.enumerator = MkEnumerator(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].exp);
4698 ;
4699 }
4700 break;
4701 case 357:
4702 {
4703 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4704 ;
4705 }
4706 break;
4707 case 358:
4708 {
4709 yyval.declarator = MkDeclaratorArray((((void *)0)), (((void *)0)));
4710 ;
4711 }
4712 break;
4713 case 359:
4714 {
4715 yyval.declarator = MkDeclaratorArray((((void *)0)), yyvsp[(2) - (3)].exp);
4716 ;
4717 }
4718 break;
4719 case 360:
4720 {
4721 yyval.declarator = MkDeclaratorEnumArray((((void *)0)), yyvsp[(2) - (3)].specifier);
4722 ;
4723 }
4724 break;
4725 case 361:
4726 {
4727 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
4728 ;
4729 }
4730 break;
4731 case 362:
4732 {
4733 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
4734 ;
4735 }
4736 break;
4737 case 363:
4738 {
4739 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
4740 ;
4741 }
4742 break;
4743 case 364:
4744 {
4745 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
4746 ;
4747 }
4748 break;
4749 case 365:
4750 {
4751 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
4752 ;
4753 }
4754 break;
4755 case 366:
4756 {
4757 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
4758 ;
4759 }
4760 break;
4761 case 367:
4762 {
4763 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
4764 ;
4765 }
4766 break;
4767 case 368:
4768 {
4769 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4770 ;
4771 }
4772 break;
4773 case 369:
4774 {
4775 yyval.declarator = MkDeclaratorFunction((((void *)0)), (((void *)0)));
4776 ;
4777 }
4778 break;
4779 case 370:
4780 {
4781 yyval.declarator = MkDeclaratorFunction((((void *)0)), yyvsp[(2) - (3)].list);
4782 ;
4783 }
4784 break;
4785 case 371:
4786 {
4787 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, (((void *)0)));
4788 ;
4789 }
4790 break;
4791 case 372:
4792 {
4793 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].list);
4794 ;
4795 }
4796 break;
4797 case 373:
4798 {
4799 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
4800 ;
4801 }
4802 break;
4803 case 375:
4804 {
4805 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4806 ;
4807 }
4808 break;
4809 case 376:
4810 {
4811 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
4812 ;
4813 }
4814 break;
4815 case 377:
4816 {
4817 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4818 ;
4819 }
4820 break;
4821 case 378:
4822 {
4823 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4824 ;
4825 }
4826 break;
4827 case 379:
4828 {
4829 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (1)].pointer, (((void *)0)));
4830 ;
4831 }
4832 break;
4833 case 381:
4834 {
4835 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4836 ;
4837 }
4838 break;
4839 case 382:
4840 {
4841 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (2)].pointer, (((void *)0))));
4842 ;
4843 }
4844 break;
4845 case 383:
4846 {
4847 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4848 ;
4849 }
4850 break;
4851 case 384:
4852 {
4853 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4854 ;
4855 }
4856 break;
4857 case 386:
4858 {
4859 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4860 ;
4861 }
4862 break;
4863 case 387:
4864 {
4865 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4866 ;
4867 }
4868 break;
4869 case 388:
4870 {
4871 yyval.declarator = MkDeclaratorExtendedEnd(yyvsp[(2) - (2)].extDecl, yyvsp[(1) - (2)].declarator);
4872 ;
4873 }
4874 break;
4875 case 389:
4876 {
4877 yyval.declarator = MkDeclaratorIdentifier(yyvsp[(1) - (1)].id);
4878 ;
4879 }
4880 break;
4881 case 390:
4882 {
4883 yyval.declarator = MkDeclaratorBrackets(yyvsp[(2) - (3)].declarator);
4884 ;
4885 }
4886 break;
4887 case 391:
4888 {
4889 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].exp);
4890 ;
4891 }
4892 break;
4893 case 392:
4894 {
4895 yyval.declarator = MkDeclaratorArray(yyvsp[(1) - (3)].declarator, (((void *)0)));
4896 ;
4897 }
4898 break;
4899 case 393:
4900 {
4901 yyval.declarator = MkDeclaratorEnumArray(yyvsp[(1) - (4)].declarator, yyvsp[(3) - (4)].specifier);
4902 ;
4903 }
4904 break;
4905 case 395:
4906 {
4907 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4908 ;
4909 }
4910 break;
4911 case 396:
4912 {
4913 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4914 ;
4915 }
4916 break;
4917 case 397:
4918 {
4919 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4920 ;
4921 }
4922 break;
4923 case 398:
4924 {
4925 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (3)].pointer, MkDeclaratorExtended(yyvsp[(2) - (3)].extDecl, yyvsp[(3) - (3)].declarator));
4926 ;
4927 }
4928 break;
4929 case 400:
4930 {
4931 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
4932 ;
4933 }
4934 break;
4935 case 401:
4936 {
4937 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (3)].declarator, yyvsp[(2) - (3)].list);
4938 ;
4939 }
4940 break;
4941 case 402:
4942 {
4943 yyval.declarator = MkDeclaratorFunction(yyvsp[(1) - (2)].declarator, (((void *)0)));
4944 ;
4945 }
4946 break;
4947 case 405:
4948 {
4949 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4950 ;
4951 }
4952 break;
4953 case 406:
4954 {
4955 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4956 ;
4957 }
4958 break;
4959 case 408:
4960 {
4961 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (2)].pointer, yyvsp[(2) - (2)].declarator);
4962 ;
4963 }
4964 break;
4965 case 409:
4966 {
4967 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (2)].extDecl, yyvsp[(2) - (2)].declarator);
4968 ;
4969 }
4970 break;
4971 case 410:
4972 {
4973 yyval.declarator = MkDeclaratorExtended(yyvsp[(1) - (3)].extDecl, MkDeclaratorPointer(yyvsp[(2) - (3)].pointer, yyvsp[(3) - (3)].declarator));
4974 ;
4975 }
4976 break;
4977 case 411:
4978 {
4979 yyval.declarator = MkDeclaratorPointer(yyvsp[(1) - (3)].pointer, MkDeclaratorExtended(yyvsp[(2) - (3)].extDecl, yyvsp[(3) - (3)].declarator));
4980 ;
4981 }
4982 break;
4983 case 412:
4984 {
4985 yyval.list = MkList();
4986 ListAdd(yyval.list, yyvsp[(1) - (1)].specifier);
4987 ;
4988 }
4989 break;
4990 case 413:
4991 {
4992 yyval.list = yyvsp[(1) - (2)].list;
4993 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].specifier);
4994 ;
4995 }
4996 break;
4997 case 414:
4998 {
4999 yyval.pointer = MkPointer((((void *)0)), (((void *)0)));
5000 ;
5001 }
5002 break;
5003 case 415:
5004 {
5005 yyval.pointer = MkPointer(yyvsp[(2) - (2)].list, (((void *)0)));
5006 ;
5007 }
5008 break;
5009 case 416:
5010 {
5011 yyval.pointer = MkPointer((((void *)0)), yyvsp[(2) - (2)].pointer);
5012 ;
5013 }
5014 break;
5015 case 417:
5016 {
5017 yyval.pointer = MkPointer(yyvsp[(2) - (3)].list, yyvsp[(3) - (3)].pointer);
5018 ;
5019 }
5020 break;
5021 case 419:
5022 {
5023 yyval.list = yyvsp[(1) - (3)].list;
5024 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), (((void *)0))));
5025 ;
5026 }
5027 break;
5028 case 420:
5029 {
5030 yyval.list = MkList();
5031 ListAdd(yyval.list, yyvsp[(1) - (1)].typeName);
5032 ;
5033 }
5034 break;
5035 case 421:
5036 {
5037 yyval.list = yyvsp[(1) - (3)].list;
5038 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].typeName);
5039 ;
5040 }
5041 break;
5042 case 422:
5043 {
5044 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
5045 ;
5046 }
5047 break;
5048 case 423:
5049 {
5050 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
5051 ;
5052 }
5053 break;
5054 case 424:
5055 {
5056 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, MkDeclaratorPointer(MkPointer((((void *)0)), (((void *)0))), (((void *)0))));
5057 ;
5058 }
5059 break;
5060 case 425:
5061 {
5062 yyval.typeName = MkTypeName(yyvsp[(1) - (3)].list, MkDeclaratorPointer(MkPointer((((void *)0)), (((void *)0))), yyvsp[(3) - (3)].declarator));
5063 ;
5064 }
5065 break;
5066 case 426:
5067 {
5068 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
5069 ;
5070 }
5071 break;
5072 case 427:
5073 {
5074 yyval.typeName = MkTypeName(MkListOne(MkSpecifier(CLASS)), (((void *)0)));
5075 ;
5076 }
5077 break;
5078 case 428:
5079 {
5080 yyval.list = MkList();
5081 ListAdd(yyval.list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(1) - (1)].id)));
5082 ;
5083 }
5084 break;
5085 case 429:
5086 {
5087 yyval.list = yyvsp[(1) - (3)].list;
5088 ListAdd(yyvsp[(1) - (3)].list, MkTypeName((((void *)0)), MkDeclaratorIdentifier(yyvsp[(3) - (3)].id)));
5089 ;
5090 }
5091 break;
5092 case 430:
5093 {
5094 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
5095 ;
5096 }
5097 break;
5098 case 431:
5099 {
5100 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
5101 ;
5102 }
5103 break;
5104 case 432:
5105 {
5106 yyval.typeName = MkTypeName(yyvsp[(1) - (1)].list, (((void *)0)));
5107 ;
5108 }
5109 break;
5110 case 433:
5111 {
5112 yyval.typeName = MkTypeName(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declarator);
5113 ;
5114 }
5115 break;
5116 case 434:
5117 {
5118 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5119 yyval.initializer->loc = (yyloc);
5120 ;
5121 }
5122 break;
5123 case 435:
5124 {
5125 yyval.initializer = MkInitializerList(yyvsp[(2) - (3)].list);
5126 yyval.initializer->loc = (yyloc);
5127 ;
5128 }
5129 break;
5130 case 436:
5131 {
5132 yyval.initializer = MkInitializerList(yyvsp[(2) - (4)].list);
5133 yyval.initializer->loc = (yyloc);
5134 {
5135 struct Expression * exp = MkExpDummy();
5136 struct Initializer * init = MkInitializerAssignment(exp);
5137
5138 init->loc = (yylsp[(3) - (4)]);
5139 exp->loc = (yylsp[(3) - (4)]);
5140 ListAdd(yyvsp[(2) - (4)].list, init);
5141 }
5142 ;
5143 }
5144 break;
5145 case 437:
5146 {
5147 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5148 yyval.initializer->loc = (yyloc);
5149 ;
5150 }
5151 break;
5152 case 438:
5153 {
5154 yyval.initializer = MkInitializerAssignment(yyvsp[(1) - (1)].exp);
5155 yyval.initializer->loc = (yyloc);
5156 ;
5157 }
5158 break;
5159 case 439:
5160 {
5161 yyval.list = MkList();
5162 ListAdd(yyval.list, yyvsp[(1) - (1)].initializer);
5163 ;
5164 }
5165 break;
5166 case 440:
5167 {
5168 yyval.list = yyvsp[(1) - (3)].list;
5169 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].initializer);
5170 ;
5171 }
5172 break;
5173 case 447:
5174 {
5175 yyval.stmt = MkLabeledStmt(yyvsp[(1) - (3)].id, yyvsp[(3) - (3)].stmt);
5176 yyval.stmt->loc = (yyloc);
5177 ;
5178 }
5179 break;
5180 case 448:
5181 {
5182 yyval.stmt = MkCaseStmt(yyvsp[(2) - (4)].exp, yyvsp[(4) - (4)].stmt);
5183 yyval.stmt->loc = (yyloc);
5184 yyvsp[(2) - (4)].exp->loc.start = (yylsp[(1) - (4)]).end;
5185 ;
5186 }
5187 break;
5188 case 449:
5189 {
5190 yyval.stmt = MkCaseStmt((((void *)0)), yyvsp[(3) - (3)].stmt);
5191 yyval.stmt->loc = (yyloc);
5192 ;
5193 }
5194 break;
5195 case 450:
5196 {
5197 yyval.list = MkList();
5198 ListAdd(yyval.list, yyvsp[(1) - (1)].declaration);
5199 ;
5200 }
5201 break;
5202 case 451:
5203 {
5204 yyval.list = yyvsp[(1) - (2)].list;
5205 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].declaration);
5206 ;
5207 }
5208 break;
5209 case 452:
5210 {
5211 yyval.list = MkList();
5212 ListAdd(yyval.list, yyvsp[(1) - (1)].stmt);
5213 ;
5214 }
5215 break;
5216 case 453:
5217 {
5218 yyval.list = yyvsp[(1) - (2)].list;
5219 ListAdd(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].stmt);
5220 ;
5221 }
5222 break;
5223 case 454:
5224 {
5225 struct Statement * stmt = MkBadDeclStmt(yyvsp[(2) - (2)].declaration);
5226
5227 stmt->loc = (yylsp[(2) - (2)]);
5228 ListAdd(yyvsp[(1) - (2)].list, stmt);
5229 yyval.list = yyvsp[(1) - (2)].list;
5230 ;
5231 }
5232 break;
5233 case 455:
5234 {
5235 yyval.stmt = MkCompoundStmt((((void *)0)), yyvsp[(1) - (1)].list);
5236 ;
5237 }
5238 break;
5239 case 456:
5240 {
5241 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (1)].list, (((void *)0)));
5242 ;
5243 }
5244 break;
5245 case 457:
5246 {
5247 yyval.stmt = MkCompoundStmt(yyvsp[(1) - (2)].list, yyvsp[(2) - (2)].list);
5248 ;
5249 }
5250 break;
5251 case 458:
5252 {
5253 yyval.context = PushContext();
5254 ;
5255 }
5256 break;
5257 case 459:
5258 {
5259 yyval.stmt = MkCompoundStmt((((void *)0)), (((void *)0)));
5260 yyval.stmt->compound.context = PushContext();
5261 PopContext(yyval.stmt->compound.context);
5262 yyval.stmt->loc = (yyloc);
5263 ;
5264 }
5265 break;
5266 case 460:
5267 {
5268 yyval.stmt = yyvsp[(2) - (3)].stmt;
5269 yyval.stmt->compound.context = yyvsp[(1) - (3)].context;
5270 PopContext(yyvsp[(1) - (3)].context);
5271 yyval.stmt->loc = (yyloc);
5272 ;
5273 }
5274 break;
5275 case 461:
5276 {
5277 yyval.stmt = MkExpressionStmt((((void *)0)));
5278 yyval.stmt->loc = (yyloc);
5279 ;
5280 }
5281 break;
5282 case 462:
5283 {
5284 yyval.stmt = MkExpressionStmt(yyvsp[(1) - (2)].list);
5285 yyval.stmt->loc = (yyloc);
5286 ;
5287 }
5288 break;
5289 case 463:
5290 {
5291 yyval.stmt = MkIfStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt, (((void *)0)));
5292 yyval.stmt->loc = (yyloc);
5293 ;
5294 }
5295 break;
5296 case 464:
5297 {
5298 yyval.stmt = MkIfStmt(yyvsp[(3) - (7)].list, yyvsp[(5) - (7)].stmt, yyvsp[(7) - (7)].stmt);
5299 yyval.stmt->loc = (yyloc);
5300 ;
5301 }
5302 break;
5303 case 465:
5304 {
5305 yyval.stmt = MkSwitchStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
5306 yyval.stmt->loc = (yyloc);
5307 ;
5308 }
5309 break;
5310 case 466:
5311 {
5312 yyval.stmt = MkWhileStmt(yyvsp[(3) - (5)].list, yyvsp[(5) - (5)].stmt);
5313 yyval.stmt->loc = (yyloc);
5314 ;
5315 }
5316 break;
5317 case 467:
5318 {
5319 yyval.stmt = MkDoWhileStmt(yyvsp[(2) - (7)].stmt, yyvsp[(5) - (7)].list);
5320 yyval.stmt->loc = (yyloc);
5321 ;
5322 }
5323 break;
5324 case 468:
5325 {
5326 yyval.stmt = MkForStmt(yyvsp[(3) - (6)].stmt, yyvsp[(4) - (6)].stmt, (((void *)0)), yyvsp[(6) - (6)].stmt);
5327 yyval.stmt->loc = (yyloc);
5328 ;
5329 }
5330 break;
5331 case 469:
5332 {
5333 yyval.stmt = MkForStmt(yyvsp[(3) - (7)].stmt, yyvsp[(4) - (7)].stmt, yyvsp[(5) - (7)].list, yyvsp[(7) - (7)].stmt);
5334 yyval.stmt->loc = (yyloc);
5335 ;
5336 }
5337 break;
5338 case 470:
5339 {
5340 yyval.stmt = MkWhileStmt((((void *)0)), yyvsp[(4) - (4)].stmt);
5341 yyval.stmt->loc = (yyloc);
5342 ;
5343 }
5344 break;
5345 case 471:
5346 {
5347 yyval.stmt = MkForStmt(yyvsp[(3) - (5)].stmt, (((void *)0)), (((void *)0)), yyvsp[(5) - (5)].stmt);
5348 yyval.stmt->loc = (yyloc);
5349 ;
5350 }
5351 break;
5352 case 472:
5353 {
5354 yyval.stmt = MkForStmt((((void *)0)), (((void *)0)), (((void *)0)), yyvsp[(4) - (4)].stmt);
5355 yyval.stmt->loc = (yyloc);
5356 ;
5357 }
5358 break;
5359 case 473:
5360 {
5361 yyval.stmt = MkGotoStmt(yyvsp[(2) - (3)].id);
5362 yyval.stmt->loc = (yyloc);
5363 ;
5364 }
5365 break;
5366 case 474:
5367 {
5368 yyval.stmt = MkContinueStmt();
5369 yyval.stmt->loc = (yyloc);
5370 ;
5371 }
5372 break;
5373 case 475:
5374 {
5375 yyval.stmt = MkBreakStmt();
5376 yyval.stmt->loc = (yyloc);
5377 ;
5378 }
5379 break;
5380 case 476:
5381 {
5382 struct Expression * exp = MkExpDummy();
5383
5384 yyval.stmt = MkReturnStmt(MkListOne(exp));
5385 yyval.stmt->loc = (yyloc);
5386 exp->loc = (yylsp[(2) - (2)]);
5387 ;
5388 }
5389 break;
5390 case 477:
5391 {
5392 yyval.stmt = MkReturnStmt(yyvsp[(2) - (3)].list);
5393 yyval.stmt->loc = (yyloc);
5394 ;
5395 }
5396 break;
5397 case 478:
5398 {
5399 yyval.string = __ecereFunction___ecereNameSpace__ecere__sys__CopyString(yytext);
5400 ;
5401 }
5402 break;
5403 case 479:
5404 {
5405 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (5)].list, MkExpIdentifier(yyvsp[(2) - (5)].id), yyvsp[(4) - (5)].list);
5406 yyval.instance->loc = (yyloc);
5407 yyval.instance->nameLoc = (yylsp[(2) - (5)]);
5408 yyval.instance->insideLoc.start = (yylsp[(3) - (5)]).end;
5409 yyval.instance->insideLoc.end = (yylsp[(5) - (5)]).start;
5410 ;
5411 }
5412 break;
5413 case 480:
5414 {
5415 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (4)].list, MkExpIdentifier(yyvsp[(2) - (4)].id), MkList());
5416 yyval.instance->loc = (yyloc);
5417 yyval.instance->nameLoc = (yylsp[(2) - (4)]);
5418 yyval.instance->insideLoc.start = (yylsp[(3) - (4)]).end;
5419 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5420 ;
5421 }
5422 break;
5423 case 481:
5424 {
5425 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (5)].list, MkExpIdentifier(yyvsp[(2) - (5)].id), yyvsp[(4) - (5)].list);
5426 yyval.instance->loc = (yyloc);
5427 yyval.instance->nameLoc = (yylsp[(2) - (5)]);
5428 yyval.instance->insideLoc.start = (yylsp[(3) - (5)]).end;
5429 yyval.instance->insideLoc.end = (yylsp[(5) - (5)]).start;
5430 ;
5431 }
5432 break;
5433 case 482:
5434 {
5435 yyval.instance = MkInstantiationNamed(yyvsp[(1) - (4)].list, MkExpIdentifier(yyvsp[(2) - (4)].id), MkList());
5436 yyval.instance->loc = (yyloc);
5437 yyval.instance->nameLoc = (yylsp[(2) - (4)]);
5438 yyval.instance->insideLoc.start = (yylsp[(3) - (4)]).end;
5439 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5440 ;
5441 }
5442 break;
5443 case 483:
5444 {
5445 yyval.instance = MkInstantiation(yyvsp[(1) - (4)].specifier, (((void *)0)), yyvsp[(3) - (4)].list);
5446 yyval.instance->loc = (yyloc);
5447 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
5448 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5449 ;
5450 }
5451 break;
5452 case 484:
5453 {
5454 yyval.instance = MkInstantiation(yyvsp[(1) - (3)].specifier, (((void *)0)), MkList());
5455 yyval.instance->loc = (yyloc);
5456 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
5457 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5458 ;
5459 }
5460 break;
5461 case 485:
5462 {
5463 struct Location tmpLoc = type_yylloc;
5464
5465 type_yylloc = (yylsp[(1) - (4)]);
5466 type_yylloc = tmpLoc;
5467 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (4)].id->string), (((void *)0)), yyvsp[(3) - (4)].list);
5468 yyval.instance->loc = (yyloc);
5469 yyval.instance->insideLoc.start = (yylsp[(2) - (4)]).end;
5470 yyval.instance->insideLoc.end = (yylsp[(4) - (4)]).start;
5471 FreeIdentifier(yyvsp[(1) - (4)].id);
5472 ;
5473 }
5474 break;
5475 case 486:
5476 {
5477 struct Location tmpLoc = type_yylloc;
5478
5479 type_yylloc = (yylsp[(1) - (3)]);
5480 type_yylloc = tmpLoc;
5481 yyval.instance = MkInstantiation(MkSpecifierName(yyvsp[(1) - (3)].id->string), (((void *)0)), MkList());
5482 yyval.instance->loc = (yyloc);
5483 yyval.instance->insideLoc.start = (yylsp[(2) - (3)]).end;
5484 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5485 FreeIdentifier(yyvsp[(1) - (3)].id);
5486 ;
5487 }
5488 break;
5489 case 487:
5490 {
5491 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), yyvsp[(2) - (3)].list);
5492 yyval.instance->loc = (yyloc);
5493 yyval.instance->insideLoc.start = (yylsp[(1) - (3)]).end;
5494 yyval.instance->insideLoc.end = (yylsp[(3) - (3)]).start;
5495 ;
5496 }
5497 break;
5498 case 488:
5499 {
5500 yyval.instance = MkInstantiation((((void *)0)), (((void *)0)), MkList());
5501 yyval.instance->loc = (yyloc);
5502 yyval.instance->insideLoc.start = (yylsp[(1) - (2)]).end;
5503 yyval.instance->insideLoc.end = (yylsp[(2) - (2)]).start;
5504 ;
5505 }
5506 break;
5507 case 489:
5508 {
5509 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5510 yyval.classFunction->loc = (yyloc);
5511 ;
5512 }
5513 break;
5514 case 490:
5515 {
5516 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5517 yyval.classFunction->loc = (yyloc);
5518 ;
5519 }
5520 break;
5521 case 491:
5522 {
5523 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, (((void *)0)));
5524 yyval.classFunction->loc = (yyloc);
5525 ;
5526 }
5527 break;
5528 case 492:
5529 {
5530 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5531 yyval.classFunction->loc = (yyloc);
5532 ;
5533 }
5534 break;
5535 case 493:
5536 {
5537 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5538 yyval.classFunction->loc = (yyloc);
5539 ;
5540 }
5541 break;
5542 case 494:
5543 {
5544 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
5545 yyval.classFunction->loc = (yyloc);
5546 yyval.classFunction->id = ++globalContext->nextID;
5547 ;
5548 }
5549 break;
5550 case 495:
5551 {
5552 yyval.classFunction = MkClassFunction(yyvsp[(1) - (2)].list, (((void *)0)), yyvsp[(2) - (2)].declarator, (((void *)0)));
5553 yyval.classFunction->loc = (yyloc);
5554 yyval.classFunction->id = ++globalContext->nextID;
5555 ;
5556 }
5557 break;
5558 case 496:
5559 {
5560 ProcessClassFunctionBody(yyvsp[(1) - (2)].classFunction, yyvsp[(2) - (2)].stmt);
5561 yyval.classFunction->loc = (yyloc);
5562 ;
5563 }
5564 break;
5565 case 497:
5566 {
5567 yyval.memberInit = MkMemberInitExp(yyvsp[(1) - (3)].exp, yyvsp[(3) - (3)].initializer);
5568 yyval.memberInit->loc = (yyloc);
5569 yyval.memberInit->realLoc = (yyloc);
5570 yyval.memberInit->initializer->loc.start = (yylsp[(2) - (3)]).end;
5571 ;
5572 }
5573 break;
5574 case 498:
5575 {
5576 yyval.memberInit = MkMemberInit((((void *)0)), yyvsp[(1) - (1)].initializer);
5577 yyval.memberInit->loc = (yyloc);
5578 yyval.memberInit->realLoc = (yyloc);
5579 ;
5580 }
5581 break;
5582 case 499:
5583 {
5584 yyval.list = MkList();
5585 ListAdd(yyval.list, yyvsp[(1) - (1)].memberInit);
5586 ;
5587 }
5588 break;
5589 case 500:
5590 {
5591 ((struct MemberInit *)(*yyvsp[(1) - (3)].list).last)->loc.end = (yylsp[(3) - (3)]).start;
5592 ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].memberInit);
5593 yyval.list = yyvsp[(1) - (3)].list;
5594 ;
5595 }
5596 break;
5597 case 501:
5598 {
5599 if((*yyvsp[(1) - (2)].list).last)
5600 ((struct MemberInit *)(*yyvsp[(1) - (2)].list).last)->loc.end = (yylsp[(2) - (2)]).end;
5601 yyval.list = yyvsp[(1) - (2)].list;
5602 ;
5603 }
5604 break;
5605 case 502:
5606 {
5607 struct MembersInit * members = MkMembersInitList(yyvsp[(1) - (1)].list);
5608
5609 yyval.list = MkList();
5610 ListAdd(yyval.list, members);
5611 members->loc = (yylsp[(1) - (1)]);
5612 ;
5613 }
5614 break;
5615 case 503:
5616 {
5617 yyval.list = MkList();
5618 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(1) - (1)].classFunction));
5619 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
5620 ;
5621 }
5622 break;
5623 case 504:
5624 {
5625 struct MembersInit * members = MkMembersInitList(yyvsp[(2) - (2)].list);
5626
5627 ListAdd(yyval.list, members);
5628 members->loc = (yylsp[(2) - (2)]);
5629 yyval.list = yyvsp[(1) - (2)].list;
5630 ;
5631 }
5632 break;
5633 case 505:
5634 {
5635 ListAdd(yyval.list, MkMembersInitMethod(yyvsp[(2) - (2)].classFunction));
5636 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
5637 yyval.list = yyvsp[(1) - (2)].list;
5638 ;
5639 }
5640 break;
5641 case 506:
5642 {
5643 struct MembersInit * members = MkMembersInitList(MkList());
5644
5645 yyval.list = MkList();
5646 ListAdd(yyval.list, members);
5647 members->loc = (yylsp[(1) - (1)]);
5648 ;
5649 }
5650 break;
5651 case 507:
5652 {
5653 struct MembersInit * members = MkMembersInitList(MkList());
5654
5655 ListAdd(yyval.list, members);
5656 members->loc = (yylsp[(2) - (2)]);
5657 yyval.list = yyvsp[(1) - (2)].list;
5658 ;
5659 }
5660 break;
5661 case 509:
5662 {
5663 yyval.list = MkList();
5664 ListAdd(yyval.list, MkMembersInitList(yyvsp[(1) - (1)].list));
5665 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(1) - (1)]);
5666 ;
5667 }
5668 break;
5669 case 510:
5670 {
5671 ListAdd(yyvsp[(1) - (2)].list, MkMembersInitList(yyvsp[(2) - (2)].list));
5672 ((struct MembersInit *)(*yyval.list).last)->loc = (yylsp[(2) - (2)]);
5673 ;
5674 }
5675 break;
5676 case 511:
5677 {
5678 parsedType = yyvsp[(1) - (1)].typeName;
5679 ;
5680 }
5681 break;
5682 case 512:
5683 {
5684 parsedType = yyvsp[(1) - (3)].typeName;
5685 parsedType->bitCount = yyvsp[(3) - (3)].exp;
5686 ;
5687 }
5688 break;
5689 default:
5690 break;
5691 }
5692 do
5693 {
5694 if(type_yydebug)
5695 {
5696 fprintf((bsl_stderr()), "%s ", "-> $$ =");
5697 yy_symbol_print((bsl_stderr()), yyr1[yyn], &yyval, &yyloc);
5698 fprintf((bsl_stderr()), "\n");
5699 }
5700 }while((0));
5701 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5702 yylen = 0;
5703 do
5704 {
5705 if(type_yydebug)
5706 yy_stack_print((yyss), (yyssp));
5707 }while((0));
5708 *++yyvsp = yyval;
5709 *++yylsp = yyloc;
5710 yyn = yyr1[yyn];
5711 yystate = yypgoto[yyn - 143] + *yyssp;
5712 if(0 <= yystate && yystate <= 9121 && yycheck[yystate] == *yyssp)
5713 yystate = yytable[yystate];
5714 else
5715 yystate = yydefgoto[yyn - 143];
5716 goto yynewstate;
5717 yyerrlab:
5718 if(!yyerrstatus)
5719 {
5720 ++type_yynerrs;
5721 yyerror("syntax error");
5722 }
5723 yyerror_range[0] = type_yylloc;
5724 if(yyerrstatus == 3)
5725 {
5726 if(type_yychar <= 0)
5727 {
5728 if(type_yychar == 0)
5729 goto yyabortlab;
5730 }
5731 else
5732 {
5733 yydestruct("Error: discarding", yytoken, &type_yylval, &type_yylloc);
5734 type_yychar = (-2);
5735 }
5736 }
5737 goto yyerrlab1;
5738 yyerrorlab:
5739 if(0)
5740 goto yyerrorlab;
5741 yyerror_range[0] = yylsp[1 - yylen];
5742 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5743 yylen = 0;
5744 do
5745 {
5746 if(type_yydebug)
5747 yy_stack_print((yyss), (yyssp));
5748 }while((0));
5749 yystate = *yyssp;
5750 goto yyerrlab1;
5751 yyerrlab1:
5752 yyerrstatus = 3;
5753 for(; ; )
5754 {
5755 yyn = yypact[yystate];
5756 if(yyn != -778)
5757 {
5758 yyn += 1;
5759 if(0 <= yyn && yyn <= 9121 && yycheck[yyn] == (short)1)
5760 {
5761 yyn = yytable[yyn];
5762 if(0 < yyn)
5763 break;
5764 }
5765 }
5766 if(yyssp == yyss)
5767 goto yyabortlab;
5768 yyerror_range[0] = *yylsp;
5769 yydestruct("Error: popping", yystos[yystate], yyvsp, yylsp);
5770 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
5771 yystate = *yyssp;
5772 do
5773 {
5774 if(type_yydebug)
5775 yy_stack_print((yyss), (yyssp));
5776 }while((0));
5777 }
5778 *++yyvsp = type_yylval;
5779 yyerror_range[1] = type_yylloc;
5780 (yyloc.start = ((yyerror_range - 1))[1].start);
5781 (yyloc.end = ((yyerror_range - 1))[2].end);
5782 ;
5783 *++yylsp = yyloc;
5784 do
5785 {
5786 if(type_yydebug)
5787 {
5788 fprintf((bsl_stderr()), "%s ", "Shifting");
5789 yy_symbol_print((bsl_stderr()), yystos[yyn], yyvsp, yylsp);
5790 fprintf((bsl_stderr()), "\n");
5791 }
5792 }while((0));
5793 yystate = yyn;
5794 goto yynewstate;
5795 yyacceptlab:
5796 yyresult = 0;
5797 goto yyreturn;
5798 yyabortlab:
5799 yyresult = 1;
5800 goto yyreturn;
5801 yyexhaustedlab:
5802 yyerror("memory exhausted");
5803 yyresult = 2;
5804 yyreturn:
5805 if(type_yychar != (-2))
5806 yydestruct("Cleanup: discarding lookahead", yytoken, &type_yylval, &type_yylloc);
5807 (yyvsp -= (yylen), yyssp -= (yylen), yylsp -= (yylen));
5808 do
5809 {
5810 if(type_yydebug)
5811 yy_stack_print((yyss), (yyssp));
5812 }while((0));
5813 while(yyssp != yyss)
5814 {
5815 yydestruct("Cleanup: popping", yystos[*yyssp], yyvsp, yylsp);
5816 (yyvsp -= (1), yyssp -= (1), yylsp -= (1));
5817 }
5818 if(yyss != yyssa)
5819 free(yyss);
5820 return (yyresult);
5821 }
5822
5823 void __ecereRegisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module)
5824 {
5825 struct __ecereNameSpace__ecere__com__Class * class;
5826
5827 }
5828
5829 void __ecereUnregisterModule_type(struct __ecereNameSpace__ecere__com__Instance * module)
5830 {
5831
5832 }
5833