1 /* original parser id follows */
2 /* yysccsid[] = "@(#)yaccpar	1.9 (Berkeley) 02/21/93" */
3 /* (use YYMAJOR/YYMINOR for ifdefs dependent on parser version) */
4 
5 #define YYBYACC 1
6 #define YYMAJOR 1
7 #define YYMINOR 9
8 #define YYPATCH 20140715
9 
10 #define YYEMPTY        (-1)
11 #define yyclearin      (yychar = YYEMPTY)
12 #define yyerrok        (yyerrflag = 0)
13 #define YYRECOVERING() (yyerrflag != 0)
14 #define YYENOMEM       (-2)
15 #define YYEOF          0
16 #define YYPREFIX "yy"
17 
18 #define YYPURE 0
19 
20 #line 37 "Uil.y"
21 
22 
23 	/* Begin user declarations section */
24 #ifdef HAVE_CONFIG_H
25 #include <config.h>
26 #endif
27 #include "UilDefI.h"
28 #include "UilCompGl.h"
29 
30 #define		YYSTYPE		yystype
31 
32 #define		YYDEBUG		1
33 
34 /*   Declare and initialize stack entry for epsilon productions.    */
35 
36 YYSTYPE		gz_yynullval = {NULL,0,0,0,0};
37 
38 /*   Declare token to aid in saving source context	*/
39 
40 YYSTYPE		prev_yylval;
41 
42 	/* End user declarations section */
43 
44 #line 45 "Uil.c"
45 
46 #if ! defined(YYSTYPE) && ! defined(YYSTYPE_IS_DECLARED)
47 /* Default: YYSTYPE is the semantic value type. */
48 typedef int YYSTYPE;
49 # define YYSTYPE_IS_DECLARED 1
50 #endif
51 
52 /* compatibility with bison */
53 #ifdef YYPARSE_PARAM
54 /* compatibility with FreeBSD */
55 # ifdef YYPARSE_PARAM_TYPE
56 #  define YYPARSE_DECL() yyparse(YYPARSE_PARAM_TYPE YYPARSE_PARAM)
57 # else
58 #  define YYPARSE_DECL() yyparse(void *YYPARSE_PARAM)
59 # endif
60 #else
61 # define YYPARSE_DECL() yyparse(void)
62 #endif
63 
64 /* Parameters sent to lex. */
65 #ifdef YYLEX_PARAM
66 # define YYLEX_DECL() yylex(void *YYLEX_PARAM)
67 # define YYLEX yylex(YYLEX_PARAM)
68 #else
69 # define YYLEX_DECL() yylex(void)
70 # define YYLEX yylex()
71 #endif
72 
73 /* Parameters sent to yyerror. */
74 #ifndef YYERROR_DECL
75 #define YYERROR_DECL() yyerror(const char *s)
76 #endif
77 #ifndef YYERROR_CALL
78 #define YYERROR_CALL(msg) yyerror(msg)
79 #endif
80 
81 extern int YYPARSE_DECL();
82 
83 #define UILEOF 0
84 #define NAME 1
85 #define FONT_NAME 2
86 #define COLOR_NAME 3
87 #define ARGUMENT_NAME 4
88 #define REASON_NAME 5
89 #define CHARSET_NAME 6
90 #define ENUMVAL_NAME 7
91 #define CLASS_NAME 8
92 #define CHILD_NAME 96
93 #define UNS_FLOAT_LITERAL 9
94 #define COMP_STRING 10
95 #define CHAR_8_LITERAL 11
96 #define UNS_INT_LITERAL 12
97 #define LEFT_PAREN 13
98 #define RIGHT_PAREN 14
99 #define COLON 15
100 #define SEMICOLON 16
101 #define LEFT_BRACE 17
102 #define RIGHT_BRACE 18
103 #define COMMA 19
104 #define EQUAL_SIGN 20
105 #define NOT 21
106 #define PLUS 22
107 #define MINUS 23
108 #define AND 24
109 #define OR 25
110 #define XOR 26
111 #define MULTIPLY 27
112 #define DIVIDE 28
113 #define LEFT_SHIFT 29
114 #define RIGHT_SHIFT 30
115 #define LIST 31
116 #define IDENTIFIER 32
117 #define END 33
118 #define MODULE 34
119 #define UILTRUE 35
120 #define UILFALSE 36
121 #define INCLUDE 37
122 #define MACRO 38
123 #define ON 39
124 #define OFF 40
125 #define VALUE 41
126 #define ARGUMENTS 42
127 #define CALLBACKS 43
128 #define PROCEDURES 44
129 #define CONTROLS 45
130 #define PROCEDURE 46
131 #define OBJECT 47
132 #define OBJECTS 48
133 #define WIDGET 49
134 #define GADGET 50
135 #define FONT 51
136 #define ARGUMENT 52
137 #define REASON 53
138 #define PIXMAP 54
139 #define COLOR 55
140 #define NAMES 56
141 #define CHARACTER_SET 57
142 #define CASE_SENSITIVE 58
143 #define CASE_INSENSITIVE 59
144 #define VERSION 60
145 #define MANAGED 61
146 #define UNMANAGED 62
147 #define PRIVATE 63
148 #define IMPORTED 64
149 #define EXPORTED 65
150 #define UILFILE 66
151 #define STRING_TABLE 67
152 #define TRANSLATION_TABLE 68
153 #define COMPOUND_STRING 69
154 #define FONT_TABLE 70
155 #define ANY 71
156 #define STRING 72
157 #define BOOLEAN 73
158 #define ICON 74
159 #define RIGHT_TO_LEFT 75
160 #define BACKGROUND 76
161 #define FOREGROUND 77
162 #define COLOR_TABLE 78
163 #define FLOAT 79
164 #define INTEGER 80
165 #define CLASS_REC_NAME 81
166 #define ASCIZ_TABLE 82
167 #define INTEGER_TABLE 83
168 #define ASCIZ_STRING_TABLE 84
169 #define COMPOUND_STRING_TABLE 85
170 #define XBITMAPFILE 86
171 #define SEPARATE 87
172 #define SIXTEEN_BIT 88
173 #define POUND 89
174 #define KEYSYM 90
175 #define SINGLE_FLOAT 91
176 #define RGB 92
177 #define WIDE_CHARACTER 93
178 #define LOC_STRING 94
179 #define FONTSET 95
180 #define COMPOUND_STRING_COMPONENT 97
181 #define PIX 115
182 #define PIXEL 103
183 #define PIXELS 104
184 #define IN 98
185 #define INCH 105
186 #define INCHES 106
187 #define CM 99
188 #define CENTIMETER 107
189 #define CENTIMETERS 108
190 #define MM 100
191 #define MILLIMETER 109
192 #define MILLIMETERS 110
193 #define PT 101
194 #define POINT 111
195 #define POINTS 112
196 #define FU 102
197 #define FONT_UNIT 113
198 #define FONT_UNITS 114
199 #define YYERRCODE 256
200 typedef short YYINT;
201 static const YYINT yylhs[] = {                           -1,
202     3,    0,    4,    7,    1,    6,    6,    8,    8,    9,
203     9,    9,   13,    9,   11,   11,   14,   14,   16,   14,
204    15,   15,   18,   15,   19,   17,   20,   20,    2,    2,
205    21,   21,   21,   21,   21,   21,   29,   22,   28,   28,
206    31,   28,   30,   32,   32,   32,   32,   35,   35,   35,
207    35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
208    35,   35,   35,   35,   35,   35,   35,   35,   35,   35,
209    35,   35,   38,   38,   38,   38,   38,   38,   38,   38,
210    38,   38,   38,   38,   38,   38,   38,   38,   38,   38,
211    38,   38,   36,   36,   37,   37,   40,   24,   39,   39,
212    42,   39,   41,   43,   43,   45,   45,   45,   45,   44,
213    47,   23,   46,   46,   49,   46,   48,   27,   50,   27,
214    52,   25,   51,   51,   54,   51,   55,   53,   58,   56,
215    59,   56,   61,   56,   62,   64,   56,   66,   65,   67,
216    65,   68,   65,   69,   65,   70,   65,   71,   72,   65,
217    73,   57,   74,   74,   77,   76,   63,   63,   80,   80,
218    75,   75,   75,   82,   75,   78,   78,   78,   83,   78,
219    84,   84,   85,   84,   81,   81,   86,   86,   86,   90,
220    86,   60,   92,   26,   91,   91,   94,   91,   95,   93,
221    96,   96,   96,   96,  103,   97,  106,   98,  109,   99,
222   112,  100,  104,  107,  110,  101,  105,  105,  105,  114,
223   105,  108,  108,  108,  116,  108,  111,  111,  111,  118,
224   111,  102,  102,  102,  120,  102,  113,  113,  115,  115,
225   117,  117,  119,  119,  121,  121,  126,  121,  122,  122,
226   128,  122,  123,  123,  131,  123,  124,  124,  133,  124,
227   134,   89,  135,   87,  136,   88,  137,  129,  132,  140,
228   132,  142,  132,  143,  132,  141,  141,  125,  125,  127,
229   127,  146,  139,  138,  138,  138,  145,  130,  147,  147,
230   147,  147,    5,    5,    5,    5,    5,    5,    5,    5,
231    79,  148,  148,  148,  148,  148,  148,  148,  148,  148,
232   148,  148,  148,  148,  148,  148,  148,  148,  148,  148,
233   148,  148,  148,  148,  148,  148,  148,  148,  148,  148,
234   148,  148,  148,  148,  148,  148,  148,  148,  148,  148,
235   148,   10,   33,   34,   34,  149,  144,  144,  144,  151,
236   151,  152,  152,  152,  153,  153,  153,  154,  154,  154,
237   155,  155,  155,  155,  156,  156,  157,  157,  157,  157,
238   157,  157,  157,  157,  157,  157,  157,  157,  157,  157,
239   157,  157,  157,  157,  157,  157,  157,  157,  157,  157,
240   157,  157,  157,  157,  157,  157,  157,  157,  157,  157,
241   167,  167,  174,  174,  165,  165,  175,  175,  166,  166,
242   176,  176,  172,  164,  164,  177,  177,  163,  163,  163,
243   168,  168,  169,  169,  169,  169,  169,  178,  178,  179,
244   179,  179,  173,  160,  160,  161,  161,  170,  170,  180,
245   180,  159,  159,   12,   12,   12,  181,  181,  182,  182,
246   183,  183,  150,  150,  184,  184,  184,  162,  162,  185,
247   185,  171,  171,  186,  186,  158,  158,  158,  158,  158,
248   158,  158,  158,  158,  158,  158,  158,  158,  158,  158,
249   158,  158,  158,
250 };
251 static const YYINT yylen[] = {                            2,
252     0,    6,    0,    0,    5,    0,    1,    1,    2,    3,
253     3,    3,    0,    4,    1,    1,    2,    3,    0,    3,
254     2,    3,    0,    3,    0,    4,    1,    1,    0,    2,
255     1,    1,    1,    1,    1,    1,    0,    3,    1,    2,
256     0,    3,    4,    2,    2,    1,    2,    1,    1,    1,
257     1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
258     1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
259     1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
260     1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
261     1,    1,    1,    1,    1,    1,    0,    3,    1,    2,
262     0,    3,    4,    0,    3,    0,    1,    1,    1,    0,
263     0,    3,    1,    2,    0,    3,    2,    4,    0,    3,
264     0,    3,    2,    3,    0,    3,    0,    4,    0,    3,
265     0,    3,    0,    3,    0,    0,    6,    0,    3,    0,
266     3,    0,    3,    0,    3,    0,    3,    0,    0,    5,
267     0,    5,    1,    1,    0,    5,    1,    3,    1,    2,
268     1,    2,    3,    0,    3,    1,    3,    4,    0,    3,
269     3,    4,    0,    3,    1,    2,    2,    2,    2,    0,
270     3,    0,    0,    3,    2,    3,    0,    3,    0,    4,
271     1,    1,    1,    1,    0,    3,    0,    3,    0,    3,
272     0,    3,    1,    1,    1,    1,    1,    2,    3,    0,
273     3,    1,    2,    3,    0,    3,    1,    2,    3,    0,
274     3,    1,    2,    3,    0,    3,    1,    2,    1,    2,
275     1,    2,    1,    2,    2,    2,    0,    3,    2,    2,
276     0,    3,    2,    2,    0,    3,    2,    2,    0,    3,
277     0,    3,    0,    3,    0,    3,    0,    3,    2,    0,
278     4,    0,    4,    0,    4,    1,    1,    3,    4,    3,
279     3,    0,    3,    1,    1,    1,    3,    2,    1,    3,
280     4,    2,    1,    1,    1,    1,    1,    1,    1,    1,
281     1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
282     1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
283     1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
284     1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
285     1,    1,    1,    1,    1,    4,    1,    3,    3,    1,
286     3,    1,    3,    3,    1,    3,    3,    1,    3,    3,
287     1,    2,    2,    2,    1,    3,    1,    2,    2,    1,
288     1,    2,    4,    4,    4,    4,    4,    4,    5,    1,
289     1,    1,    1,    2,    4,    4,    4,    4,    4,    4,
290     4,    4,    4,    4,    4,    4,    4,    4,    4,    1,
291     0,    1,    1,    3,    0,    1,    1,    3,    0,    1,
292     1,    3,    5,    0,    1,    1,    3,    0,    2,    2,
293     1,    2,    1,    3,    3,    3,    3,    2,    3,    3,
294     3,    3,    1,    5,    1,    5,    1,    1,    3,    3,
295     1,    2,    1,    1,    4,    1,    1,    2,    2,    3,
296     3,    3,    1,    3,    4,    4,    3,    1,    3,    1,
297     1,    1,    5,    1,    3,    1,    1,    1,    1,    1,
298     1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
299     1,    1,    1,
300 };
301 static const YYINT yydefred[] = {                         3,
302     0,    1,    0,   29,    0,    0,  283,  284,  285,  286,
303   287,  288,  289,  326,  296,  297,  298,  299,  300,  301,
304   317,  302,  303,  304,  305,  306,  325,  307,   93,  311,
305   312,  315,  324,  292,  293,  319,  316,  320,  321,  318,
306   294,  295,  314,   95,  310,   96,   94,  322,  323,  327,
307   328,  329,  330,  331,  313,    4,  308,  309,  290,  119,
308   183,  111,    0,    0,   37,   97,  121,   30,   31,   32,
309    33,   34,   35,   36,    0,    0,    0,    0,    0,    0,
310     0,    0,    0,   13,    0,    0,    0,    5,    0,    8,
311   120,  187,  189,    0,    0,  115,    0,    0,  113,    2,
312     0,    0,    0,    0,    0,    0,  370,  371,  372,  373,
313     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
314     0,    0,    0,    0,    0,    0,    0,    0,    0,  390,
315     0,    0,  360,    0,    0,    0,  433,    0,    0,    0,
316     0,    0,  348,  351,  355,    0,   41,    0,    0,   39,
317   101,    0,    0,   99,  125,  127,    0,    0,    0,    0,
318     0,    0,    9,    0,    0,    0,  185,    0,  117,  114,
319   456,  457,  458,  459,  460,  461,  462,  463,  464,  465,
320   466,  467,  468,  469,  470,  471,  472,  473,  362,  358,
321     0,  353,  354,  352,    0,    0,    0,    0,    0,    0,
322     0,    0,    0,    0,    0,    0,    0,    0,  436,  434,
323     0,  432,    0,    0,    0,    0,    0,    0,  118,    0,
324     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
325   374,  359,    0,    0,   40,    0,    0,  110,  100,    0,
326     0,    0,  123,    0,   15,   16,   11,   12,   10,  188,
327     0,  186,  116,  356,    0,    0,    0,    0,    0,    0,
328     0,  393,    0,    0,    0,    0,    0,    0,    0,    0,
329   431,    0,  428,    0,  454,    0,    0,    0,    0,    0,
330   401,    0,    0,    0,    0,    0,    0,    0,    0,  423,
331     0,    0,    0,    0,    0,  406,    0,    0,  397,    0,
332     0,    0,    0,    0,    0,    0,    0,    0,  349,  350,
333    42,    0,    0,    0,    0,    0,   46,    0,  334,  102,
334   109,   72,   53,   55,   54,   50,   56,   60,   63,   61,
335   108,   49,   52,   62,   51,   48,   65,   59,   66,   67,
336    68,   69,   70,   71,   64,  107,   57,   58,    0,    0,
337   126,    0,  124,   19,    0,   14,  203,  204,  205,  206,
338   190,  191,  192,  193,  194,  195,  197,  199,  201,    0,
339   364,    0,    0,  367,  363,    0,  366,  378,    0,    0,
340     0,  379,    0,  381,    0,    0,  382,    0,  383,  384,
341   368,  377,    0,  385,    0,    0,  386,  387,    0,  388,
342   389,    0,  365,    0,  380,  375,    0,  376,    0,   45,
343    47,   44,    0,   43,  105,  103,  131,  135,  129,  128,
344   133,    0,   23,   25,   17,    0,    0,    0,    0,    0,
345     0,    0,   92,   78,   79,   75,   80,   84,   87,   85,
346   410,   74,   77,   86,   76,   73,   83,   88,   89,   90,
347    91,   81,   82,  409,  369,  450,  451,  449,  394,    0,
348     0,    0,  418,    0,  430,  429,    0,  455,  402,    0,
349     0,  435,    0,    0,  417,  414,  415,  416,  407,  398,
350     0,    0,    0,    0,  443,    0,    0,    0,    0,   20,
351     0,    0,   18,    0,   21,  225,    0,  291,  222,  196,
352   210,    0,  207,  198,  215,    0,  212,  200,  220,    0,
353   217,  202,    0,    0,    0,    0,  419,    0,    0,    0,
354   439,    0,    0,    0,    0,    0,    0,  336,    0,  151,
355   132,  136,  130,  134,   24,    0,   22,    0,  249,    0,
356   223,    0,    0,  260,    0,    0,    0,  233,    0,  182,
357     0,  237,  208,    0,    0,    0,  227,    0,    0,    0,
358   241,  213,    0,    0,    0,  229,    0,    0,    0,  245,
359   218,  257,    0,    0,  231,    0,    0,  424,  420,  421,
360   422,    0,    0,    0,  440,  403,  426,    0,    0,  447,
361   444,    0,    0,   27,   28,   26,  226,    0,  267,  264,
362   266,  262,    0,    0,  247,  224,  234,  248,  272,  259,
363   211,    0,    0,  235,  209,  228,  236,    0,  216,    0,
364     0,  239,  214,  230,  240,    0,  221,    0,    0,    0,
365   279,  278,  219,  232,  243,  244,  441,  442,  445,  446,
366     0,  157,    0,  182,  250,    0,    0,    0,  252,    0,
367   238,  254,    0,    0,  242,  256,    0,  271,  270,  246,
368   258,    0,  282,    0,    0,  154,  153,    0,  137,  173,
369     0,  265,  263,  142,  144,  140,  148,  138,  146,  261,
370   155,  273,  269,    0,    0,  280,    0,  159,  158,  164,
371     0,  152,  161,    0,  180,  182,    0,    0,  175,    0,
372     0,    0,    0,    0,    0,    0,    0,    0,    0,  277,
373   281,  160,    0,  162,    0,  174,    0,  171,  182,  176,
374   177,  178,  179,  143,  145,  141,  149,  139,  147,    0,
375   165,  163,  181,  172,  182,    0,  150,  169,    0,  156,
376   166,    0,  182,    0,  170,  167,  182,  168,
377 };
378 static const YYINT yydgoto[] = {                          1,
379     2,    6,    4,    3,  133,   88,   75,   89,   90,  134,
380   247,  270,  159,  356,  426,  422,  427,  491,  492,  666,
381    68,   69,   70,   71,   72,   73,   74,  149,   81,  150,
382   233,  316,  271,  317,  346,  135,  136,  454,  153,   82,
383   154,  236,  238,  350,  349,   98,   78,   99,  168,   76,
384   157,   83,  158,  240,  241,  420,  531,  488,  486,  137,
385   489,  487,  643,  593,  680,  707,  705,  703,  704,  708,
386   706,  735,  592,  668,  692,  682,  709,  740,  573,  689,
387   698,  713,  742,  672,  694,  699,  700,  701,  702,  717,
388    94,   77,   95,  164,  165,  361,  362,  363,  364,  365,
389   366,  500,  428,  367,  504,  429,  368,  508,  430,  369,
390   512,  431,  556,  551,  565,  560,  574,  569,  547,  538,
391   557,  566,  575,  548,  558,  612,  567,  620,  576,  577,
392   628,  549,  598,  604,  613,  621,  629,  550,  610,  603,
393   602,  647,  646,  263,  659,  650,  632,   59,  319,  484,
394   139,  140,  141,  142,  143,  144,  145,  189,  146,  256,
395   293,  261,  373,  297,  300,  282,  264,  267,  295,  272,
396   276,  289,  291,  265,  301,  283,  298,  381,  463,  273,
397   396,  471,  521,  485,  458,  277,
398 };
399 static const YYINT yysindex[] = {                         0,
400     0,    0,   19,    0, 5159,   18,    0,    0,    0,    0,
401     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
402     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
403     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
404     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
405     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
406     0,    0,   29,   16,    0,    0,    0,    0,    0,    0,
407     0,    0,    0,    0,  120,   50, 2508, 2617,   72, 4771,
408  2714, 2823, 2920,    0,   88,  140,  144,    0,  120,    0,
409     0,    0,    0, 5159,  151,    0,  170, 5159,    0,    0,
410  1192, 1192, 4771, 4771, 4771, 4771,    0,    0,    0,    0,
411   200,  210,  214,  227,  230,  238,  270,  276,  289,  291,
412   294,  306,  319,  344,   61,  352,  362,  365,  377,    0,
413   392,  395,    0,  173,  398,  400,    0,  315,  206,   14,
414   320,  325,    0,    0,    0,  349,    0,  219, 5159,    0,
415     0,  402, 5159,    0,    0,    0, 5159,  233,  218,  303,
416    61, 4771,    0,  281,  401,  283,    0,  322,    0,    0,
417     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
418     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
419    32,    0,    0,    0, 4771, 4771, 4771, 4771, 4771, 4771,
420  4771, 4577, 4868, 4771, 4771, 4771, 4771, 4771,    0,    0,
421   405,    0, 4771, 4771, 4771, 4771, 4771,  412,    0, 4771,
422  4771, 4771, 4771, 4771, 4771, 4771, 4771, 4771, 4771, 4771,
423     0,    0,  404, 4480,    0,  406, 5214,    0,    0,  413,
424   419,  420,    0,  -12,    0,    0,    0,    0,    0,    0,
425   159,    0,    0,    0,  423,  407,  425,  431,  434,  442,
426   448,    0,  315,  449,  446,  447,  453,    0,  405,  450,
427     0,  205,    0,  451,    0,  455,  457,  131,  167,  458,
428     0,  465,  461,  468, 4771,  471,  169,  467,  474,    0,
429   475,  476,  480,  478,  484,    0,  486,  482,    0,  488,
430   485,  206,  206,   14,  320,  320,  325,  325,    0,    0,
431     0, 4965, 1116, 4771,  498,  497,    0,  315,    0,    0,
432     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
433     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
434     0,    0,    0,    0,    0,    0,    0,    0,  502,  501,
435     0,  246,    0,    0,   -6,    0,    0,    0,    0,    0,
436     0,    0,    0,    0,    0,    0,    0,    0,    0,  433,
437     0,  625,  506,    0,    0,  287,    0,    0, 4771,  -27,
438   503,    0, 4771,    0, 4577, 4771,    0, 4771,    0,    0,
439     0,    0, 4771,    0,  507,  513,    0,    0, 4771,    0,
440     0,  464,    0,   22,    0,    0, 4771,    0, 4771,    0,
441     0,    0, 5062,    0,    0,    0,    0,    0,    0,    0,
442     0,  511,    0,    0,    0,   24,  515, 1381, 1478, 1587,
443  1684,  512,    0,    0,    0,    0,    0,    0,    0,    0,
444     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
445     0,    0,    0,    0,    0,    0,    0,    0,    0,  516,
446   519,  520,    0,  -27,    0,    0,  522,    0,    0,  -34,
447   525,    0,  526,  528,    0,    0,    0,    0,    0,    0,
448   491,  495,  221,  217,    0,  527,  544,  527,  527,    0,
449   537,  535,    0,  542,    0,    0, 1793,    0,    0,    0,
450     0,  760,    0,    0,    0,  857,    0,    0,    0, 1890,
451     0,    0,   61,   61, 4771, 4771,    0, 4771,  539,  540,
452     0,  -34, 4771,   61,  541,  543, 4771,    0, 5062,    0,
453     0,    0,    0,    0,    0,  339,    0,  546,    0,  334,
454     0,    0,    0,    0,    0,  549, 1999,    0,  551,    0,
455   550,    0,    0,    0,  554,  966,    0,  555,  243,  556,
456     0,    0,    0,  557, 1063,    0,  559,  250,  560,    0,
457     0,    0,  564, 2096,    0,  563,  566,    0,    0,    0,
458     0,  457, 4771, 4771,    0,    0,    0, 4771, 4771,    0,
459     0,  534,  534,    0,    0,    0,    0,  568,    0,    0,
460     0,    0,  547,  548,    0,    0,    0,    0,    0,    0,
461     0,  569,  530,    0,    0,    0,    0, 4674,    0,  570,
462   552,    0,    0,    0,    0,  553,    0,  571,  558, 4380,
463     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
464  5159,    0,  339,    0,    0,   -4,   -4,  286,    0,  584,
465     0,    0, 5159,  315,    0,    0, 5159,    0,    0,    0,
466     0, 5159,    0,  203,  581,    0,    0, 2205,    0,    0,
467    -3,    0,    0,    0,    0,    0,    0,    0,    0,    0,
468     0,    0,    0,  564,  582,    0,  586,    0,    0,    0,
469    -2,    0,    0,  580,    0,    0,    0,   -1,    0,  585,
470   587,  588,  527,  527,  527,  597,  527,  527,  534,    0,
471     0,    0,  589,    0,    3,    0,  592,    0,    0,    0,
472     0,    0,    0,    0,    0,    0,    0,    0,    0,  339,
473     0,    0,    0,    0,    0, 2302,    0,    0,    4,    0,
474     0,  591,    0,    5,    0,    0,    0,    0,
475 };
476 static const YYINT yyrindex[] = {                         0,
477     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
478     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
479     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
480     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
481     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
482     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
483     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
484     0,    0,    0,    0,   80,    0,    0,    0,    0,  388,
485     0,    0,    0,    0,    0,    0,    0,    0,  100,    0,
486     0,    0,    0,  138,    0,    0,    0,  141,    0,    0,
487   298,  427,  388,  388,  388,  388,    0,    0,    0,    0,
488  3004, 3043, 3082, 3121, 3166, 3205, 3250, 3289, 3328, 3367,
489  3412, 3451, 3496, 3535,    0, 3574, 3613, 3658, 3697,    0,
490  3742, 3781,    0,    0, 3820, 3859,    0,  477, 4234, 4150,
491  4027, 3904,    0,    0,    0,    0,    0,    0,  179,    0,
492     0,  594,  225,    0,    0,    0,  259,    0,    0,    0,
493     0,  388,    0,    0,    0,    0,    0,    0,    0,    0,
494     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
495     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
496     0,    0,    0,    0,  388,  388,  388,  388,  388,  129,
497   388,  388,  388,  388,  388,  388,  274,  388,    0,    0,
498     0,    0,  388,  388,  388,  388,  388,    0,    0,  284,
499   323,  388,  388,  388,  388,  388,  388,  388,  388,  388,
500     0,    0,    0,  388,    0,    0,  599,    0,    0,    0,
501     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
502     0,    0,    0,    0,  602,    0,  488,    0,    0,  604,
503     0,    0,  106,    0,  465,  615,    0,  357,  598,    0,
504     0,    0,    0, 1377,    0,    0,  616,    0,    0,    0,
505     0,    0,  474,    0,  388,    0,    0,    0,    0,    0,
506     0,  618,    0,  621,    0,    0,    0,  484,    0,    0,
507   623, 4273, 4312, 4189, 4066, 4105, 3943, 3988,    0,    0,
508     0,  388,  860,  388,  969,    0,    0,  595,    0,    0,
509     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
510     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
511     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
512     0,  630,    0,    0,    0,    0,    0,    0,    0,    0,
513     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
514     0,    0,    0,    0,    0,    0,    0,    0,  388,    0,
515   626,    0,  388,    0,  388,  388,    0,  388,    0,    0,
516     0,    0,  388,    0,  627,    0,    0,    0,  388,    0,
517     0,    0,    0,    0,    0,    0,  388,    0,  388,    0,
518     0,    0,  388,    0,    0,    0,    0,    0,    0,    0,
519     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
520     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
521     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
522     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
523     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
524   628,    0,    0,    0,    0,    0,    0,    0,    0,    0,
525   935, 1067,    0,    0,    0,    0,    0,    0,    0,    0,
526     0,    0,    0,    0,    0,    0,   23,    0,    0,    0,
527     0,   60,    0,    0,    0,   95,    0,    0,    0,  600,
528     0,    0,    0,    0,  388,  388,    0,  388,    0,    0,
529     0,    0,  388,    0,    0,    0,  388,    0,  388,    0,
530     0,    0,    0,    0,    0,    0,    0,    0,    0,  -11,
531     0,  115,  127,    0,   53,    0,   23,    0,    0,    0,
532     0,    0,    0,  180,    0,   60,    0,    0,    0,    0,
533     0,    0,  118,    0,   95,    0,    0,    0,    0,    0,
534     0,    0,  629,  600,    0,    0,    0,    0,    0,    0,
535     0,  632,  388,  388,    0,    0,    0,  388,  388,    0,
536     0, 1272,  629,    0,    0,    0,    0,    0,    0,    0,
537     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
538     0,    0,    0,    0,    0,    0,    0,  388,    0,    0,
539     0,    0,    0,    0,    0,  600,    0,    0,    0,  388,
540     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
541     0,    0, 2411,    0,    0,    0,    0,  630,    0,    0,
542     0,    0,    0,  631,    0,    0,    0,    0,    0,    0,
543     0,    0,    0,    0, 1175,    0,    0,    0,    0,    0,
544   222,    0,    0,    0,    0,    0,    0,    0,    0,    0,
545     0,    0,    0,  629,    0,    0,    0,    0,    0,    0,
546   222,    0,    0,    0,    0,    0,  236,  222,    0,    0,
547     0,    0,    0,    0,    0,    0,    0,    0, 1272,    0,
548     0,    0,    0,    0,  222,    0,    0,    0,    0,    0,
549     0,    0,    0,    0,    0,    0,    0,    0,    0, 2411,
550     0,    0,    0,    0,    0,    0,    0,    0,  222,    0,
551     0,    0,    0,  222,    0,    0,    0,    0,
552 };
553 static const YYINT yygindex[] = {                         0,
554     0,    0,    0,    0,    9,    0,    0,    0,  562, -161,
555     0, -122,    0,    0,    0,    0,  213,    0,    0,  113,
556     0,    0,    0,    0,    0,    0,    0,    0,    0,  504,
557     0,    0, -106,  342,  343,   -5,    2,    0,    0,    0,
558   505,    0,    0,    0,    0,    0,    0,  567,    0,    0,
559     0,    0,  518,    0,    0,    0, -335,    0,    0,   41,
560     0,    0, -575,    0,    0,    0,    0,    0,    0,    0,
561     0,    0,    0,  -70,    0,    0,    0,    0, -420,    0,
562  -664,    0,    0,   21,    0, -579, -482, -466, -478,    0,
563     0,    0,  575,    0,    0,    0,   57,   59,   52,   58,
564     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
565     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
566   125,  117,  112,  143,    0,    0,    0,    0,   62,    0,
567     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
568     0,    0,    0,    1,    0,    0,    7,    0,    0,    0,
569   178,  479,  181,  176,  -80,    0,    0,  609,    0,    0,
570     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
571     0,    0,    0,    0,    0,    0,    0,    0,  237,  317,
572     0,    0,  191,  171,    0,  196,
573 };
574 #define YYTABLESIZE 5311
575 static const YYINT yytable[] = {                         57,
576   249,  424,  212,  289,  355,  182,   58,  499,  503,  507,
577   511,  425,  671,   56,  696,  714,  719,  644,  546,  555,
578   732,  743,  747,  192,  193,  194,  715,  475,  476,  460,
579   182,  424,  477,  255,  257,  258,  259,  260,  248,  564,
580   519,  493,  225,  226,  280,  254,  284,  461,   61,   62,
581    63,  286,    5,  520,   64,  292,  222,  223,   65,  462,
582   274,  209,   79,   66,   67,   91,  210,  182,  546,  182,
583   182,   57,   57,  555,  744,   57,   57,   57,   58,   58,
584   138,   80,   58,   58,   58,   93,   97,  100,   57,  148,
585   152,  156,   57,  262,  266,   58,  275,  251,  564,   58,
586   281,  182,   93,  191,  182,  182,   97,  160,  288,  290,
587     6,    6,    6,  296,  299,  478,    6,  211,  720,  333,
588     6,  333,  275,  395,  333,    6,    6,  433,  433,  305,
589     7,    7,    7,  730,  276,  720,    7,  182,  182,  182,
590     7,  306,  391,   57,  389,    7,    7,   57,  309,  310,
591    58,   57,  533,  534,   58,  222,  223,  148,   58,  161,
592   255,  152,  138,  162,  720,  156,  167,   84,  184,  184,
593   184,  112,  112,  112,  184,   85,   86,  112,  184,   87,
594   390,  112,  398,  184,  184,  169,  112,  112,  219,  433,
595   433,  222,  223,  222,  223,  138,  138,  138,  138,  138,
596   357,  358,  359,  360,  278,  279,  138,  412,  138,   38,
597    38,   38,  195,  138,  287,   38,  686,  138,  384,   38,
598   665,  253,  196,  385,   38,   38,  197,  222,  223,  224,
599   528,  347,  683,  234,  318,  529,  684,  244,  348,  198,
600   527,  685,  199,  354,  182,  222,  223,  693,  243,  423,
601   200,  670,  695,  695,  695,   98,   98,   98,  695,  695,
602   695,   98,  618,  182,  182,   98,  182,  222,  223,  626,
603    98,   98,  459,   60,  222,  223,  465,  253,  255,  467,
604   251,  468,  201,  182,  182,  138,  469,  399,  202,  122,
605   122,  122,  473,  182,  182,  122,  250,  404,  252,  122,
606   479,  203,  480,  204,  122,  122,  205,  347,  417,  418,
607   419,  361,  318,  361,  348,  741,  361,  361,  206,  361,
608   361,  361,  361,  361,  361,  361,  361,  361,  361,  361,
609   361,  207,  182,  182,  361,    6,  395,  253,  361,  222,
610   223,  227,  228,  361,  361,  361,  674,  675,  676,  677,
611   678,  229,  230,  361,  361,    7,  208,  361,  231,  232,
612   245,  246,  456,  457,  213,  590,  452,  724,  725,  726,
613   283,  728,  729,  453,  214,  283,  436,  215,  283,  283,
614   283,  283,  283,  283,  283,  283,  283,  594,  595,  216,
615   578,  579,  421,  184,  599,  600,  112,  182,  182,  302,
616   303,  587,  307,  308,  217,  305,  306,  218,  580,  581,
617   220,  275,  221,  483,  237,  251,  586,  285,  294,  311,
618   371,  320,   57,   57,   57,   57,  639,  640,  351,   58,
619    58,   58,   58,  352,   38,  353,  498,  498,  498,  498,
620   357,  370,  357,  372,  374,  357,  357,  375,  357,  357,
621   357,  357,  357,  357,  357,  357,  357,  357,  357,  357,
622   376,  377,  378,  357,  379,  380,  382,  357,  387,  383,
623   386,  391,  357,  357,  357,  388,  637,  638,  392,  393,
624    98,  394,  357,  357,  397,  399,  357,  400,  401,  432,
625   332,   57,  332,  403,  402,  332,  404,  405,   58,  406,
626   407,  408,  559,  409,   57,  544,  568,  332,  332,  332,
627   413,   58,  414,  332,  122,  415,  416,  332,  498,  455,
628   474,  464,  332,  332,  332,  470,  472,  138,  490,  483,
629   495,  513,  332,  332,  530,  514,  332,  545,  515,  516,
630   518,   57,  554,  522,  523,  525,  563,  524,   58,  526,
631   572,  532,  535,  361,  536,  544,  559,  537,  583,  584,
632   588,  648,  589,  597,  605,  568,  608,  611,   57,  614,
633   617,  357,  622,  619,  625,   58,  630,  627,  635,  641,
634   601,  636,  498,  645,  651,  655,  660,  545,  138,  138,
635   609,  681,  360,  687,  358,  711,  554,  716,  657,  712,
636   721,  359,  722,  723,  727,  563,  731,  733,  745,  104,
637   335,  317,  106,  631,  572,  425,  317,  448,  654,  317,
638   317,  317,  317,  317,  317,  317,  317,  317,  411,  452,
639   664,  427,  642,  642,  413,   57,  396,  182,  494,  412,
640   437,  438,   58,  182,  182,  453,  268,   57,  596,  498,
641   163,   57,  235,  410,   58,  411,   57,  239,   58,  736,
642   649,  498,   57,   58,  170,  498,  572,  673,  166,   58,
643   498,  652,  656,  433,  242,  434,  498,  435,  436,  437,
644   616,  624,  357,  667,  669,  634,  661,  658,  679,  607,
645   710,   29,  438,  439,  440,  441,  442,  443,  444,  591,
646   517,  466,  304,  445,  446,  688,   44,  447,   46,   47,
647   190,  697,  585,  582,  448,  449,    0,  450,    0,  451,
648     0,    0,    0,    0,  631,    0,    0,    0,    0,    0,
649    57,  697,  332,    0,    0,    0,  718,   58,  697,    0,
650     0,    0,    0,    0,  498,    0,    0,    0,    0,  642,
651     0,    0,    0,    0,    0,  697,    0,    0,    0,  734,
652     7,    8,    9,   10,   11,    0,   12,    0,  101,    0,
653   667,  102,  103,    0,    0,  737,    0,  553,    0,  697,
654   104,  105,  106,  746,  697,    0,    0,  748,    0,    0,
655     0,    0,    0,    0,  107,  108,    0,    0,  109,  110,
656     0,    0,    0,    0,    0,    0,    0,   14,    0,    0,
657   111,  112,  113,  114,  115,   20,   21,   22,   23,   24,
658    25,   26,    0,   27,    0,   28,   29,  116,  117,  118,
659    33,   34,   35,  119,   37,   38,   39,   40,  120,  121,
660   122,   44,  123,   46,   47,  124,   49,    0,  125,  126,
661   127,  128,  129,  130,  131,   13,  132,    7,    8,    9,
662    10,   11,    0,   12,    0,  101,    0,    0,  102,  103,
663     0,    0,    0,    0,  562,  325,    0,  104,  105,  106,
664     0,  325,  325,  325,  325,  325,  325,  325,  325,  325,
665     0,  107,  108,    0,    0,  109,  110,    0,    0,    0,
666     0,    0,    0,    0,   14,    0,    0,  111,  112,  113,
667   114,  115,   20,   21,   22,   23,   24,   25,   26,    0,
668    27,    0,   28,   29,  116,  117,  118,   33,   34,   35,
669   119,   37,   38,   39,   40,  120,  121,  122,   44,  123,
670    46,   47,  124,   49,    0,  125,  126,  127,  128,  129,
671   130,  131,   13,  132,  320,    0,  320,  320,  320,  320,
672   320,  320,  320,  320,  320,    0,    7,    8,    9,   10,
673    11,    0,   12,    0,  101,    0,    0,  102,  103,    0,
674     0,    0,    0,  615,  318,    0,  104,  105,  106,    0,
675   318,  318,  318,  318,  318,  318,  318,  318,  318,    0,
676   107,  108,    0,    0,  109,  110,    0,    0,    0,    0,
677     0,    0,    0,   14,    0,  552,  111,  112,  113,  114,
678   115,   20,   21,   22,   23,   24,   25,   26,    0,   27,
679     0,   28,   29,  116,  117,  118,   33,   34,   35,  119,
680    37,   38,   39,   40,  120,  121,  122,   44,  123,   46,
681    47,  124,   49,    0,  125,  126,  127,  128,  129,  130,
682   131,   13,  132,    7,    8,    9,   10,   11,    0,   12,
683     0,  101,    0,    0,  102,  103,    0,    0,    0,    0,
684   623,    0,    0,  104,  105,  106,  321,    0,  321,  321,
685   321,  321,  321,  321,  321,  321,  321,  107,  108,    0,
686     0,  109,  110,    0,    0,    0,    0,    0,    0,    0,
687    14,    0,  561,  111,  112,  113,  114,  115,   20,   21,
688    22,   23,   24,   25,   26,    0,   27,    0,   28,   29,
689   116,  117,  118,   33,   34,   35,  119,   37,   38,   39,
690    40,  120,  121,  122,   44,  123,   46,   47,  124,   49,
691     0,  125,  126,  127,  128,  129,  130,  131,   13,  132,
692     0,    0,    0,    0,  322,    0,  323,  324,  325,  326,
693   327,    0,    0,    0,    0,  182,  182,  182,  182,  182,
694     0,  182,   29,  328,  329,  330,    0,  332,  333,  334,
695   182,  182,    0,    0,  335,  336,  337,   44,  338,   46,
696    47,  339,    0,    0,    0,  340,  341,  342,  343,    0,
697   344,    0,  345,    0,    0,    0,    0,    0,    0,    0,
698     0,  552,  182,  182,  182,  182,  182,  182,  182,  182,
699   182,  182,  182,  182,  182,  182,  182,    0,  182,    0,
700   182,  182,  182,  182,  182,  182,  182,  182,  182,  182,
701   182,  182,  182,  182,  182,  182,  182,  182,  182,  182,
702   182,  182,    0,    0,  182,  182,  182,  182,    0,  182,
703   182,  182,  182,  182,  182,  182,  182,    0,  182,    0,
704     0,    0,    0,    0,    0,    0,    0,    0,  182,  174,
705   177,  180,  183,  186,  172,  173,  175,  176,  178,  179,
706   181,  182,  184,  185,  187,  188,  171,    0,    0,    0,
707     0,    0,    0,    0,    0,    0,    0,    0,  561,  182,
708   182,  182,  182,  182,  182,  182,  182,  182,  182,  182,
709   182,  182,  182,  182,    0,  182,    0,  182,  182,  182,
710   182,  182,  182,  182,  182,  182,  182,  182,  182,  182,
711   182,  182,  182,  182,  182,  182,  182,  182,  182,    0,
712     0,  182,  182,  182,  182,    0,  182,  182,  182,    0,
713     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
714     0,    7,    8,    9,   10,   11,    0,   12,    0,    0,
715   318,    0,    0,    0,    0,  318,    0,  497,  318,  318,
716   318,  318,  318,  318,  318,  318,  318,    0,    0,    0,
717     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
718     0,    0,    0,    0,    0,    0,    0,    0,   14,    0,
719   182,   15,   16,   17,   18,   19,   20,   21,   22,   23,
720    24,   25,   26,    0,   27,    0,   28,   29,   30,   31,
721    32,   33,   34,   35,   36,   37,   38,   39,   40,   41,
722    42,   43,   44,   45,   46,   47,   48,   49,    0,    0,
723    50,   51,   52,   53,    0,   54,   13,   55,    7,    8,
724     9,   10,   11,    0,   12,    0,    0,    0,    0,    0,
725     0,    0,    0,    0,  502,    0,    0,    0,    0,    0,
726     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
727     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
728     0,    0,    0,    0,    0,   14,    0,  182,   15,   16,
729    17,   18,   19,   20,   21,   22,   23,   24,   25,   26,
730     0,   27,    0,   28,   29,   30,   31,   32,   33,   34,
731    35,   36,   37,   38,   39,   40,   41,   42,   43,   44,
732    45,   46,   47,   48,   49,    0,    0,   50,   51,   52,
733    53,    0,   54,   13,   55,    0,    0,    0,    0,    0,
734     0,    0,    0,    0,    0,    0,    0,    7,    8,    9,
735    10,   11,    0,   12,    0,    0,    0,    0,    0,    0,
736     0,    0,    0,  506,    0,    0,    0,    0,    0,    0,
737     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
738     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
739     0,    0,    0,    0,   14,    0,  496,   15,   16,   17,
740    18,   19,   20,   21,   22,   23,   24,   25,   26,    0,
741    27,    0,   28,   29,   30,   31,   32,   33,   34,   35,
742    36,   37,   38,   39,   40,   41,   42,   43,   44,   45,
743    46,   47,   48,   49,    0,    0,   50,   51,   52,   53,
744     0,   54,   13,   55,    7,    8,    9,   10,   11,    0,
745    12,    0,    0,    0,    0,    0,    0,    0,    0,    0,
746   510,    0,    0,    0,    0,    0,    0,    0,    0,    0,
747     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
748     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
749     0,   14,    0,  501,   15,   16,   17,   18,   19,   20,
750    21,   22,   23,   24,   25,   26,    0,   27,    0,   28,
751    29,   30,   31,   32,   33,   34,   35,   36,   37,   38,
752    39,   40,   41,   42,   43,   44,   45,   46,   47,   48,
753    49,    0,    0,   50,   51,   52,   53,    0,   54,   13,
754    55,    0,    0,    0,    0,    0,    0,    0,    0,    0,
755     0,    0,    0,    7,    8,    9,   10,   11,    0,   12,
756     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
757   541,    0,    0,    0,    0,    0,    0,    0,    0,    0,
758     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
759     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
760    14,    0,  505,   15,   16,   17,   18,   19,   20,   21,
761    22,   23,   24,  542,  543,    0,   27,    0,   28,   29,
762    30,   31,   32,   33,   34,   35,   36,   37,   38,   39,
763    40,   41,   42,   43,   44,   45,   46,   47,   48,   49,
764     0,    0,   50,   51,   52,   53,    0,   54,  540,   55,
765     7,    8,    9,   10,   11,    0,   12,    0,    0,    0,
766     0,    0,    0,    0,    0,    0,    0,  571,    0,    0,
767     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
768     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
769     0,    0,    0,    0,    0,    0,    0,   14,    0,  509,
770    15,   16,   17,   18,   19,   20,   21,   22,   23,   24,
771    25,   26,    0,   27,    0,   28,   29,   30,   31,   32,
772    33,   34,   35,   36,   37,   38,   39,   40,   41,   42,
773    43,   44,   45,   46,   47,   48,   49,    0,    0,   50,
774    51,   52,   53,    0,   54,   13,   55,    0,    0,    0,
775     0,    0,    0,    0,    0,    0,    0,    0,    0,    7,
776     8,    9,   10,   11,    0,   12,    0,    0,    0,    0,
777     0,    0,    0,    0,    0,    0,  606,    0,    0,    0,
778     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
779     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
780     0,    0,    0,    0,    0,    0,   14,    0,  539,   15,
781    16,   17,   18,   19,   20,   21,   22,   23,   24,  542,
782   543,    0,   27,    0,   28,   29,   30,   31,   32,   33,
783    34,   35,   36,   37,   38,   39,   40,   41,   42,   43,
784    44,   45,   46,   47,   48,   49,    0,    0,   50,   51,
785    52,   53,    0,   54,  540,   55,    7,    8,    9,   10,
786    11,    0,   12,    0,    0,    0,    0,    0,    0,    0,
787     0,    0,    0,  633,    0,    0,    0,    0,    0,    0,
788     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
789     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
790     0,    0,    0,   14,    0,  570,   15,   16,   17,   18,
791    19,   20,   21,   22,   23,   24,   25,   26,    0,   27,
792     0,   28,   29,   30,   31,   32,   33,   34,   35,   36,
793    37,   38,   39,   40,   41,   42,   43,   44,   45,   46,
794    47,   48,   49,    0,    0,   50,   51,   52,   53,    0,
795    54,   13,   55,    0,    0,    0,    0,    0,    0,    0,
796     0,    0,    0,    0,    0,    7,    8,    9,   10,   11,
797     0,   12,    0,    0,    0,    0,    0,    0,    0,    0,
798     0,  691,    0,    0,    0,    0,    0,    0,    0,    0,
799     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
800     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
801     0,    0,   14,    0,  539,   15,   16,   17,   18,   19,
802    20,   21,   22,   23,   24,   25,   26,    0,   27,    0,
803    28,   29,   30,   31,   32,   33,   34,   35,   36,   37,
804    38,   39,   40,   41,   42,   43,   44,   45,   46,   47,
805    48,   49,    0,    0,   50,   51,   52,   53,    0,   54,
806    13,   55,    7,    8,    9,   10,   11,    0,   12,    0,
807     0,    0,    0,    0,    0,    0,    0,    0,  739,    0,
808     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
809     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
810     0,    0,    0,    0,    0,    0,    0,    0,    0,   14,
811     0,  570,   15,   16,   17,   18,   19,   20,   21,   22,
812    23,   24,   25,   26,    0,   27,    0,   28,   29,   30,
813    31,   32,   33,   34,   35,   36,   37,   38,   39,   40,
814    41,   42,   43,   44,   45,   46,   47,   48,   49,    0,
815     0,   50,   51,   52,   53,    0,   54,   13,   55,    0,
816     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
817     0,  182,  182,  182,  182,  182,    0,  182,    0,    0,
818     0,    0,    0,    0,    0,    0,    0,  182,    0,    0,
819     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
820     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
821     0,    0,    0,    0,    0,    0,    0,    0,  182,    0,
822   690,  182,  182,  182,  182,  182,  182,  182,  182,  182,
823   182,  182,  182,    0,  182,    0,  182,  182,  182,  182,
824   182,  182,  182,  182,  182,  182,  182,  182,  182,  182,
825   182,  182,  182,  182,  182,  182,  182,  182,    0,    0,
826   182,  182,  182,  182,    0,  182,  182,  182,    7,    8,
827     9,   10,   11,    0,   12,    0,    0,    0,    0,    0,
828     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
829     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
830     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
831     0,    0,    0,    0,    0,   14,    0,  738,   15,   16,
832    17,   18,   19,   20,   21,   22,   23,   24,   25,   26,
833     0,   27,    0,   28,   29,   30,   31,   32,   33,   34,
834    35,   36,   37,   38,   39,   40,   41,   42,   43,   44,
835    45,   46,   47,   48,   49,    0,    0,   50,   51,   52,
836    53,    0,   54,   13,   55,    0,    0,    0,    0,    0,
837     0,    0,    0,    0,    0,    0,    0,    7,    8,    9,
838    10,   11,    0,   12,    0,    0,    0,    0,    0,    0,
839     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
840     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
841     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
842     0,    0,    0,    0,   14,    0,  182,   15,   16,   17,
843    18,   19,   20,   21,   22,   23,   24,   25,   26,    0,
844    27,    0,   28,   29,   30,   31,   32,   33,   34,   35,
845    36,   37,   38,   39,   40,   41,   42,   43,   44,   45,
846    46,   47,   48,   49,    0,    0,   50,   51,   52,   53,
847     0,   54,   13,   55,    7,    8,    9,   10,   11,    0,
848    12,    0,    0,    0,    0,    0,    0,    0,    0,    0,
849     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
850     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
851     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
852     0,   14,    0,   92,   15,   16,   17,   18,   19,   20,
853    21,   22,   23,   24,   25,   26,    0,   27,    0,   28,
854    29,   30,   31,   32,   33,   34,   35,   36,   37,   38,
855    39,   40,   41,   42,   43,   44,   45,   46,   47,   48,
856    49,    0,    0,   50,   51,   52,   53,    0,   54,   13,
857    55,    0,    0,    0,    0,    0,    0,    0,    0,    0,
858     0,    0,    0,    7,    8,    9,   10,   11,    0,   12,
859     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
860     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
861     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
862     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
863    14,    0,   96,   15,   16,   17,   18,   19,   20,   21,
864    22,   23,   24,   25,   26,    0,   27,    0,   28,   29,
865    30,   31,   32,   33,   34,   35,   36,   37,   38,   39,
866    40,   41,   42,   43,   44,   45,   46,   47,   48,   49,
867     0,    0,   50,   51,   52,   53,    0,   54,   13,   55,
868     7,    8,    9,   10,   11,    0,   12,    0,    0,    0,
869     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
870     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
871     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
872     0,    0,    0,    0,    0,    0,    0,   14,    0,  147,
873    15,   16,   17,   18,   19,   20,   21,   22,   23,   24,
874    25,   26,    0,   27,    0,   28,   29,   30,   31,   32,
875    33,   34,   35,   36,   37,   38,   39,   40,   41,   42,
876    43,   44,   45,   46,   47,   48,   49,    0,    0,   50,
877    51,   52,   53,    0,   54,   13,   55,  296,    0,  296,
878     0,    0,  296,  296,    0,  296,  296,  296,  296,  296,
879   296,  296,  296,  296,  296,  296,  296,    0,    0,    0,
880   296,    0,    0,    0,  296,    0,    0,    0,    0,  296,
881   296,  296,    0,    0,    0,    0,  297,    0,  297,  296,
882   296,  297,  297,  296,  297,  297,  297,  297,  297,  297,
883   297,  297,  297,  297,  297,  297,    0,    0,  151,  297,
884     0,    0,    0,  297,    0,    0,    0,    0,  297,  297,
885   297,    0,    0,    0,    0,  298,    0,  298,  297,  297,
886   298,  298,  297,  298,  298,  298,  298,  298,  298,  298,
887   298,  298,  298,  298,  298,    0,    0,    0,  298,    0,
888     0,    0,  298,    0,    0,    0,    0,  298,  298,  298,
889     0,    0,    0,    0,  299,    0,  299,  298,  298,  299,
890   299,  298,  299,  299,  299,  299,  299,  299,  299,  299,
891   299,  299,  299,  299,    0,    0,    0,  299,    0,    0,
892     0,  299,    0,    0,    0,    0,  299,  299,  299,    0,
893     0,    0,    0,    0,    0,  155,  299,  299,    0,  300,
894   299,  300,    0,    0,  300,  300,    0,  300,  300,  300,
895   300,  300,  300,  300,  300,  300,  300,  300,  300,    0,
896     0,    0,  300,    0,    0,    0,  300,    0,    0,    0,
897     0,  300,  300,  300,    0,    0,    0,    0,  311,    0,
898   311,  300,  300,  311,  311,  300,  311,  311,  311,  311,
899   311,  311,  311,  311,  311,  311,  311,  311,    0,    0,
900     0,  311,    0,    0,    0,  311,    0,    0,    0,    0,
901   311,  311,  311,    0,    0,    0,    0,    0,    0,  296,
902   311,  311,    0,  312,  311,  312,    0,    0,  312,  312,
903     0,  312,  312,  312,  312,  312,  312,  312,  312,  312,
904   312,  312,  312,    0,    0,    0,  312,    0,    0,    0,
905   312,    0,    0,    0,    0,  312,  312,  312,  297,    0,
906     0,    0,  315,    0,  315,  312,  312,  315,  315,  312,
907   315,  315,  315,  315,  315,  315,  315,  315,  315,  315,
908   315,  315,    0,    0,    0,  315,    0,    0,    0,  315,
909     0,    0,    0,    0,  315,  315,  315,  298,    0,    0,
910     0,  319,    0,  319,  315,  315,  319,  319,  315,  319,
911   319,  319,  319,  319,  319,  319,  319,  319,  319,  319,
912   319,    0,    0,    0,  319,    0,    0,    0,  319,    0,
913     0,    0,    0,  319,  319,  319,  299,    0,    0,    0,
914   294,    0,  294,  319,  319,  294,  294,  319,  294,  294,
915   294,  294,  294,  294,  294,  294,  294,  294,  294,  294,
916     0,    0,    0,  294,    0,    0,    0,  294,    0,    0,
917     0,    0,  294,  294,  294,    0,    0,    0,    0,    0,
918     0,  300,  294,  294,    0,  295,  294,  295,    0,    0,
919   295,  295,    0,  295,  295,  295,  295,  295,  295,  295,
920   295,  295,  295,  295,  295,    0,    0,    0,  295,    0,
921     0,    0,  295,    0,    0,    0,    0,  295,  295,  295,
922   311,    0,    0,    0,  314,    0,  314,  295,  295,  314,
923   314,  295,  314,  314,  314,  314,  314,  314,  314,  314,
924   314,  314,  314,  314,    0,    0,    0,  314,    0,    0,
925     0,  314,    0,    0,    0,    0,  314,  314,  314,    0,
926     0,    0,    0,    0,    0,  312,  314,  314,    0,  310,
927   314,  310,    0,    0,  310,  310,    0,  310,  310,  310,
928   310,  310,  310,  310,  310,  310,  310,  310,  310,    0,
929     0,    0,  310,    0,    0,    0,  310,    0,    0,    0,
930     0,  310,  310,  310,  315,    0,    0,    0,  322,    0,
931   322,  310,  310,  322,  322,  310,  322,  322,  322,  322,
932   322,  322,  322,  322,  322,  322,  322,  322,    0,    0,
933     0,  322,    0,    0,    0,  322,    0,    0,    0,    0,
934   322,  322,  322,  319,    0,    0,    0,  327,    0,  327,
935   322,  322,  327,  327,  322,  327,  327,  327,  327,  327,
936   327,  327,  327,  327,  327,  327,  327,    0,    0,    0,
937   327,    0,    0,    0,  327,    0,    0,    0,    0,  327,
938   327,  327,  294,    0,    0,    0,  328,    0,  328,  327,
939   327,  328,  328,  327,  328,  328,  328,  328,  328,  328,
940   328,  328,  328,  328,  328,  328,    0,    0,    0,  328,
941     0,    0,    0,  328,    0,    0,    0,    0,  328,  328,
942   328,    0,    0,    0,    0,    0,    0,  295,  328,  328,
943     0,  329,  328,  329,    0,    0,  329,  329,    0,  329,
944   329,  329,  329,  329,  329,  329,  329,  329,  329,  329,
945   329,    0,    0,    0,  329,    0,    0,    0,  329,    0,
946     0,    0,    0,  329,  329,  329,  314,    0,    0,    0,
947   330,    0,  330,  329,  329,  330,  330,  329,  330,  330,
948   330,  330,  330,  330,  330,  330,  330,  330,  330,  330,
949     0,    0,    0,  330,    0,    0,    0,  330,    0,    0,
950     0,    0,  330,  330,  330,    0,    0,    0,    0,    0,
951     0,  310,  330,  330,    0,  331,  330,  331,    0,    0,
952   331,  331,    0,  331,  331,  331,  331,  331,  331,  331,
953   331,  331,  331,  331,  331,    0,    0,    0,  331,    0,
954     0,    0,  331,    0,    0,    0,    0,  331,  331,  331,
955   322,    0,    0,    0,  313,    0,  313,  331,  331,  313,
956   313,  331,  313,  313,  313,  313,  313,  313,  313,  313,
957   313,  313,  313,  313,    0,    0,    0,  313,    0,    0,
958     0,  313,    0,    0,    0,    0,  313,  313,  313,  327,
959     0,    0,    0,  308,    0,  308,  313,  313,  308,  308,
960   313,  308,  308,  308,  308,  308,  308,  308,  308,  308,
961   308,  308,  308,    0,    0,    0,  308,    0,    0,    0,
962   308,    0,    0,    0,    0,  308,  308,  308,  328,    0,
963     0,    0,  309,    0,  309,  308,  308,  309,  309,  308,
964   309,  309,  309,  309,  309,  309,  309,  309,  309,  309,
965   309,  309,    0,    0,    0,  309,    0,    0,    0,  309,
966     0,    0,    0,    0,  309,  309,  309,    0,    0,    0,
967     0,    0,    0,  329,  309,  309,    0,  345,  309,  345,
968     0,    0,  345,  345,    0,  345,  345,  345,  345,  345,
969     0,    0,  345,  345,  345,  345,  345,    0,    0,    0,
970   345,    0,    0,    0,  345,    0,    0,    0,    0,  345,
971   345,  345,  330,    0,    0,    0,  346,    0,  346,  345,
972   345,  346,  346,  345,  346,  346,  346,  346,  346,    0,
973     0,  346,  346,  346,  346,  346,    0,    0,    0,  346,
974     0,    0,    0,  346,    0,    0,    0,    0,  346,  346,
975   346,    0,    0,    0,    0,    0,    0,  331,  346,  346,
976     0,  347,  346,  347,    0,    0,  347,  347,    0,  347,
977   347,  347,  347,  347,    0,    0,  347,  347,  347,  347,
978   347,    0,    0,    0,  347,    0,    0,    0,  347,    0,
979     0,    0,    0,  347,  347,  347,  313,    0,    0,    0,
980   342,    0,  342,  347,  347,  342,  342,  347,    0,    0,
981   342,  342,  342,    0,    0,  342,  342,  342,  342,  342,
982     0,    0,    0,  342,    0,    0,    0,  342,    0,    0,
983     0,    0,  342,  342,  342,  308,    0,    0,    0,  343,
984     0,  343,  342,  342,  343,  343,  342,    0,    0,  343,
985   343,  343,    0,    0,  343,  343,  343,  343,  343,    0,
986     0,    0,  343,    0,    0,    0,  343,    0,    0,    0,
987     0,  343,  343,  343,  309,    0,    0,    0,  344,    0,
988   344,  343,  343,  344,  344,  343,    0,    0,  344,  344,
989   344,    0,    0,  344,  344,  344,  344,  344,    0,    0,
990     0,  344,    0,    0,    0,  344,    0,    0,    0,    0,
991   344,  344,  344,    0,    0,    0,    0,    0,    0,  345,
992   344,  344,    0,  340,  344,  340,    0,    0,  340,  340,
993     0,    0,    0,  340,  340,  340,    0,    0,    0,    0,
994   340,  340,  340,    0,    0,    0,  340,    0,    0,    0,
995   340,    0,    0,    0,    0,  340,  340,  340,  346,    0,
996     0,    0,  341,    0,  341,  340,  340,  341,  341,  340,
997     0,    0,  341,  341,  341,    0,    0,    0,    0,  341,
998   341,  341,    0,    0,    0,  341,    0,    0,    0,  341,
999     0,    0,    0,    0,  341,  341,  341,    0,    0,    0,
1000     0,    0,    0,  347,  341,  341,    0,  337,  341,  337,
1001     0,    0,  337,  337,    0,    0,    0,    0,  337,  337,
1002     0,    0,    0,    0,  337,  337,  337,    0,    0,    0,
1003   337,    0,    0,    0,  337,    0,    0,    0,    0,  337,
1004   337,  337,  342,    0,    0,    0,  338,    0,  338,  337,
1005   337,  338,  338,  337,    0,    0,    0,  338,  338,    0,
1006     0,    0,    0,  338,  338,  338,    0,    0,    0,  338,
1007     0,    0,    0,  338,    0,    0,    0,    0,  338,  338,
1008   338,  343,    0,    0,    0,  339,    0,  339,  338,  338,
1009   339,  339,  338,    0,    0,    0,  339,  339,    0,    0,
1010     0,    0,  339,  339,  339,    0,    0,    0,  339,    0,
1011     0,    0,  339,    0,    0,    0,    0,  339,  339,  339,
1012   344,    0,    0,    0,    0,    0,    0,  339,  339,    0,
1013     0,  339,    0,    0,    0,    0,    0,    0,    0,    0,
1014     7,    8,    9,   10,   11,    0,   12,  662,  101,    0,
1015     0,  102,  103,  663,    0,    0,    0,    0,    0,    0,
1016   104,  105,  106,    0,    0,  340,    0,    0,    0,    0,
1017     0,    0,    0,    0,  107,  108,    0,    0,  109,  110,
1018     0,    0,    0,    0,    0,    0,    0,   14,    0,    0,
1019   111,  112,  113,  114,  115,   20,   21,   22,   23,   24,
1020    25,   26,    0,   27,  341,   28,   29,  116,  117,  118,
1021    33,   34,   35,  119,   37,   38,   39,   40,  120,  121,
1022   122,   44,  123,   46,   47,  124,   49,    0,  125,  126,
1023   127,  128,  129,  130,  131,   13,  132,    0,    0,    0,
1024     7,    8,    9,   10,   11,    0,   12,    0,  101,  337,
1025     0,  102,  103,    0,    0,    0,    0,    0,    0,    0,
1026   104,  105,  106,    0,    0,    0,    0,    0,    0,    0,
1027     0,    0,    0,    0,  107,  108,    0,    0,  109,  110,
1028     0,    0,    0,    0,    0,    0,    0,   14,  338,    0,
1029   111,  112,  113,  114,  115,   20,   21,   22,   23,   24,
1030    25,   26,  312,  313,  314,   28,   29,  116,  117,  118,
1031    33,   34,   35,  119,   37,   38,   39,  315,  120,  121,
1032   122,   44,  123,   46,   47,  124,   49,  339,  125,  126,
1033   127,  128,  129,  130,  131,   13,  132,  268,    8,    9,
1034    10,   11,  210,   12,    0,  101,    0,    0,  102,  103,
1035     0,    0,    0,    0,    0,    0,    0,  104,  105,  106,
1036     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
1037     0,  107,  108,    0,    0,  109,  110,    0,    0,    0,
1038     0,    0,    0,    0,   14,    0,    0,  111,  112,  113,
1039   114,  115,   20,  269,   22,   23,   24,   25,   26,    0,
1040    27,    0,   28,   29,  116,  117,  118,   33,   34,   35,
1041   119,   37,   38,   39,   40,  120,  121,  122,   44,  123,
1042    46,   47,  124,   49,    0,  125,  126,  127,  128,  129,
1043   130,  131,   13,  132,    7,    8,    9,   10,   11,    0,
1044    12,  653,  101,    0,    0,  102,  103,    0,    0,    0,
1045     0,    0,    0,    0,  104,  105,  106,    0,    0,    0,
1046     0,    0,    0,    0,    0,    0,    0,    0,  107,  108,
1047     0,    0,  109,  110,    0,    0,    0,    0,    0,    0,
1048     0,   14,    0,    0,  111,  112,  113,  114,  115,   20,
1049    21,   22,   23,   24,   25,   26,    0,   27,    0,   28,
1050    29,  116,  117,  118,   33,   34,   35,  119,   37,   38,
1051    39,   40,  120,  121,  122,   44,  123,   46,   47,  124,
1052    49,    0,  125,  126,  127,  128,  129,  130,  131,   13,
1053   132,    7,    8,    9,   10,   11,    0,   12,    0,  101,
1054     0,    0,  102,  103,    0,    0,    0,    0,    0,    0,
1055     0,  104,  105,  106,    0,    0,    0,    0,    0,    0,
1056     0,    0,    0,    0,    0,  107,  108,    0,    0,  109,
1057   110,    0,    0,    0,    0,    0,    0,    0,   14,    0,
1058     0,  111,  112,  113,  114,  115,   20,   21,   22,   23,
1059    24,   25,   26,    0,   27,    0,   28,   29,  116,  117,
1060   118,   33,   34,   35,  119,   37,   38,   39,   40,  120,
1061   121,  122,   44,  123,   46,   47,  124,   49,    0,  125,
1062   126,  127,  128,  129,  130,  131,   13,  132,    7,    8,
1063     9,   10,   11,    0,   12,    0,  101,    0,    0,  102,
1064   103,    0,    0,    0,    0,    0,    0,    0,  104,  105,
1065   106,    0,    0,    0,    0,    0,    0,    0,    0,    0,
1066     0,    0,  107,  108,    0,    0,  109,  110,    0,    0,
1067     0,    0,    0,    0,    0,   14,    0,    0,  111,  112,
1068   113,  114,  115,   20,   21,   22,   23,   24,   25,   26,
1069     0,   27,    0,   28,   29,  116,  117,  118,   33,   34,
1070    35,  119,   37,   38,   39,  274,  120,  121,  122,   44,
1071   123,   46,   47,  124,   49,    0,  125,  126,  127,  128,
1072   129,  130,  131,   13,  132,    7,    8,    9,   10,   11,
1073     0,   12,    0,  101,    0,    0,  102,  103,    0,    0,
1074     0,    0,    0,    0,    0,  104,  105,  106,    0,    0,
1075     0,    0,    0,    0,    0,    0,    0,    0,    0,  107,
1076   108,    0,    0,  109,  110,    0,    0,    0,    0,    0,
1077     0,    0,   14,    0,    0,  111,  112,  113,  114,  115,
1078    20,   21,   22,   23,   24,   25,   26,    0,   27,    0,
1079    28,   29,  116,  117,  118,   33,   34,   35,  119,   37,
1080    38,   39,  315,  120,  121,  122,   44,  123,   46,   47,
1081   124,   49,    0,  125,  126,  127,  128,  129,  130,  131,
1082    13,  132,    7,    8,    9,   10,   11,    0,   12,    0,
1083   101,    0,    0,  102,  103,    0,    0,    0,    0,    0,
1084     0,    0,  104,  105,  106,    0,    0,    0,    0,    0,
1085     0,    0,    0,    0,    0,    0,  107,  108,    0,    0,
1086   109,  110,    0,    0,    0,    0,    0,    0,    0,   14,
1087     0,    0,  111,  112,  113,  114,  115,   20,   21,   22,
1088    23,   24,   25,   26,    0,   27,    0,   28,   29,  116,
1089   117,  118,   33,   34,   35,  119,   37,  481,  482,   40,
1090   120,  121,  122,   44,  123,   46,   47,  124,   49,    0,
1091   125,  126,  127,  128,  129,  130,  131,   13,  132,    7,
1092     8,    9,   10,   11,    0,   12,    0,    0,    0,    0,
1093     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
1094     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
1095     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
1096     0,    0,    0,    0,    0,    0,   14,    0,    0,   15,
1097    16,   17,   18,   19,   20,   21,   22,   23,   24,   25,
1098    26,  321,   27,    0,   28,   29,   30,   31,   32,   33,
1099    34,   35,   36,   37,   38,   39,   40,   41,   42,   43,
1100    44,   45,   46,   47,   48,   49,    0,    0,   50,   51,
1101    52,   53,    0,   54,   13,   55,    0,    0,    0,    0,
1102     0,    0,  322,    0,  323,  324,  325,  326,  327,    0,
1103     0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
1104    29,  328,  329,  330,  331,  332,  333,  334,    0,    0,
1105     0,    0,  335,  336,  337,   44,  338,   46,   47,  339,
1106     0,    0,    0,  340,  341,  342,  343,    0,  344,    0,
1107   345,
1108 };
1109 static const YYINT yycheck[] = {                          5,
1110   162,    8,  125,   15,   17,   17,    5,  428,  429,  430,
1111   431,   18,   17,    5,   18,   18,   18,  593,  497,  502,
1112    18,   18,   18,  104,  105,  106,  691,    6,    7,   57,
1113     8,    8,   11,  195,  196,  197,  198,  199,  161,  506,
1114    75,   18,   29,   30,  206,   14,  208,   75,   31,   32,
1115    33,  213,   34,   88,   37,  217,   25,   26,   41,   87,
1116     8,    1,   34,   46,   47,   16,    6,   45,  547,   10,
1117    11,   77,   78,  556,  739,   81,   82,   83,   77,   78,
1118    80,   66,   81,   82,   83,   77,   78,   16,   94,   81,
1119    82,   83,   98,  200,  201,   94,  203,   45,  565,   98,
1120   207,   42,   94,  103,   10,   11,   98,   20,  215,  216,
1121    31,   32,   33,  220,  221,   94,   37,   57,  698,   14,
1122    41,   16,    8,  285,   19,   46,   47,   10,   11,   15,
1123    31,   32,   33,  709,    8,  715,   37,   43,   10,   11,
1124    41,   15,   14,  149,   14,   46,   47,  153,  229,  230,
1125   149,  157,  488,  489,  153,   25,   26,  149,  157,   20,
1126    43,  153,  162,   20,  744,  157,   16,   48,   31,   32,
1127    33,   31,   32,   33,   37,   56,   57,   37,   41,   60,
1128    14,   41,   14,   46,   47,   16,   46,   47,   16,   10,
1129    11,   25,   26,   25,   26,  195,  196,  197,  198,  199,
1130    42,   43,   44,   45,  204,  205,  206,  314,  208,   31,
1131    32,   33,   13,  213,  214,   37,   14,  217,   14,   41,
1132   641,   42,   13,   19,   46,   47,   13,   25,   26,   24,
1133    14,  237,  653,   15,  234,   19,  657,   20,  237,   13,
1134    20,  662,   13,  256,  256,   25,   26,  668,   16,  256,
1135    13,  256,  256,  256,  256,   31,   32,   33,  256,  256,
1136   256,   37,   20,   42,   43,   41,   45,   25,   26,   20,
1137    46,   47,  379,  256,   25,   26,  383,   42,   43,  386,
1138    45,  388,   13,   10,   11,  285,  393,   14,   13,   31,
1139    32,   33,  399,   10,   11,   37,   16,   14,   16,   41,
1140   407,   13,  409,   13,   46,   47,   13,  313,   63,   64,
1141    65,   14,  312,   16,  313,  736,   19,   20,   13,   22,
1142    23,   24,   25,   26,   27,   28,   29,   30,   31,   32,
1143    33,   13,   10,   11,   37,  256,   14,   16,   41,   25,
1144    26,   22,   23,   46,   47,   48,   61,   62,   63,   64,
1145    65,   27,   28,   56,   57,  256,   13,   60,   10,   11,
1146    58,   59,   76,   77,   13,  527,  372,  703,  704,  705,
1147    14,  707,  708,  372,   13,   19,   20,   13,   22,   23,
1148    24,   25,   26,   27,   28,   29,   30,   49,   50,   13,
1149   513,  514,  352,  256,   61,   62,  256,   10,   11,  222,
1150   223,  524,  227,  228,   13,  225,  226,   13,  515,  516,
1151    13,  518,   13,  413,   13,   15,  523,   13,    7,   16,
1152    14,   16,  428,  429,  430,  431,  588,  589,   16,  428,
1153   429,  430,  431,   15,  256,   16,  428,  429,  430,  431,
1154    14,   19,   16,   19,   14,   19,   20,   14,   22,   23,
1155    24,   25,   26,   27,   28,   29,   30,   31,   32,   33,
1156    19,   14,   14,   37,   19,   19,   14,   41,   14,   20,
1157    20,   14,   46,   47,   48,   19,  583,  584,   14,   19,
1158   256,   14,   56,   57,   14,   19,   60,   14,   14,   57,
1159    14,  497,   16,   14,   19,   19,   19,   14,  497,   14,
1160    19,   14,  502,   19,  510,  497,  506,   31,   32,   33,
1161    13,  510,   16,   37,  256,   14,   16,   41,  510,   14,
1162    57,   19,   46,   47,   48,   19,   14,  527,   18,  529,
1163    16,   20,   56,   57,    8,   20,   60,  497,   20,   20,
1164    19,  547,  502,   19,   19,   55,  506,   20,  547,   55,
1165   510,    8,   16,  256,   20,  547,  556,   16,   20,   20,
1166    20,   15,   20,   18,   16,  565,   16,   18,  574,   16,
1167    16,   42,   16,   18,   16,  574,   13,   18,   16,   46,
1168   540,   16,  574,   16,   16,   16,   16,  547,  588,  589,
1169   550,    8,   45,   13,   43,   14,  556,   18,   46,   14,
1170    16,   44,   16,   16,    8,  565,   18,   16,   18,   16,
1171    16,   14,   14,  573,  574,   14,   19,   14,  618,   22,
1172    23,   24,   25,   26,   27,   28,   29,   30,   14,   14,
1173   630,   14,  592,  593,   14,  641,   14,    8,  426,   14,
1174    14,   14,  641,   44,   16,   14,   16,  653,  536,  641,
1175    89,  657,  149,  312,  653,  313,  662,  153,  657,  730,
1176   604,  653,  668,  662,   98,  657,  626,  647,   94,  668,
1177   662,  613,  621,   49,  157,   51,  668,   53,   54,   55,
1178   556,  565,  256,  643,  644,  574,  629,  626,  648,  547,
1179   684,   67,   68,   69,   70,   71,   72,   73,   74,  529,
1180   464,  385,  224,   79,   80,  665,   82,   83,   84,   85,
1181   102,  671,  522,  518,   90,   91,   -1,   93,   -1,   95,
1182    -1,   -1,   -1,   -1,  684,   -1,   -1,   -1,   -1,   -1,
1183   736,  691,  256,   -1,   -1,   -1,  696,  736,  698,   -1,
1184    -1,   -1,   -1,   -1,  736,   -1,   -1,   -1,   -1,  709,
1185    -1,   -1,   -1,   -1,   -1,  715,   -1,   -1,   -1,  719,
1186     1,    2,    3,    4,    5,   -1,    7,   -1,    9,   -1,
1187   730,   12,   13,   -1,   -1,  735,   -1,   18,   -1,  739,
1188    21,   22,   23,  743,  744,   -1,   -1,  747,   -1,   -1,
1189    -1,   -1,   -1,   -1,   35,   36,   -1,   -1,   39,   40,
1190    -1,   -1,   -1,   -1,   -1,   -1,   -1,   48,   -1,   -1,
1191    51,   52,   53,   54,   55,   56,   57,   58,   59,   60,
1192    61,   62,   -1,   64,   -1,   66,   67,   68,   69,   70,
1193    71,   72,   73,   74,   75,   76,   77,   78,   79,   80,
1194    81,   82,   83,   84,   85,   86,   87,   -1,   89,   90,
1195    91,   92,   93,   94,   95,   96,   97,    1,    2,    3,
1196     4,    5,   -1,    7,   -1,    9,   -1,   -1,   12,   13,
1197    -1,   -1,   -1,   -1,   18,   16,   -1,   21,   22,   23,
1198    -1,   22,   23,   24,   25,   26,   27,   28,   29,   30,
1199    -1,   35,   36,   -1,   -1,   39,   40,   -1,   -1,   -1,
1200    -1,   -1,   -1,   -1,   48,   -1,   -1,   51,   52,   53,
1201    54,   55,   56,   57,   58,   59,   60,   61,   62,   -1,
1202    64,   -1,   66,   67,   68,   69,   70,   71,   72,   73,
1203    74,   75,   76,   77,   78,   79,   80,   81,   82,   83,
1204    84,   85,   86,   87,   -1,   89,   90,   91,   92,   93,
1205    94,   95,   96,   97,   20,   -1,   22,   23,   24,   25,
1206    26,   27,   28,   29,   30,   -1,    1,    2,    3,    4,
1207     5,   -1,    7,   -1,    9,   -1,   -1,   12,   13,   -1,
1208    -1,   -1,   -1,   18,   16,   -1,   21,   22,   23,   -1,
1209    22,   23,   24,   25,   26,   27,   28,   29,   30,   -1,
1210    35,   36,   -1,   -1,   39,   40,   -1,   -1,   -1,   -1,
1211    -1,   -1,   -1,   48,   -1,  256,   51,   52,   53,   54,
1212    55,   56,   57,   58,   59,   60,   61,   62,   -1,   64,
1213    -1,   66,   67,   68,   69,   70,   71,   72,   73,   74,
1214    75,   76,   77,   78,   79,   80,   81,   82,   83,   84,
1215    85,   86,   87,   -1,   89,   90,   91,   92,   93,   94,
1216    95,   96,   97,    1,    2,    3,    4,    5,   -1,    7,
1217    -1,    9,   -1,   -1,   12,   13,   -1,   -1,   -1,   -1,
1218    18,   -1,   -1,   21,   22,   23,   20,   -1,   22,   23,
1219    24,   25,   26,   27,   28,   29,   30,   35,   36,   -1,
1220    -1,   39,   40,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1221    48,   -1,  256,   51,   52,   53,   54,   55,   56,   57,
1222    58,   59,   60,   61,   62,   -1,   64,   -1,   66,   67,
1223    68,   69,   70,   71,   72,   73,   74,   75,   76,   77,
1224    78,   79,   80,   81,   82,   83,   84,   85,   86,   87,
1225    -1,   89,   90,   91,   92,   93,   94,   95,   96,   97,
1226    -1,   -1,   -1,   -1,   49,   -1,   51,   52,   53,   54,
1227    55,   -1,   -1,   -1,   -1,    1,    2,    3,    4,    5,
1228    -1,    7,   67,   68,   69,   70,   -1,   72,   73,   74,
1229    16,   17,   -1,   -1,   79,   80,   81,   82,   83,   84,
1230    85,   86,   -1,   -1,   -1,   90,   91,   92,   93,   -1,
1231    95,   -1,   97,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1232    -1,  256,   48,   49,   50,   51,   52,   53,   54,   55,
1233    56,   57,   58,   59,   60,   61,   62,   -1,   64,   -1,
1234    66,   67,   68,   69,   70,   71,   72,   73,   74,   75,
1235    76,   77,   78,   79,   80,   81,   82,   83,   84,   85,
1236    86,   87,   -1,   -1,   90,   91,   92,   93,   -1,   95,
1237    96,   97,    1,    2,    3,    4,    5,   -1,    7,   -1,
1238    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   17,   98,
1239    99,  100,  101,  102,  103,  104,  105,  106,  107,  108,
1240   109,  110,  111,  112,  113,  114,  115,   -1,   -1,   -1,
1241    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,  256,   48,
1242    49,   50,   51,   52,   53,   54,   55,   56,   57,   58,
1243    59,   60,   61,   62,   -1,   64,   -1,   66,   67,   68,
1244    69,   70,   71,   72,   73,   74,   75,   76,   77,   78,
1245    79,   80,   81,   82,   83,   84,   85,   86,   87,   -1,
1246    -1,   90,   91,   92,   93,   -1,   95,   96,   97,   -1,
1247    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1248    -1,    1,    2,    3,    4,    5,   -1,    7,   -1,   -1,
1249    14,   -1,   -1,   -1,   -1,   19,   -1,   17,   22,   23,
1250    24,   25,   26,   27,   28,   29,   30,   -1,   -1,   -1,
1251    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1252    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   48,   -1,
1253   256,   51,   52,   53,   54,   55,   56,   57,   58,   59,
1254    60,   61,   62,   -1,   64,   -1,   66,   67,   68,   69,
1255    70,   71,   72,   73,   74,   75,   76,   77,   78,   79,
1256    80,   81,   82,   83,   84,   85,   86,   87,   -1,   -1,
1257    90,   91,   92,   93,   -1,   95,   96,   97,    1,    2,
1258     3,    4,    5,   -1,    7,   -1,   -1,   -1,   -1,   -1,
1259    -1,   -1,   -1,   -1,   17,   -1,   -1,   -1,   -1,   -1,
1260    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1261    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1262    -1,   -1,   -1,   -1,   -1,   48,   -1,  256,   51,   52,
1263    53,   54,   55,   56,   57,   58,   59,   60,   61,   62,
1264    -1,   64,   -1,   66,   67,   68,   69,   70,   71,   72,
1265    73,   74,   75,   76,   77,   78,   79,   80,   81,   82,
1266    83,   84,   85,   86,   87,   -1,   -1,   90,   91,   92,
1267    93,   -1,   95,   96,   97,   -1,   -1,   -1,   -1,   -1,
1268    -1,   -1,   -1,   -1,   -1,   -1,   -1,    1,    2,    3,
1269     4,    5,   -1,    7,   -1,   -1,   -1,   -1,   -1,   -1,
1270    -1,   -1,   -1,   17,   -1,   -1,   -1,   -1,   -1,   -1,
1271    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1272    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1273    -1,   -1,   -1,   -1,   48,   -1,  256,   51,   52,   53,
1274    54,   55,   56,   57,   58,   59,   60,   61,   62,   -1,
1275    64,   -1,   66,   67,   68,   69,   70,   71,   72,   73,
1276    74,   75,   76,   77,   78,   79,   80,   81,   82,   83,
1277    84,   85,   86,   87,   -1,   -1,   90,   91,   92,   93,
1278    -1,   95,   96,   97,    1,    2,    3,    4,    5,   -1,
1279     7,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1280    17,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1281    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1282    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1283    -1,   48,   -1,  256,   51,   52,   53,   54,   55,   56,
1284    57,   58,   59,   60,   61,   62,   -1,   64,   -1,   66,
1285    67,   68,   69,   70,   71,   72,   73,   74,   75,   76,
1286    77,   78,   79,   80,   81,   82,   83,   84,   85,   86,
1287    87,   -1,   -1,   90,   91,   92,   93,   -1,   95,   96,
1288    97,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1289    -1,   -1,   -1,    1,    2,    3,    4,    5,   -1,    7,
1290    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1291    18,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1292    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1293    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1294    48,   -1,  256,   51,   52,   53,   54,   55,   56,   57,
1295    58,   59,   60,   61,   62,   -1,   64,   -1,   66,   67,
1296    68,   69,   70,   71,   72,   73,   74,   75,   76,   77,
1297    78,   79,   80,   81,   82,   83,   84,   85,   86,   87,
1298    -1,   -1,   90,   91,   92,   93,   -1,   95,   96,   97,
1299     1,    2,    3,    4,    5,   -1,    7,   -1,   -1,   -1,
1300    -1,   -1,   -1,   -1,   -1,   -1,   -1,   18,   -1,   -1,
1301    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1302    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1303    -1,   -1,   -1,   -1,   -1,   -1,   -1,   48,   -1,  256,
1304    51,   52,   53,   54,   55,   56,   57,   58,   59,   60,
1305    61,   62,   -1,   64,   -1,   66,   67,   68,   69,   70,
1306    71,   72,   73,   74,   75,   76,   77,   78,   79,   80,
1307    81,   82,   83,   84,   85,   86,   87,   -1,   -1,   90,
1308    91,   92,   93,   -1,   95,   96,   97,   -1,   -1,   -1,
1309    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,    1,
1310     2,    3,    4,    5,   -1,    7,   -1,   -1,   -1,   -1,
1311    -1,   -1,   -1,   -1,   -1,   -1,   18,   -1,   -1,   -1,
1312    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1313    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1314    -1,   -1,   -1,   -1,   -1,   -1,   48,   -1,  256,   51,
1315    52,   53,   54,   55,   56,   57,   58,   59,   60,   61,
1316    62,   -1,   64,   -1,   66,   67,   68,   69,   70,   71,
1317    72,   73,   74,   75,   76,   77,   78,   79,   80,   81,
1318    82,   83,   84,   85,   86,   87,   -1,   -1,   90,   91,
1319    92,   93,   -1,   95,   96,   97,    1,    2,    3,    4,
1320     5,   -1,    7,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1321    -1,   -1,   -1,   18,   -1,   -1,   -1,   -1,   -1,   -1,
1322    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1323    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1324    -1,   -1,   -1,   48,   -1,  256,   51,   52,   53,   54,
1325    55,   56,   57,   58,   59,   60,   61,   62,   -1,   64,
1326    -1,   66,   67,   68,   69,   70,   71,   72,   73,   74,
1327    75,   76,   77,   78,   79,   80,   81,   82,   83,   84,
1328    85,   86,   87,   -1,   -1,   90,   91,   92,   93,   -1,
1329    95,   96,   97,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1330    -1,   -1,   -1,   -1,   -1,    1,    2,    3,    4,    5,
1331    -1,    7,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1332    -1,   17,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1333    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1334    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1335    -1,   -1,   48,   -1,  256,   51,   52,   53,   54,   55,
1336    56,   57,   58,   59,   60,   61,   62,   -1,   64,   -1,
1337    66,   67,   68,   69,   70,   71,   72,   73,   74,   75,
1338    76,   77,   78,   79,   80,   81,   82,   83,   84,   85,
1339    86,   87,   -1,   -1,   90,   91,   92,   93,   -1,   95,
1340    96,   97,    1,    2,    3,    4,    5,   -1,    7,   -1,
1341    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   17,   -1,
1342    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1343    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1344    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   48,
1345    -1,  256,   51,   52,   53,   54,   55,   56,   57,   58,
1346    59,   60,   61,   62,   -1,   64,   -1,   66,   67,   68,
1347    69,   70,   71,   72,   73,   74,   75,   76,   77,   78,
1348    79,   80,   81,   82,   83,   84,   85,   86,   87,   -1,
1349    -1,   90,   91,   92,   93,   -1,   95,   96,   97,   -1,
1350    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1351    -1,    1,    2,    3,    4,    5,   -1,    7,   -1,   -1,
1352    -1,   -1,   -1,   -1,   -1,   -1,   -1,   17,   -1,   -1,
1353    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1354    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1355    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   48,   -1,
1356   256,   51,   52,   53,   54,   55,   56,   57,   58,   59,
1357    60,   61,   62,   -1,   64,   -1,   66,   67,   68,   69,
1358    70,   71,   72,   73,   74,   75,   76,   77,   78,   79,
1359    80,   81,   82,   83,   84,   85,   86,   87,   -1,   -1,
1360    90,   91,   92,   93,   -1,   95,   96,   97,    1,    2,
1361     3,    4,    5,   -1,    7,   -1,   -1,   -1,   -1,   -1,
1362    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1363    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1364    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1365    -1,   -1,   -1,   -1,   -1,   48,   -1,  256,   51,   52,
1366    53,   54,   55,   56,   57,   58,   59,   60,   61,   62,
1367    -1,   64,   -1,   66,   67,   68,   69,   70,   71,   72,
1368    73,   74,   75,   76,   77,   78,   79,   80,   81,   82,
1369    83,   84,   85,   86,   87,   -1,   -1,   90,   91,   92,
1370    93,   -1,   95,   96,   97,   -1,   -1,   -1,   -1,   -1,
1371    -1,   -1,   -1,   -1,   -1,   -1,   -1,    1,    2,    3,
1372     4,    5,   -1,    7,   -1,   -1,   -1,   -1,   -1,   -1,
1373    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1374    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1375    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1376    -1,   -1,   -1,   -1,   48,   -1,  256,   51,   52,   53,
1377    54,   55,   56,   57,   58,   59,   60,   61,   62,   -1,
1378    64,   -1,   66,   67,   68,   69,   70,   71,   72,   73,
1379    74,   75,   76,   77,   78,   79,   80,   81,   82,   83,
1380    84,   85,   86,   87,   -1,   -1,   90,   91,   92,   93,
1381    -1,   95,   96,   97,    1,    2,    3,    4,    5,   -1,
1382     7,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1383    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1384    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1385    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1386    -1,   48,   -1,  256,   51,   52,   53,   54,   55,   56,
1387    57,   58,   59,   60,   61,   62,   -1,   64,   -1,   66,
1388    67,   68,   69,   70,   71,   72,   73,   74,   75,   76,
1389    77,   78,   79,   80,   81,   82,   83,   84,   85,   86,
1390    87,   -1,   -1,   90,   91,   92,   93,   -1,   95,   96,
1391    97,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1392    -1,   -1,   -1,    1,    2,    3,    4,    5,   -1,    7,
1393    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1394    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1395    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1396    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1397    48,   -1,  256,   51,   52,   53,   54,   55,   56,   57,
1398    58,   59,   60,   61,   62,   -1,   64,   -1,   66,   67,
1399    68,   69,   70,   71,   72,   73,   74,   75,   76,   77,
1400    78,   79,   80,   81,   82,   83,   84,   85,   86,   87,
1401    -1,   -1,   90,   91,   92,   93,   -1,   95,   96,   97,
1402     1,    2,    3,    4,    5,   -1,    7,   -1,   -1,   -1,
1403    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1404    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1405    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1406    -1,   -1,   -1,   -1,   -1,   -1,   -1,   48,   -1,  256,
1407    51,   52,   53,   54,   55,   56,   57,   58,   59,   60,
1408    61,   62,   -1,   64,   -1,   66,   67,   68,   69,   70,
1409    71,   72,   73,   74,   75,   76,   77,   78,   79,   80,
1410    81,   82,   83,   84,   85,   86,   87,   -1,   -1,   90,
1411    91,   92,   93,   -1,   95,   96,   97,   14,   -1,   16,
1412    -1,   -1,   19,   20,   -1,   22,   23,   24,   25,   26,
1413    27,   28,   29,   30,   31,   32,   33,   -1,   -1,   -1,
1414    37,   -1,   -1,   -1,   41,   -1,   -1,   -1,   -1,   46,
1415    47,   48,   -1,   -1,   -1,   -1,   14,   -1,   16,   56,
1416    57,   19,   20,   60,   22,   23,   24,   25,   26,   27,
1417    28,   29,   30,   31,   32,   33,   -1,   -1,  256,   37,
1418    -1,   -1,   -1,   41,   -1,   -1,   -1,   -1,   46,   47,
1419    48,   -1,   -1,   -1,   -1,   14,   -1,   16,   56,   57,
1420    19,   20,   60,   22,   23,   24,   25,   26,   27,   28,
1421    29,   30,   31,   32,   33,   -1,   -1,   -1,   37,   -1,
1422    -1,   -1,   41,   -1,   -1,   -1,   -1,   46,   47,   48,
1423    -1,   -1,   -1,   -1,   14,   -1,   16,   56,   57,   19,
1424    20,   60,   22,   23,   24,   25,   26,   27,   28,   29,
1425    30,   31,   32,   33,   -1,   -1,   -1,   37,   -1,   -1,
1426    -1,   41,   -1,   -1,   -1,   -1,   46,   47,   48,   -1,
1427    -1,   -1,   -1,   -1,   -1,  256,   56,   57,   -1,   14,
1428    60,   16,   -1,   -1,   19,   20,   -1,   22,   23,   24,
1429    25,   26,   27,   28,   29,   30,   31,   32,   33,   -1,
1430    -1,   -1,   37,   -1,   -1,   -1,   41,   -1,   -1,   -1,
1431    -1,   46,   47,   48,   -1,   -1,   -1,   -1,   14,   -1,
1432    16,   56,   57,   19,   20,   60,   22,   23,   24,   25,
1433    26,   27,   28,   29,   30,   31,   32,   33,   -1,   -1,
1434    -1,   37,   -1,   -1,   -1,   41,   -1,   -1,   -1,   -1,
1435    46,   47,   48,   -1,   -1,   -1,   -1,   -1,   -1,  256,
1436    56,   57,   -1,   14,   60,   16,   -1,   -1,   19,   20,
1437    -1,   22,   23,   24,   25,   26,   27,   28,   29,   30,
1438    31,   32,   33,   -1,   -1,   -1,   37,   -1,   -1,   -1,
1439    41,   -1,   -1,   -1,   -1,   46,   47,   48,  256,   -1,
1440    -1,   -1,   14,   -1,   16,   56,   57,   19,   20,   60,
1441    22,   23,   24,   25,   26,   27,   28,   29,   30,   31,
1442    32,   33,   -1,   -1,   -1,   37,   -1,   -1,   -1,   41,
1443    -1,   -1,   -1,   -1,   46,   47,   48,  256,   -1,   -1,
1444    -1,   14,   -1,   16,   56,   57,   19,   20,   60,   22,
1445    23,   24,   25,   26,   27,   28,   29,   30,   31,   32,
1446    33,   -1,   -1,   -1,   37,   -1,   -1,   -1,   41,   -1,
1447    -1,   -1,   -1,   46,   47,   48,  256,   -1,   -1,   -1,
1448    14,   -1,   16,   56,   57,   19,   20,   60,   22,   23,
1449    24,   25,   26,   27,   28,   29,   30,   31,   32,   33,
1450    -1,   -1,   -1,   37,   -1,   -1,   -1,   41,   -1,   -1,
1451    -1,   -1,   46,   47,   48,   -1,   -1,   -1,   -1,   -1,
1452    -1,  256,   56,   57,   -1,   14,   60,   16,   -1,   -1,
1453    19,   20,   -1,   22,   23,   24,   25,   26,   27,   28,
1454    29,   30,   31,   32,   33,   -1,   -1,   -1,   37,   -1,
1455    -1,   -1,   41,   -1,   -1,   -1,   -1,   46,   47,   48,
1456   256,   -1,   -1,   -1,   14,   -1,   16,   56,   57,   19,
1457    20,   60,   22,   23,   24,   25,   26,   27,   28,   29,
1458    30,   31,   32,   33,   -1,   -1,   -1,   37,   -1,   -1,
1459    -1,   41,   -1,   -1,   -1,   -1,   46,   47,   48,   -1,
1460    -1,   -1,   -1,   -1,   -1,  256,   56,   57,   -1,   14,
1461    60,   16,   -1,   -1,   19,   20,   -1,   22,   23,   24,
1462    25,   26,   27,   28,   29,   30,   31,   32,   33,   -1,
1463    -1,   -1,   37,   -1,   -1,   -1,   41,   -1,   -1,   -1,
1464    -1,   46,   47,   48,  256,   -1,   -1,   -1,   14,   -1,
1465    16,   56,   57,   19,   20,   60,   22,   23,   24,   25,
1466    26,   27,   28,   29,   30,   31,   32,   33,   -1,   -1,
1467    -1,   37,   -1,   -1,   -1,   41,   -1,   -1,   -1,   -1,
1468    46,   47,   48,  256,   -1,   -1,   -1,   14,   -1,   16,
1469    56,   57,   19,   20,   60,   22,   23,   24,   25,   26,
1470    27,   28,   29,   30,   31,   32,   33,   -1,   -1,   -1,
1471    37,   -1,   -1,   -1,   41,   -1,   -1,   -1,   -1,   46,
1472    47,   48,  256,   -1,   -1,   -1,   14,   -1,   16,   56,
1473    57,   19,   20,   60,   22,   23,   24,   25,   26,   27,
1474    28,   29,   30,   31,   32,   33,   -1,   -1,   -1,   37,
1475    -1,   -1,   -1,   41,   -1,   -1,   -1,   -1,   46,   47,
1476    48,   -1,   -1,   -1,   -1,   -1,   -1,  256,   56,   57,
1477    -1,   14,   60,   16,   -1,   -1,   19,   20,   -1,   22,
1478    23,   24,   25,   26,   27,   28,   29,   30,   31,   32,
1479    33,   -1,   -1,   -1,   37,   -1,   -1,   -1,   41,   -1,
1480    -1,   -1,   -1,   46,   47,   48,  256,   -1,   -1,   -1,
1481    14,   -1,   16,   56,   57,   19,   20,   60,   22,   23,
1482    24,   25,   26,   27,   28,   29,   30,   31,   32,   33,
1483    -1,   -1,   -1,   37,   -1,   -1,   -1,   41,   -1,   -1,
1484    -1,   -1,   46,   47,   48,   -1,   -1,   -1,   -1,   -1,
1485    -1,  256,   56,   57,   -1,   14,   60,   16,   -1,   -1,
1486    19,   20,   -1,   22,   23,   24,   25,   26,   27,   28,
1487    29,   30,   31,   32,   33,   -1,   -1,   -1,   37,   -1,
1488    -1,   -1,   41,   -1,   -1,   -1,   -1,   46,   47,   48,
1489   256,   -1,   -1,   -1,   14,   -1,   16,   56,   57,   19,
1490    20,   60,   22,   23,   24,   25,   26,   27,   28,   29,
1491    30,   31,   32,   33,   -1,   -1,   -1,   37,   -1,   -1,
1492    -1,   41,   -1,   -1,   -1,   -1,   46,   47,   48,  256,
1493    -1,   -1,   -1,   14,   -1,   16,   56,   57,   19,   20,
1494    60,   22,   23,   24,   25,   26,   27,   28,   29,   30,
1495    31,   32,   33,   -1,   -1,   -1,   37,   -1,   -1,   -1,
1496    41,   -1,   -1,   -1,   -1,   46,   47,   48,  256,   -1,
1497    -1,   -1,   14,   -1,   16,   56,   57,   19,   20,   60,
1498    22,   23,   24,   25,   26,   27,   28,   29,   30,   31,
1499    32,   33,   -1,   -1,   -1,   37,   -1,   -1,   -1,   41,
1500    -1,   -1,   -1,   -1,   46,   47,   48,   -1,   -1,   -1,
1501    -1,   -1,   -1,  256,   56,   57,   -1,   14,   60,   16,
1502    -1,   -1,   19,   20,   -1,   22,   23,   24,   25,   26,
1503    -1,   -1,   29,   30,   31,   32,   33,   -1,   -1,   -1,
1504    37,   -1,   -1,   -1,   41,   -1,   -1,   -1,   -1,   46,
1505    47,   48,  256,   -1,   -1,   -1,   14,   -1,   16,   56,
1506    57,   19,   20,   60,   22,   23,   24,   25,   26,   -1,
1507    -1,   29,   30,   31,   32,   33,   -1,   -1,   -1,   37,
1508    -1,   -1,   -1,   41,   -1,   -1,   -1,   -1,   46,   47,
1509    48,   -1,   -1,   -1,   -1,   -1,   -1,  256,   56,   57,
1510    -1,   14,   60,   16,   -1,   -1,   19,   20,   -1,   22,
1511    23,   24,   25,   26,   -1,   -1,   29,   30,   31,   32,
1512    33,   -1,   -1,   -1,   37,   -1,   -1,   -1,   41,   -1,
1513    -1,   -1,   -1,   46,   47,   48,  256,   -1,   -1,   -1,
1514    14,   -1,   16,   56,   57,   19,   20,   60,   -1,   -1,
1515    24,   25,   26,   -1,   -1,   29,   30,   31,   32,   33,
1516    -1,   -1,   -1,   37,   -1,   -1,   -1,   41,   -1,   -1,
1517    -1,   -1,   46,   47,   48,  256,   -1,   -1,   -1,   14,
1518    -1,   16,   56,   57,   19,   20,   60,   -1,   -1,   24,
1519    25,   26,   -1,   -1,   29,   30,   31,   32,   33,   -1,
1520    -1,   -1,   37,   -1,   -1,   -1,   41,   -1,   -1,   -1,
1521    -1,   46,   47,   48,  256,   -1,   -1,   -1,   14,   -1,
1522    16,   56,   57,   19,   20,   60,   -1,   -1,   24,   25,
1523    26,   -1,   -1,   29,   30,   31,   32,   33,   -1,   -1,
1524    -1,   37,   -1,   -1,   -1,   41,   -1,   -1,   -1,   -1,
1525    46,   47,   48,   -1,   -1,   -1,   -1,   -1,   -1,  256,
1526    56,   57,   -1,   14,   60,   16,   -1,   -1,   19,   20,
1527    -1,   -1,   -1,   24,   25,   26,   -1,   -1,   -1,   -1,
1528    31,   32,   33,   -1,   -1,   -1,   37,   -1,   -1,   -1,
1529    41,   -1,   -1,   -1,   -1,   46,   47,   48,  256,   -1,
1530    -1,   -1,   14,   -1,   16,   56,   57,   19,   20,   60,
1531    -1,   -1,   24,   25,   26,   -1,   -1,   -1,   -1,   31,
1532    32,   33,   -1,   -1,   -1,   37,   -1,   -1,   -1,   41,
1533    -1,   -1,   -1,   -1,   46,   47,   48,   -1,   -1,   -1,
1534    -1,   -1,   -1,  256,   56,   57,   -1,   14,   60,   16,
1535    -1,   -1,   19,   20,   -1,   -1,   -1,   -1,   25,   26,
1536    -1,   -1,   -1,   -1,   31,   32,   33,   -1,   -1,   -1,
1537    37,   -1,   -1,   -1,   41,   -1,   -1,   -1,   -1,   46,
1538    47,   48,  256,   -1,   -1,   -1,   14,   -1,   16,   56,
1539    57,   19,   20,   60,   -1,   -1,   -1,   25,   26,   -1,
1540    -1,   -1,   -1,   31,   32,   33,   -1,   -1,   -1,   37,
1541    -1,   -1,   -1,   41,   -1,   -1,   -1,   -1,   46,   47,
1542    48,  256,   -1,   -1,   -1,   14,   -1,   16,   56,   57,
1543    19,   20,   60,   -1,   -1,   -1,   25,   26,   -1,   -1,
1544    -1,   -1,   31,   32,   33,   -1,   -1,   -1,   37,   -1,
1545    -1,   -1,   41,   -1,   -1,   -1,   -1,   46,   47,   48,
1546   256,   -1,   -1,   -1,   -1,   -1,   -1,   56,   57,   -1,
1547    -1,   60,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1548     1,    2,    3,    4,    5,   -1,    7,    8,    9,   -1,
1549    -1,   12,   13,   14,   -1,   -1,   -1,   -1,   -1,   -1,
1550    21,   22,   23,   -1,   -1,  256,   -1,   -1,   -1,   -1,
1551    -1,   -1,   -1,   -1,   35,   36,   -1,   -1,   39,   40,
1552    -1,   -1,   -1,   -1,   -1,   -1,   -1,   48,   -1,   -1,
1553    51,   52,   53,   54,   55,   56,   57,   58,   59,   60,
1554    61,   62,   -1,   64,  256,   66,   67,   68,   69,   70,
1555    71,   72,   73,   74,   75,   76,   77,   78,   79,   80,
1556    81,   82,   83,   84,   85,   86,   87,   -1,   89,   90,
1557    91,   92,   93,   94,   95,   96,   97,   -1,   -1,   -1,
1558     1,    2,    3,    4,    5,   -1,    7,   -1,    9,  256,
1559    -1,   12,   13,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1560    21,   22,   23,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1561    -1,   -1,   -1,   -1,   35,   36,   -1,   -1,   39,   40,
1562    -1,   -1,   -1,   -1,   -1,   -1,   -1,   48,  256,   -1,
1563    51,   52,   53,   54,   55,   56,   57,   58,   59,   60,
1564    61,   62,   63,   64,   65,   66,   67,   68,   69,   70,
1565    71,   72,   73,   74,   75,   76,   77,   78,   79,   80,
1566    81,   82,   83,   84,   85,   86,   87,  256,   89,   90,
1567    91,   92,   93,   94,   95,   96,   97,    1,    2,    3,
1568     4,    5,    6,    7,   -1,    9,   -1,   -1,   12,   13,
1569    -1,   -1,   -1,   -1,   -1,   -1,   -1,   21,   22,   23,
1570    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1571    -1,   35,   36,   -1,   -1,   39,   40,   -1,   -1,   -1,
1572    -1,   -1,   -1,   -1,   48,   -1,   -1,   51,   52,   53,
1573    54,   55,   56,   57,   58,   59,   60,   61,   62,   -1,
1574    64,   -1,   66,   67,   68,   69,   70,   71,   72,   73,
1575    74,   75,   76,   77,   78,   79,   80,   81,   82,   83,
1576    84,   85,   86,   87,   -1,   89,   90,   91,   92,   93,
1577    94,   95,   96,   97,    1,    2,    3,    4,    5,   -1,
1578     7,    8,    9,   -1,   -1,   12,   13,   -1,   -1,   -1,
1579    -1,   -1,   -1,   -1,   21,   22,   23,   -1,   -1,   -1,
1580    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   35,   36,
1581    -1,   -1,   39,   40,   -1,   -1,   -1,   -1,   -1,   -1,
1582    -1,   48,   -1,   -1,   51,   52,   53,   54,   55,   56,
1583    57,   58,   59,   60,   61,   62,   -1,   64,   -1,   66,
1584    67,   68,   69,   70,   71,   72,   73,   74,   75,   76,
1585    77,   78,   79,   80,   81,   82,   83,   84,   85,   86,
1586    87,   -1,   89,   90,   91,   92,   93,   94,   95,   96,
1587    97,    1,    2,    3,    4,    5,   -1,    7,   -1,    9,
1588    -1,   -1,   12,   13,   -1,   -1,   -1,   -1,   -1,   -1,
1589    -1,   21,   22,   23,   -1,   -1,   -1,   -1,   -1,   -1,
1590    -1,   -1,   -1,   -1,   -1,   35,   36,   -1,   -1,   39,
1591    40,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   48,   -1,
1592    -1,   51,   52,   53,   54,   55,   56,   57,   58,   59,
1593    60,   61,   62,   -1,   64,   -1,   66,   67,   68,   69,
1594    70,   71,   72,   73,   74,   75,   76,   77,   78,   79,
1595    80,   81,   82,   83,   84,   85,   86,   87,   -1,   89,
1596    90,   91,   92,   93,   94,   95,   96,   97,    1,    2,
1597     3,    4,    5,   -1,    7,   -1,    9,   -1,   -1,   12,
1598    13,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   21,   22,
1599    23,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1600    -1,   -1,   35,   36,   -1,   -1,   39,   40,   -1,   -1,
1601    -1,   -1,   -1,   -1,   -1,   48,   -1,   -1,   51,   52,
1602    53,   54,   55,   56,   57,   58,   59,   60,   61,   62,
1603    -1,   64,   -1,   66,   67,   68,   69,   70,   71,   72,
1604    73,   74,   75,   76,   77,   78,   79,   80,   81,   82,
1605    83,   84,   85,   86,   87,   -1,   89,   90,   91,   92,
1606    93,   94,   95,   96,   97,    1,    2,    3,    4,    5,
1607    -1,    7,   -1,    9,   -1,   -1,   12,   13,   -1,   -1,
1608    -1,   -1,   -1,   -1,   -1,   21,   22,   23,   -1,   -1,
1609    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   35,
1610    36,   -1,   -1,   39,   40,   -1,   -1,   -1,   -1,   -1,
1611    -1,   -1,   48,   -1,   -1,   51,   52,   53,   54,   55,
1612    56,   57,   58,   59,   60,   61,   62,   -1,   64,   -1,
1613    66,   67,   68,   69,   70,   71,   72,   73,   74,   75,
1614    76,   77,   78,   79,   80,   81,   82,   83,   84,   85,
1615    86,   87,   -1,   89,   90,   91,   92,   93,   94,   95,
1616    96,   97,    1,    2,    3,    4,    5,   -1,    7,   -1,
1617     9,   -1,   -1,   12,   13,   -1,   -1,   -1,   -1,   -1,
1618    -1,   -1,   21,   22,   23,   -1,   -1,   -1,   -1,   -1,
1619    -1,   -1,   -1,   -1,   -1,   -1,   35,   36,   -1,   -1,
1620    39,   40,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   48,
1621    -1,   -1,   51,   52,   53,   54,   55,   56,   57,   58,
1622    59,   60,   61,   62,   -1,   64,   -1,   66,   67,   68,
1623    69,   70,   71,   72,   73,   74,   75,   76,   77,   78,
1624    79,   80,   81,   82,   83,   84,   85,   86,   87,   -1,
1625    89,   90,   91,   92,   93,   94,   95,   96,   97,    1,
1626     2,    3,    4,    5,   -1,    7,   -1,   -1,   -1,   -1,
1627    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1628    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1629    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1630    -1,   -1,   -1,   -1,   -1,   -1,   48,   -1,   -1,   51,
1631    52,   53,   54,   55,   56,   57,   58,   59,   60,   61,
1632    62,    8,   64,   -1,   66,   67,   68,   69,   70,   71,
1633    72,   73,   74,   75,   76,   77,   78,   79,   80,   81,
1634    82,   83,   84,   85,   86,   87,   -1,   -1,   90,   91,
1635    92,   93,   -1,   95,   96,   97,   -1,   -1,   -1,   -1,
1636    -1,   -1,   49,   -1,   51,   52,   53,   54,   55,   -1,
1637    -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
1638    67,   68,   69,   70,   71,   72,   73,   74,   -1,   -1,
1639    -1,   -1,   79,   80,   81,   82,   83,   84,   85,   86,
1640    -1,   -1,   -1,   90,   91,   92,   93,   -1,   95,   -1,
1641    97,
1642 };
1643 #define YYFINAL 1
1644 #ifndef YYDEBUG
1645 #define YYDEBUG 0
1646 #endif
1647 #define YYMAXTOKEN 256
1648 #define YYUNDFTOKEN 445
1649 #define YYTRANSLATE(a) ((a) > YYMAXTOKEN ? YYUNDFTOKEN : (a))
1650 #if YYDEBUG
1651 static const char *const yyname[] = {
1652 
1653 "end-of-file","NAME","FONT_NAME","COLOR_NAME","ARGUMENT_NAME","REASON_NAME",
1654 "CHARSET_NAME","ENUMVAL_NAME","CLASS_NAME","UNS_FLOAT_LITERAL","COMP_STRING",
1655 "CHAR_8_LITERAL","UNS_INT_LITERAL","LEFT_PAREN","RIGHT_PAREN","COLON",
1656 "SEMICOLON","LEFT_BRACE","RIGHT_BRACE","COMMA","EQUAL_SIGN","NOT","PLUS",
1657 "MINUS","AND","OR","XOR","MULTIPLY","DIVIDE","LEFT_SHIFT","RIGHT_SHIFT","LIST",
1658 "IDENTIFIER","END","MODULE","UILTRUE","UILFALSE","INCLUDE","MACRO","ON","OFF",
1659 "VALUE","ARGUMENTS","CALLBACKS","PROCEDURES","CONTROLS","PROCEDURE","OBJECT",
1660 "OBJECTS","WIDGET","GADGET","FONT","ARGUMENT","REASON","PIXMAP","COLOR","NAMES",
1661 "CHARACTER_SET","CASE_SENSITIVE","CASE_INSENSITIVE","VERSION","MANAGED",
1662 "UNMANAGED","PRIVATE","IMPORTED","EXPORTED","UILFILE","STRING_TABLE",
1663 "TRANSLATION_TABLE","COMPOUND_STRING","FONT_TABLE","ANY","STRING","BOOLEAN",
1664 "ICON","RIGHT_TO_LEFT","BACKGROUND","FOREGROUND","COLOR_TABLE","FLOAT",
1665 "INTEGER","CLASS_REC_NAME","ASCIZ_TABLE","INTEGER_TABLE","ASCIZ_STRING_TABLE",
1666 "COMPOUND_STRING_TABLE","XBITMAPFILE","SEPARATE","SIXTEEN_BIT","POUND","KEYSYM",
1667 "SINGLE_FLOAT","RGB","WIDE_CHARACTER","LOC_STRING","FONTSET","CHILD_NAME",
1668 "COMPOUND_STRING_COMPONENT","IN","CM","MM","PT","FU","PIXEL","PIXELS","INCH",
1669 "INCHES","CENTIMETER","CENTIMETERS","MILLIMETER","MILLIMETERS","POINT","POINTS",
1670 "FONT_UNIT","FONT_UNITS","PIX",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1671 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1672 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1673 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1674 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1675 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1676 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1677 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
1678 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"illegal-symbol",
1679 };
1680 static const char *const yyrule[] = {
1681 "$accept : module_block",
1682 "$$1 :",
1683 "module_block : module_header $$1 module_declaration_list END MODULE SEMICOLON",
1684 "$$2 :",
1685 "$$3 :",
1686 "module_header : $$2 MODULE id $$3 opt_module_clauses",
1687 "opt_module_clauses :",
1688 "opt_module_clauses : module_clauses",
1689 "module_clauses : module_clause",
1690 "module_clauses : module_clauses module_clause",
1691 "module_clause : VERSION EQUAL_SIGN character_8_value",
1692 "module_clause : NAMES EQUAL_SIGN sensitivity_value",
1693 "module_clause : CHARACTER_SET EQUAL_SIGN valid_charset",
1694 "$$4 :",
1695 "module_clause : OBJECTS $$4 EQUAL_SIGN variant_spec",
1696 "sensitivity_value : CASE_SENSITIVE",
1697 "sensitivity_value : CASE_INSENSITIVE",
1698 "variant_spec : LEFT_BRACE RIGHT_BRACE",
1699 "variant_spec : LEFT_BRACE variant_list RIGHT_BRACE",
1700 "$$5 :",
1701 "variant_spec : error $$5 RIGHT_BRACE",
1702 "variant_list : variant_clause SEMICOLON",
1703 "variant_list : variant_list variant_clause SEMICOLON",
1704 "$$6 :",
1705 "variant_list : error $$6 SEMICOLON",
1706 "$$7 :",
1707 "variant_clause : CLASS_NAME $$7 EQUAL_SIGN variant",
1708 "variant : WIDGET",
1709 "variant : GADGET",
1710 "module_declaration_list :",
1711 "module_declaration_list : module_declaration_list module_declaration",
1712 "module_declaration : value_declaration",
1713 "module_declaration : identifier_declaration",
1714 "module_declaration : procedure_declaration",
1715 "module_declaration : object_declaration",
1716 "module_declaration : list_declaration",
1717 "module_declaration : include_directive",
1718 "$$8 :",
1719 "value_declaration : VALUE $$8 value_declaration_list",
1720 "value_declaration_list : value_decl",
1721 "value_declaration_list : value_declaration_list value_decl",
1722 "$$9 :",
1723 "value_declaration_list : error $$9 SEMICOLON",
1724 "value_decl : id COLON value_definition SEMICOLON",
1725 "value_definition : EXPORTED private_value",
1726 "value_definition : PRIVATE private_value_plus",
1727 "value_definition : private_value_plus",
1728 "value_definition : IMPORTED value_type",
1729 "value_type : INTEGER",
1730 "value_type : STRING",
1731 "value_type : PIXMAP",
1732 "value_type : FLOAT",
1733 "value_type : BOOLEAN",
1734 "value_type : FONT",
1735 "value_type : REASON",
1736 "value_type : ARGUMENT",
1737 "value_type : COLOR",
1738 "value_type : string_table_type",
1739 "value_type : asciz_table_type",
1740 "value_type : INTEGER_TABLE",
1741 "value_type : TRANSLATION_TABLE",
1742 "value_type : FONT_TABLE",
1743 "value_type : ICON",
1744 "value_type : COMPOUND_STRING",
1745 "value_type : COMPOUND_STRING_COMPONENT",
1746 "value_type : CLASS_REC_NAME",
1747 "value_type : XBITMAPFILE",
1748 "value_type : KEYSYM",
1749 "value_type : SINGLE_FLOAT",
1750 "value_type : RGB",
1751 "value_type : WIDE_CHARACTER",
1752 "value_type : FONTSET",
1753 "value_type : WIDGET",
1754 "arg_value_type : INTEGER",
1755 "arg_value_type : STRING",
1756 "arg_value_type : PIXMAP",
1757 "arg_value_type : FLOAT",
1758 "arg_value_type : BOOLEAN",
1759 "arg_value_type : FONT",
1760 "arg_value_type : REASON",
1761 "arg_value_type : COLOR",
1762 "arg_value_type : string_table_type",
1763 "arg_value_type : asciz_table_type",
1764 "arg_value_type : INTEGER_TABLE",
1765 "arg_value_type : TRANSLATION_TABLE",
1766 "arg_value_type : FONT_TABLE",
1767 "arg_value_type : ICON",
1768 "arg_value_type : COMPOUND_STRING",
1769 "arg_value_type : KEYSYM",
1770 "arg_value_type : SINGLE_FLOAT",
1771 "arg_value_type : WIDE_CHARACTER",
1772 "arg_value_type : FONTSET",
1773 "arg_value_type : WIDGET",
1774 "string_table_type : STRING_TABLE",
1775 "string_table_type : COMPOUND_STRING_TABLE",
1776 "asciz_table_type : ASCIZ_TABLE",
1777 "asciz_table_type : ASCIZ_STRING_TABLE",
1778 "$$10 :",
1779 "procedure_declaration : PROCEDURE $$10 procedure_declaration_list",
1780 "procedure_declaration_list : procedure_decl",
1781 "procedure_declaration_list : procedure_declaration_list procedure_decl",
1782 "$$11 :",
1783 "procedure_declaration_list : error $$11 SEMICOLON",
1784 "procedure_decl : id opt_formal_parameters opt_class SEMICOLON",
1785 "opt_formal_parameters :",
1786 "opt_formal_parameters : LEFT_PAREN formal_parameter_type RIGHT_PAREN",
1787 "formal_parameter_type :",
1788 "formal_parameter_type : value_type",
1789 "formal_parameter_type : ANY",
1790 "formal_parameter_type : CLASS_NAME",
1791 "opt_class :",
1792 "$$12 :",
1793 "identifier_declaration : IDENTIFIER $$12 identifier_declaration_list",
1794 "identifier_declaration_list : identifier_decl",
1795 "identifier_declaration_list : identifier_declaration_list identifier_decl",
1796 "$$13 :",
1797 "identifier_declaration_list : error $$13 SEMICOLON",
1798 "identifier_decl : id SEMICOLON",
1799 "include_directive : INCLUDE UILFILE character_8_value SEMICOLON",
1800 "$$14 :",
1801 "include_directive : error $$14 SEMICOLON",
1802 "$$15 :",
1803 "object_declaration : OBJECT $$15 object_decl_list",
1804 "object_decl_list : object_decl SEMICOLON",
1805 "object_decl_list : object_decl_list object_decl SEMICOLON",
1806 "$$16 :",
1807 "object_decl_list : error $$16 SEMICOLON",
1808 "$$17 :",
1809 "object_decl : id $$17 COLON object_definition",
1810 "$$18 :",
1811 "object_definition : EXPORTED $$18 object_specification",
1812 "$$19 :",
1813 "object_definition : PRIVATE $$19 object_specification",
1814 "$$20 :",
1815 "object_definition : epsilon_production $$20 object_specification",
1816 "$$21 :",
1817 "$$22 :",
1818 "object_definition : IMPORTED $$21 CLASS_NAME $$22 opt_create_proc_ref epsilon_production",
1819 "$$23 :",
1820 "control_object_definition : EXPORTED $$23 object_specification",
1821 "$$24 :",
1822 "control_object_definition : PRIVATE $$24 object_specification",
1823 "$$25 :",
1824 "control_object_definition : MANAGED $$25 object_specification",
1825 "$$26 :",
1826 "control_object_definition : UNMANAGED $$26 object_specification",
1827 "$$27 :",
1828 "control_object_definition : epsilon_production $$27 object_specification",
1829 "$$28 :",
1830 "$$29 :",
1831 "control_object_definition : IMPORTED $$28 CLASS_NAME $$29 epsilon_production",
1832 "$$30 :",
1833 "object_specification : CLASS_NAME $$30 opt_create_proc_ref opt_variant object_spec",
1834 "opt_variant : epsilon_production",
1835 "opt_variant : variant",
1836 "$$31 :",
1837 "control_object_specification : CLASS_NAME $$31 opt_create_proc_ref opt_variant control_object_spec",
1838 "opt_create_proc_ref : epsilon_production",
1839 "opt_create_proc_ref : PROCEDURE id_ref opt_parens",
1840 "opt_parens : epsilon_production",
1841 "opt_parens : LEFT_PAREN RIGHT_PAREN",
1842 "object_spec : id_ref",
1843 "object_spec : LEFT_BRACE RIGHT_BRACE",
1844 "object_spec : LEFT_BRACE object_feature_list RIGHT_BRACE",
1845 "$$32 :",
1846 "object_spec : error $$32 RIGHT_BRACE",
1847 "control_object_spec : id_ref",
1848 "control_object_spec : LEFT_BRACE RIGHT_BRACE epsilon_production",
1849 "control_object_spec : LEFT_BRACE object_feature_list RIGHT_BRACE epsilon_production",
1850 "$$33 :",
1851 "control_object_spec : error $$33 RIGHT_BRACE",
1852 "child_object_spec : LEFT_BRACE RIGHT_BRACE epsilon_production",
1853 "child_object_spec : LEFT_BRACE object_feature_list RIGHT_BRACE epsilon_production",
1854 "$$34 :",
1855 "child_object_spec : error $$34 RIGHT_BRACE",
1856 "object_feature_list : object_feature",
1857 "object_feature_list : object_feature_list object_feature",
1858 "object_feature : argument_list_def SEMICOLON",
1859 "object_feature : callback_list_def SEMICOLON",
1860 "object_feature : control_list_def SEMICOLON",
1861 "$$35 :",
1862 "object_feature : error $$35 SEMICOLON",
1863 "epsilon_production :",
1864 "$$36 :",
1865 "list_declaration : LIST $$36 list_decl_list",
1866 "list_decl_list : list_decl SEMICOLON",
1867 "list_decl_list : list_decl_list list_decl SEMICOLON",
1868 "$$37 :",
1869 "list_decl_list : error $$37 SEMICOLON",
1870 "$$38 :",
1871 "list_decl : id $$38 COLON list_specification",
1872 "list_specification : control_list_specification",
1873 "list_specification : argument_list_specification",
1874 "list_specification : callback_list_specification",
1875 "list_specification : procedure_list_specification",
1876 "$$39 :",
1877 "control_list_specification : control_list_type $$39 control_list_spec",
1878 "$$40 :",
1879 "argument_list_specification : argument_list_type $$40 argument_list_spec",
1880 "$$41 :",
1881 "callback_list_specification : callback_list_type $$41 callback_list_spec",
1882 "$$42 :",
1883 "procedure_list_specification : procedure_list_type $$42 procedure_list_spec",
1884 "argument_list_type : ARGUMENTS",
1885 "callback_list_type : CALLBACKS",
1886 "procedure_list_type : PROCEDURES",
1887 "control_list_type : CONTROLS",
1888 "argument_list_spec : id_ref",
1889 "argument_list_spec : LEFT_BRACE RIGHT_BRACE",
1890 "argument_list_spec : LEFT_BRACE argument_list_clause_list RIGHT_BRACE",
1891 "$$43 :",
1892 "argument_list_spec : error $$43 RIGHT_BRACE",
1893 "callback_list_spec : id_ref",
1894 "callback_list_spec : LEFT_BRACE RIGHT_BRACE",
1895 "callback_list_spec : LEFT_BRACE callback_list_clause_list RIGHT_BRACE",
1896 "$$44 :",
1897 "callback_list_spec : error $$44 RIGHT_BRACE",
1898 "procedure_list_spec : id_ref",
1899 "procedure_list_spec : LEFT_BRACE RIGHT_BRACE",
1900 "procedure_list_spec : LEFT_BRACE procedure_list_clause_list RIGHT_BRACE",
1901 "$$45 :",
1902 "procedure_list_spec : error $$45 RIGHT_BRACE",
1903 "control_list_spec : id_ref",
1904 "control_list_spec : LEFT_BRACE RIGHT_BRACE",
1905 "control_list_spec : LEFT_BRACE control_list_clause_list RIGHT_BRACE",
1906 "$$46 :",
1907 "control_list_spec : error $$46 RIGHT_BRACE",
1908 "argument_list_clause_list : argument_list_clause",
1909 "argument_list_clause_list : argument_list_clause_list argument_list_clause",
1910 "callback_list_clause_list : callback_list_clause",
1911 "callback_list_clause_list : callback_list_clause_list callback_list_clause",
1912 "procedure_list_clause_list : procedure_list_clause",
1913 "procedure_list_clause_list : procedure_list_clause_list procedure_list_clause",
1914 "control_list_clause_list : control_list_clause",
1915 "control_list_clause_list : control_list_clause_list control_list_clause",
1916 "argument_list_clause : argument_list_def SEMICOLON",
1917 "argument_list_clause : argument_list_item SEMICOLON",
1918 "$$47 :",
1919 "argument_list_clause : error $$47 SEMICOLON",
1920 "callback_list_clause : callback_list_def SEMICOLON",
1921 "callback_list_clause : callback_list_item SEMICOLON",
1922 "$$48 :",
1923 "callback_list_clause : error $$48 SEMICOLON",
1924 "procedure_list_clause : procedure_list_def SEMICOLON",
1925 "procedure_list_clause : procedure_list_def_ref SEMICOLON",
1926 "$$49 :",
1927 "procedure_list_clause : error $$49 SEMICOLON",
1928 "control_list_clause : control_list_def SEMICOLON",
1929 "control_list_clause : control_list_item SEMICOLON",
1930 "$$50 :",
1931 "control_list_clause : error $$50 SEMICOLON",
1932 "$$51 :",
1933 "control_list_def : epsilon_production $$51 control_list_specification",
1934 "$$52 :",
1935 "argument_list_def : epsilon_production $$52 argument_list_specification",
1936 "$$53 :",
1937 "callback_list_def : epsilon_production $$53 callback_list_specification",
1938 "$$54 :",
1939 "procedure_list_def : epsilon_production $$54 procedure_list_specification",
1940 "control_list_item : opt_managed control_item",
1941 "$$55 :",
1942 "control_list_item : id $$55 COLON control_object_definition",
1943 "$$56 :",
1944 "control_list_item : CHILD_NAME opt_child_managed $$56 child_object_spec",
1945 "$$57 :",
1946 "control_list_item : CHILD_NAME UNMANAGED $$57 child_object_spec",
1947 "opt_child_managed : epsilon_production",
1948 "opt_child_managed : MANAGED",
1949 "argument_list_item : value EQUAL_SIGN value",
1950 "argument_list_item : value EQUAL_SIGN CLASS_NAME id_ref",
1951 "callback_list_item : value EQUAL_SIGN procedure_reference",
1952 "callback_list_item : value EQUAL_SIGN procedure_list_def",
1953 "$$58 :",
1954 "control_item : epsilon_production $$58 control_object_specification",
1955 "opt_managed : epsilon_production",
1956 "opt_managed : MANAGED",
1957 "opt_managed : UNMANAGED",
1958 "procedure_reference : PROCEDURE id_ref opt_procedure_argument",
1959 "procedure_list_def_ref : id_ref opt_procedure_argument",
1960 "opt_procedure_argument : epsilon_production",
1961 "opt_procedure_argument : LEFT_PAREN value RIGHT_PAREN",
1962 "opt_procedure_argument : LEFT_PAREN CLASS_NAME id_ref RIGHT_PAREN",
1963 "opt_procedure_argument : LEFT_PAREN RIGHT_PAREN",
1964 "id : NAME",
1965 "id : FONT_NAME",
1966 "id : COLOR_NAME",
1967 "id : ARGUMENT_NAME",
1968 "id : REASON_NAME",
1969 "id : ENUMVAL_NAME",
1970 "id : CHILD_NAME",
1971 "id : keyword",
1972 "id_ref : id",
1973 "keyword : STRING",
1974 "keyword : BOOLEAN",
1975 "keyword : FLOAT",
1976 "keyword : INTEGER",
1977 "keyword : FONT",
1978 "keyword : ARGUMENT",
1979 "keyword : REASON",
1980 "keyword : PIXMAP",
1981 "keyword : COLOR",
1982 "keyword : NAMES",
1983 "keyword : CASE_SENSITIVE",
1984 "keyword : CASE_INSENSITIVE",
1985 "keyword : VERSION",
1986 "keyword : MANAGED",
1987 "keyword : UNMANAGED",
1988 "keyword : UILFILE",
1989 "keyword : string_table_type",
1990 "keyword : asciz_table_type",
1991 "keyword : INTEGER_TABLE",
1992 "keyword : TRANSLATION_TABLE",
1993 "keyword : COMPOUND_STRING",
1994 "keyword : COMPOUND_STRING_COMPONENT",
1995 "keyword : CLASS_REC_NAME",
1996 "keyword : FONT_TABLE",
1997 "keyword : RIGHT_TO_LEFT",
1998 "keyword : CHARACTER_SET",
1999 "keyword : COLOR_TABLE",
2000 "keyword : ICON",
2001 "keyword : BACKGROUND",
2002 "keyword : FOREGROUND",
2003 "keyword : XBITMAPFILE",
2004 "keyword : SEPARATE",
2005 "keyword : ANY",
2006 "keyword : IMPORTED",
2007 "keyword : OBJECTS",
2008 "keyword : KEYSYM",
2009 "keyword : SINGLE_FLOAT",
2010 "keyword : RGB",
2011 "keyword : WIDE_CHARACTER",
2012 "keyword : FONTSET",
2013 "character_8_value : value",
2014 "private_value : value",
2015 "private_value_plus : non_export_value",
2016 "private_value_plus : value",
2017 "non_export_value : COLOR_TABLE LEFT_PAREN color_list RIGHT_PAREN",
2018 "value : value_1",
2019 "value : value OR value_1",
2020 "value : value XOR value_1",
2021 "value_1 : value_2",
2022 "value_1 : value_1 AND value_2",
2023 "value_2 : value_3",
2024 "value_2 : value_2 LEFT_SHIFT value_3",
2025 "value_2 : value_2 RIGHT_SHIFT value_3",
2026 "value_3 : value_4",
2027 "value_3 : value_3 PLUS value_4",
2028 "value_3 : value_3 MINUS value_4",
2029 "value_4 : value_5",
2030 "value_4 : value_4 MULTIPLY value_5",
2031 "value_4 : value_4 DIVIDE value_5",
2032 "value_5 : value_6",
2033 "value_5 : MINUS value_5",
2034 "value_5 : NOT value_5",
2035 "value_5 : PLUS value_5",
2036 "value_6 : operand",
2037 "value_6 : LEFT_PAREN value RIGHT_PAREN",
2038 "operand : UNS_INT_LITERAL",
2039 "operand : UNS_INT_LITERAL units_specification",
2040 "operand : optional_charset CHAR_8_LITERAL",
2041 "operand : id",
2042 "operand : UNS_FLOAT_LITERAL",
2043 "operand : UNS_FLOAT_LITERAL units_specification",
2044 "operand : PIXMAP LEFT_PAREN character_8_value RIGHT_PAREN",
2045 "operand : FONT LEFT_PAREN font_spec RIGHT_PAREN",
2046 "operand : FONTSET LEFT_PAREN fontset_spec RIGHT_PAREN",
2047 "operand : COLOR LEFT_PAREN color_spec RIGHT_PAREN",
2048 "operand : REASON LEFT_PAREN character_8_value RIGHT_PAREN",
2049 "operand : CLASS_REC_NAME LEFT_PAREN character_8_value RIGHT_PAREN",
2050 "operand : ARGUMENT LEFT_PAREN character_8_value opt_arg_type RIGHT_PAREN",
2051 "operand : UILTRUE",
2052 "operand : UILFALSE",
2053 "operand : ON",
2054 "operand : OFF",
2055 "operand : optional_charset COMP_STRING",
2056 "operand : string_table_type LEFT_PAREN comp_str_list RIGHT_PAREN",
2057 "operand : asciz_table_type LEFT_PAREN asciz_list RIGHT_PAREN",
2058 "operand : INTEGER_TABLE LEFT_PAREN integer_list RIGHT_PAREN",
2059 "operand : TRANSLATION_TABLE LEFT_PAREN string_list RIGHT_PAREN",
2060 "operand : COMPOUND_STRING LEFT_PAREN comp_str_result RIGHT_PAREN",
2061 "operand : COMPOUND_STRING_COMPONENT LEFT_PAREN comp_str_comp_result RIGHT_PAREN",
2062 "operand : FONT_TABLE LEFT_PAREN font_list RIGHT_PAREN",
2063 "operand : ICON LEFT_PAREN icon_spec RIGHT_PAREN",
2064 "operand : FLOAT LEFT_PAREN value RIGHT_PAREN",
2065 "operand : INTEGER LEFT_PAREN value RIGHT_PAREN",
2066 "operand : XBITMAPFILE LEFT_PAREN character_8_value RIGHT_PAREN",
2067 "operand : KEYSYM LEFT_PAREN character_8_value RIGHT_PAREN",
2068 "operand : SINGLE_FLOAT LEFT_PAREN value RIGHT_PAREN",
2069 "operand : RGB LEFT_PAREN rgb_list RIGHT_PAREN",
2070 "operand : WIDE_CHARACTER LEFT_PAREN wchar_str_result RIGHT_PAREN",
2071 "operand : LOC_STRING",
2072 "string_list :",
2073 "string_list : string_list_2",
2074 "string_list_2 : private_value",
2075 "string_list_2 : string_list_2 COMMA private_value",
2076 "asciz_list :",
2077 "asciz_list : asciz_list_2",
2078 "asciz_list_2 : private_value",
2079 "asciz_list_2 : asciz_list_2 COMMA private_value",
2080 "integer_list :",
2081 "integer_list : integer_list_2",
2082 "integer_list_2 : private_value",
2083 "integer_list_2 : integer_list_2 COMMA private_value",
2084 "rgb_list : private_value COMMA private_value COMMA private_value",
2085 "comp_str_list :",
2086 "comp_str_list : comp_str_list_2",
2087 "comp_str_list_2 : private_value",
2088 "comp_str_list_2 : comp_str_list_2 COMMA private_value",
2089 "opt_arg_type :",
2090 "opt_arg_type : COMMA arg_value_type",
2091 "opt_arg_type : COMMA ANY",
2092 "comp_str_result : private_value",
2093 "comp_str_result : private_value comp_str_attrs",
2094 "comp_str_comp_result : ENUMVAL_NAME",
2095 "comp_str_comp_result : ENUMVAL_NAME COMMA ENUMVAL_NAME",
2096 "comp_str_comp_result : ENUMVAL_NAME COMMA CHAR_8_LITERAL",
2097 "comp_str_comp_result : ENUMVAL_NAME COMMA LOC_STRING",
2098 "comp_str_comp_result : ENUMVAL_NAME COMMA CHARSET_NAME",
2099 "comp_str_attrs : COMMA comp_str_attr",
2100 "comp_str_attrs : comp_str_attrs COMMA comp_str_attr",
2101 "comp_str_attr : CHARACTER_SET EQUAL_SIGN valid_charset",
2102 "comp_str_attr : RIGHT_TO_LEFT EQUAL_SIGN private_value",
2103 "comp_str_attr : SEPARATE EQUAL_SIGN private_value",
2104 "wchar_str_result : private_value",
2105 "font_spec : character_8_value COMMA CHARACTER_SET EQUAL_SIGN valid_charset",
2106 "font_spec : character_8_value",
2107 "fontset_spec : character_8_value COMMA CHARACTER_SET EQUAL_SIGN valid_charset",
2108 "fontset_spec : character_8_value",
2109 "font_list : font_item",
2110 "font_list : font_list COMMA font_item",
2111 "font_item : valid_charset EQUAL_SIGN private_value",
2112 "font_item : private_value",
2113 "optional_charset : POUND valid_charset",
2114 "optional_charset : epsilon_production",
2115 "valid_charset : CHARSET_NAME",
2116 "valid_charset : CHARACTER_SET LEFT_PAREN charset_info RIGHT_PAREN",
2117 "valid_charset : NAME",
2118 "charset_info : character_8_value",
2119 "charset_info : character_8_value charset_attrs",
2120 "charset_attrs : COMMA charset_attr",
2121 "charset_attrs : charset_attrs COMMA charset_attr",
2122 "charset_attr : RIGHT_TO_LEFT EQUAL_SIGN private_value",
2123 "charset_attr : SIXTEEN_BIT EQUAL_SIGN private_value",
2124 "color_list : color_item",
2125 "color_list : color_list COMMA color_item",
2126 "color_item : BACKGROUND COLOR EQUAL_SIGN character_8_value",
2127 "color_item : FOREGROUND COLOR EQUAL_SIGN character_8_value",
2128 "color_item : value EQUAL_SIGN character_8_value",
2129 "color_spec : character_8_value",
2130 "color_spec : character_8_value COMMA mono_color_spec",
2131 "mono_color_spec : BACKGROUND",
2132 "mono_color_spec : FOREGROUND",
2133 "icon_spec : icon_rows",
2134 "icon_spec : COLOR_TABLE EQUAL_SIGN private_value COMMA icon_rows",
2135 "icon_rows : private_value",
2136 "icon_rows : icon_rows COMMA private_value",
2137 "units_specification : PIX",
2138 "units_specification : PIXEL",
2139 "units_specification : PIXELS",
2140 "units_specification : IN",
2141 "units_specification : INCH",
2142 "units_specification : INCHES",
2143 "units_specification : CM",
2144 "units_specification : CENTIMETER",
2145 "units_specification : CENTIMETERS",
2146 "units_specification : MM",
2147 "units_specification : MILLIMETER",
2148 "units_specification : MILLIMETERS",
2149 "units_specification : PT",
2150 "units_specification : POINT",
2151 "units_specification : POINTS",
2152 "units_specification : FU",
2153 "units_specification : FONT_UNIT",
2154 "units_specification : FONT_UNITS",
2155 
2156 };
2157 #endif
2158 
2159 int      yydebug;
2160 int      yynerrs;
2161 
2162 int      yyerrflag;
2163 int      yychar;
2164 YYSTYPE  yyval;
2165 YYSTYPE  yylval;
2166 
2167 /* define the initial stack-sizes */
2168 #ifdef YYSTACKSIZE
2169 #undef YYMAXDEPTH
2170 #define YYMAXDEPTH  YYSTACKSIZE
2171 #else
2172 #ifdef YYMAXDEPTH
2173 #define YYSTACKSIZE YYMAXDEPTH
2174 #else
2175 #define YYSTACKSIZE 10000
2176 #define YYMAXDEPTH  10000
2177 #endif
2178 #endif
2179 
2180 #define YYINITSTACKSIZE 200
2181 
2182 typedef struct {
2183     unsigned stacksize;
2184     YYINT    *s_base;
2185     YYINT    *s_mark;
2186     YYINT    *s_last;
2187     YYSTYPE  *l_base;
2188     YYSTYPE  *l_mark;
2189 } YYSTACKDATA;
2190 /* variables for the parser stack */
2191 static YYSTACKDATA yystack;
2192 #line 1403 "Uil.y"
2193 
2194 /*    Dummy error routine for the parser.  We will output our own
2195       error messages.    */
2196 
yyerror(s)2197 int yyerror (s)
2198 char	* s;
2199 {
2200 	return 0;
2201 }
2202 
2203 
2204 
2205 #line 2206 "Uil.c"
2206 
2207 #if YYDEBUG
2208 #include <stdio.h>		/* needed for printf */
2209 #endif
2210 
2211 #include <stdlib.h>	/* needed for malloc, etc */
2212 #include <string.h>	/* needed for memset */
2213 
2214 /* allocate initial stack or double stack size, up to YYMAXDEPTH */
yygrowstack(YYSTACKDATA * data)2215 static int yygrowstack(YYSTACKDATA *data)
2216 {
2217     int i;
2218     unsigned newsize;
2219     YYINT *newss;
2220     YYSTYPE *newvs;
2221 
2222     if ((newsize = data->stacksize) == 0)
2223         newsize = YYINITSTACKSIZE;
2224     else if (newsize >= YYMAXDEPTH)
2225         return YYENOMEM;
2226     else if ((newsize *= 2) > YYMAXDEPTH)
2227         newsize = YYMAXDEPTH;
2228 
2229     i = (int) (data->s_mark - data->s_base);
2230     newss = (YYINT *)realloc(data->s_base, newsize * sizeof(*newss));
2231     if (newss == 0)
2232         return YYENOMEM;
2233 
2234     data->s_base = newss;
2235     data->s_mark = newss + i;
2236 
2237     newvs = (YYSTYPE *)realloc(data->l_base, newsize * sizeof(*newvs));
2238     if (newvs == 0)
2239         return YYENOMEM;
2240 
2241     data->l_base = newvs;
2242     data->l_mark = newvs + i;
2243 
2244     data->stacksize = newsize;
2245     data->s_last = data->s_base + newsize - 1;
2246     return 0;
2247 }
2248 
2249 #if YYPURE || defined(YY_NO_LEAKS)
yyfreestack(YYSTACKDATA * data)2250 static void yyfreestack(YYSTACKDATA *data)
2251 {
2252     free(data->s_base);
2253     free(data->l_base);
2254     memset(data, 0, sizeof(*data));
2255 }
2256 #else
2257 #define yyfreestack(data) /* nothing */
2258 #endif
2259 
2260 #define YYABORT  goto yyabort
2261 #define YYREJECT goto yyabort
2262 #define YYACCEPT goto yyaccept
2263 #define YYERROR  goto yyerrlab
2264 
2265 int
YYPARSE_DECL()2266 YYPARSE_DECL()
2267 {
2268     int yym, yyn, yystate;
2269 #if YYDEBUG
2270     const char *yys;
2271 
2272     if ((yys = getenv("YYDEBUG")) != 0)
2273     {
2274         yyn = *yys;
2275         if (yyn >= '0' && yyn <= '9')
2276             yydebug = yyn - '0';
2277     }
2278 #endif
2279 
2280     yynerrs = 0;
2281     yyerrflag = 0;
2282     yychar = YYEMPTY;
2283     yystate = 0;
2284 
2285 #if YYPURE
2286     memset(&yystack, 0, sizeof(yystack));
2287 #endif
2288 
2289     if (yystack.s_base == NULL && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow;
2290     yystack.s_mark = yystack.s_base;
2291     yystack.l_mark = yystack.l_base;
2292     yystate = 0;
2293     *yystack.s_mark = 0;
2294 
2295 yyloop:
2296     if ((yyn = yydefred[yystate]) != 0) goto yyreduce;
2297     if (yychar < 0)
2298     {
2299         if ((yychar = YYLEX) < 0) yychar = YYEOF;
2300 #if YYDEBUG
2301         if (yydebug)
2302         {
2303             yys = yyname[YYTRANSLATE(yychar)];
2304             printf("%sdebug: state %d, reading %d (%s)\n",
2305                     YYPREFIX, yystate, yychar, yys);
2306         }
2307 #endif
2308     }
2309     if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
2310             yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
2311     {
2312 #if YYDEBUG
2313         if (yydebug)
2314             printf("%sdebug: state %d, shifting to state %d\n",
2315                     YYPREFIX, yystate, yytable[yyn]);
2316 #endif
2317         if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM)
2318         {
2319             goto yyoverflow;
2320         }
2321         yystate = yytable[yyn];
2322         *++yystack.s_mark = yytable[yyn];
2323         *++yystack.l_mark = yylval;
2324         yychar = YYEMPTY;
2325         if (yyerrflag > 0)  --yyerrflag;
2326         goto yyloop;
2327     }
2328     if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
2329             yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
2330     {
2331         yyn = yytable[yyn];
2332         goto yyreduce;
2333     }
2334     if (yyerrflag) goto yyinrecovery;
2335 
2336     YYERROR_CALL("syntax error");
2337 
2338     goto yyerrlab;
2339 
2340 yyerrlab:
2341     ++yynerrs;
2342 
2343 yyinrecovery:
2344     if (yyerrflag < 3)
2345     {
2346         yyerrflag = 3;
2347         for (;;)
2348         {
2349             if ((yyn = yysindex[*yystack.s_mark]) && (yyn += YYERRCODE) >= 0 &&
2350                     yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
2351             {
2352 #if YYDEBUG
2353                 if (yydebug)
2354                     printf("%sdebug: state %d, error recovery shifting\
2355  to state %d\n", YYPREFIX, *yystack.s_mark, yytable[yyn]);
2356 #endif
2357                 if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM)
2358                 {
2359                     goto yyoverflow;
2360                 }
2361                 yystate = yytable[yyn];
2362                 *++yystack.s_mark = yytable[yyn];
2363                 *++yystack.l_mark = yylval;
2364                 goto yyloop;
2365             }
2366             else
2367             {
2368 #if YYDEBUG
2369                 if (yydebug)
2370                     printf("%sdebug: error recovery discarding state %d\n",
2371                             YYPREFIX, *yystack.s_mark);
2372 #endif
2373                 if (yystack.s_mark <= yystack.s_base) goto yyabort;
2374                 --yystack.s_mark;
2375                 --yystack.l_mark;
2376             }
2377         }
2378     }
2379     else
2380     {
2381         if (yychar == YYEOF) goto yyabort;
2382 #if YYDEBUG
2383         if (yydebug)
2384         {
2385             yys = yyname[YYTRANSLATE(yychar)];
2386             printf("%sdebug: state %d, error recovery discards token %d (%s)\n",
2387                     YYPREFIX, yystate, yychar, yys);
2388         }
2389 #endif
2390         yychar = YYEMPTY;
2391         goto yyloop;
2392     }
2393 
2394 yyreduce:
2395 #if YYDEBUG
2396     if (yydebug)
2397         printf("%sdebug: state %d, reducing by rule %d (%s)\n",
2398                 YYPREFIX, yystate, yyn, yyrule[yyn]);
2399 #endif
2400     yym = yylen[yyn];
2401     if (yym)
2402         yyval = yystack.l_mark[1-yym];
2403     else
2404         memset(&yyval, 0, sizeof yyval);
2405     switch (yyn)
2406     {
2407 case 1:
2408 #line 239 "Uil.y"
2409 	{ sar_save_module_source (); }
2410 break;
2411 case 3:
2412 #line 244 "Uil.y"
2413 	{ sar_create_root ( &yyval ); }
2414 break;
2415 case 4:
2416 #line 245 "Uil.y"
2417 	{ sar_create_module( &yyval, &yystack.l_mark[0], &yystack.l_mark[-1] ); }
2418 break;
2419 case 10:
2420 #line 260 "Uil.y"
2421 	{ sar_process_module_version(  &yystack.l_mark[0] , &yystack.l_mark[-2] ); }
2422 break;
2423 case 11:
2424 #line 261 "Uil.y"
2425 	{ sar_process_module_sensitivity( &yystack.l_mark[0] , &yystack.l_mark[-2] ); }
2426 break;
2427 case 12:
2428 #line 262 "Uil.y"
2429 	{ sar_process_module_charset( &yystack.l_mark[0] , &yystack.l_mark[-2] ); }
2430 break;
2431 case 13:
2432 #line 263 "Uil.y"
2433 	{ sar_make_def_obj (&yystack.l_mark[0]); }
2434 break;
2435 case 19:
2436 #line 274 "Uil.y"
2437 	{ lex_issue_error (RIGHT_BRACE); }
2438 break;
2439 case 23:
2440 #line 280 "Uil.y"
2441 	{ lex_issue_error (SEMICOLON); }
2442 break;
2443 case 25:
2444 #line 284 "Uil.y"
2445 	{ sar_make_def_obj (&yystack.l_mark[0]); }
2446 break;
2447 case 26:
2448 #line 285 "Uil.y"
2449 	{ sar_process_module_variant (&yystack.l_mark[-3], &yystack.l_mark[0]); yyval = gz_yynullval; }
2450 break;
2451 case 27:
2452 #line 289 "Uil.y"
2453 	{ yyval = gz_yynullval; yyval.b_type = sym_k_widget_entry; }
2454 break;
2455 case 28:
2456 #line 290 "Uil.y"
2457 	{ yyval = gz_yynullval; yyval.b_type = sym_k_gadget_entry; }
2458 break;
2459 case 37:
2460 #line 312 "Uil.y"
2461 	{ yyval = yystack.l_mark[0]; sar_save_section_source (&yystack.l_mark[0], sym_k_value_section); }
2462 break;
2463 case 41:
2464 #line 318 "Uil.y"
2465 	{ lex_issue_error (SEMICOLON); }
2466 break;
2467 case 43:
2468 #line 322 "Uil.y"
2469 	{ sar_bind_value_name( &yystack.l_mark[-3], &yystack.l_mark[-1], &yystack.l_mark[0] ); }
2470 break;
2471 case 44:
2472 #line 326 "Uil.y"
2473 	{ yyval = yystack.l_mark[0]; yyval.b_flags |= sym_m_exported; yyval.b_flags &= ~sym_m_private; }
2474 break;
2475 case 45:
2476 #line 327 "Uil.y"
2477 	{ yyval = yystack.l_mark[0]; yyval.b_flags |= sym_m_private; yyval.b_flags &= ~sym_m_exported; }
2478 break;
2479 case 46:
2480 #line 328 "Uil.y"
2481 	{ yyval = yystack.l_mark[0]; yyval.b_flags |= sym_m_private; yyval.b_flags &= ~sym_m_exported; }
2482 break;
2483 case 47:
2484 #line 329 "Uil.y"
2485 	{ sar_import_value_entry( &yyval, &yystack.l_mark[0] ); }
2486 break;
2487 case 48:
2488 #line 333 "Uil.y"
2489 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_integer_value; }
2490 break;
2491 case 49:
2492 #line 334 "Uil.y"
2493 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_char_8_value; }
2494 break;
2495 case 50:
2496 #line 335 "Uil.y"
2497 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_pixmap_value; }
2498 break;
2499 case 51:
2500 #line 336 "Uil.y"
2501 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_float_value; }
2502 break;
2503 case 52:
2504 #line 337 "Uil.y"
2505 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_bool_value; }
2506 break;
2507 case 53:
2508 #line 338 "Uil.y"
2509 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_font_value; }
2510 break;
2511 case 54:
2512 #line 339 "Uil.y"
2513 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_reason_value; }
2514 break;
2515 case 55:
2516 #line 340 "Uil.y"
2517 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_argument_value; }
2518 break;
2519 case 56:
2520 #line 341 "Uil.y"
2521 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_color_value; }
2522 break;
2523 case 57:
2524 #line 342 "Uil.y"
2525 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_string_table_value; }
2526 break;
2527 case 58:
2528 #line 343 "Uil.y"
2529 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_asciz_table_value; }
2530 break;
2531 case 59:
2532 #line 344 "Uil.y"
2533 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_integer_table_value; }
2534 break;
2535 case 60:
2536 #line 345 "Uil.y"
2537 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_trans_table_value; }
2538 break;
2539 case 61:
2540 #line 346 "Uil.y"
2541 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_font_table_value; }
2542 break;
2543 case 62:
2544 #line 347 "Uil.y"
2545 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_icon_value; }
2546 break;
2547 case 63:
2548 #line 348 "Uil.y"
2549 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_compound_string_value; }
2550 break;
2551 case 64:
2552 #line 349 "Uil.y"
2553 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_compound_string_value; }
2554 break;
2555 case 65:
2556 #line 350 "Uil.y"
2557 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_class_rec_name_value; }
2558 break;
2559 case 66:
2560 #line 351 "Uil.y"
2561 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_xbitmapfile_value; }
2562 break;
2563 case 67:
2564 #line 352 "Uil.y"
2565 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_keysym_value; }
2566 break;
2567 case 68:
2568 #line 353 "Uil.y"
2569 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_single_float_value; }
2570 break;
2571 case 69:
2572 #line 354 "Uil.y"
2573 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_rgb_value; }
2574 break;
2575 case 70:
2576 #line 355 "Uil.y"
2577 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_wchar_string_value; }
2578 break;
2579 case 71:
2580 #line 356 "Uil.y"
2581 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_fontset_value; }
2582 break;
2583 case 72:
2584 #line 357 "Uil.y"
2585 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_widget_ref_value; }
2586 break;
2587 case 73:
2588 #line 362 "Uil.y"
2589 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_integer_value; }
2590 break;
2591 case 74:
2592 #line 363 "Uil.y"
2593 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_char_8_value; }
2594 break;
2595 case 75:
2596 #line 364 "Uil.y"
2597 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_pixmap_value; }
2598 break;
2599 case 76:
2600 #line 365 "Uil.y"
2601 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_float_value; }
2602 break;
2603 case 77:
2604 #line 366 "Uil.y"
2605 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_bool_value; }
2606 break;
2607 case 78:
2608 #line 367 "Uil.y"
2609 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_font_value; }
2610 break;
2611 case 79:
2612 #line 368 "Uil.y"
2613 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_reason_value; }
2614 break;
2615 case 80:
2616 #line 369 "Uil.y"
2617 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_color_value; }
2618 break;
2619 case 81:
2620 #line 370 "Uil.y"
2621 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_string_table_value; }
2622 break;
2623 case 82:
2624 #line 371 "Uil.y"
2625 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_asciz_table_value; }
2626 break;
2627 case 83:
2628 #line 372 "Uil.y"
2629 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_integer_table_value; }
2630 break;
2631 case 84:
2632 #line 373 "Uil.y"
2633 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_trans_table_value; }
2634 break;
2635 case 85:
2636 #line 374 "Uil.y"
2637 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_font_table_value; }
2638 break;
2639 case 86:
2640 #line 375 "Uil.y"
2641 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_icon_value; }
2642 break;
2643 case 87:
2644 #line 376 "Uil.y"
2645 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_compound_string_value; }
2646 break;
2647 case 88:
2648 #line 377 "Uil.y"
2649 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_keysym_value; }
2650 break;
2651 case 89:
2652 #line 378 "Uil.y"
2653 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_single_float_value; }
2654 break;
2655 case 90:
2656 #line 379 "Uil.y"
2657 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_wchar_string_value; }
2658 break;
2659 case 91:
2660 #line 380 "Uil.y"
2661 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_fontset_value; }
2662 break;
2663 case 92:
2664 #line 381 "Uil.y"
2665 	{ yyval = yystack.l_mark[0]; yyval.b_type = sym_k_widget_ref_value; }
2666 break;
2667 case 97:
2668 #line 398 "Uil.y"
2669 	{ yyval = yystack.l_mark[0]; sar_save_section_source (&yystack.l_mark[0], sym_k_procedure_section); }
2670 break;
2671 case 101:
2672 #line 404 "Uil.y"
2673 	{ lex_issue_error (SEMICOLON); }
2674 break;
2675 case 103:
2676 #line 408 "Uil.y"
2677 	{ sar_create_procedure( &yystack.l_mark[-3], &yystack.l_mark[-2], &yystack.l_mark[-1], &yystack.l_mark[0] );}
2678 break;
2679 case 104:
2680 #line 412 "Uil.y"
2681 	{ yyval = gz_yynullval; }
2682 break;
2683 case 105:
2684 #line 413 "Uil.y"
2685 	{ yyval = yystack.l_mark[-1]; }
2686 break;
2687 case 106:
2688 #line 417 "Uil.y"
2689 	{ yyval = gz_yynullval; yyval.b_type = sym_k_no_value; }
2690 break;
2691 case 108:
2692 #line 419 "Uil.y"
2693 	{ yyval = yystack.l_mark[0]; yyval.b_type =
2694 sym_k_any_value; }
2695 break;
2696 case 109:
2697 #line 422 "Uil.y"
2698 	{ YYSTYPE temp[2];
2699 	  temp[0] = gz_yynullval;
2700 	  sar_create_object(&temp[0], sym_k_widget_entry);
2701 	  temp[1] = yystack.l_mark[0]; sar_set_object_class(&temp[1]);
2702 	  sar_verify_object(&temp[1]);
2703 	  yyval = temp[0];
2704 	}
2705 break;
2706 case 110:
2707 #line 432 "Uil.y"
2708 	{ yyval.b_flags = sym_m_private; }
2709 break;
2710 case 111:
2711 #line 445 "Uil.y"
2712 	{ yyval = yystack.l_mark[0]; sar_save_section_source (&yystack.l_mark[0], sym_k_identifier_section); }
2713 break;
2714 case 115:
2715 #line 451 "Uil.y"
2716 	{ lex_issue_error (SEMICOLON); }
2717 break;
2718 case 117:
2719 #line 455 "Uil.y"
2720 	{ sar_create_identifier ( &yystack.l_mark[-1], &yystack.l_mark[0] ); }
2721 break;
2722 case 118:
2723 #line 465 "Uil.y"
2724 	{ sar_include_file (&yystack.l_mark[-1], &yystack.l_mark[-3], &yystack.l_mark[0]); }
2725 break;
2726 case 119:
2727 #line 466 "Uil.y"
2728 	{ lex_issue_error (SEMICOLON); }
2729 break;
2730 case 121:
2731 #line 474 "Uil.y"
2732 	{ yyval = yystack.l_mark[0]; sar_save_section_source (&yystack.l_mark[0], sym_k_object_section); }
2733 break;
2734 case 123:
2735 #line 478 "Uil.y"
2736 	{ yyval = yystack.l_mark[-1]; sar_save_src_semicolon_pos (&yystack.l_mark[0] ); }
2737 break;
2738 case 124:
2739 #line 479 "Uil.y"
2740 	{ yyval = yystack.l_mark[-2]; sar_save_src_semicolon_pos (&yystack.l_mark[0] ); }
2741 break;
2742 case 125:
2743 #line 480 "Uil.y"
2744 	{ lex_issue_error (SEMICOLON); }
2745 break;
2746 case 127:
2747 #line 485 "Uil.y"
2748 	{ sar_create_object (&yystack.l_mark[0], sym_k_widget_entry);
2749 	  sar_link_section (&yystack.l_mark[0]); yyval = gz_yynullval;}
2750 break;
2751 case 128:
2752 #line 488 "Uil.y"
2753 	{ yyval = gz_yynullval; }
2754 break;
2755 case 129:
2756 #line 493 "Uil.y"
2757 	{ sar_set_object_flags (&yystack.l_mark[0], sym_m_exported); }
2758 break;
2759 case 131:
2760 #line 496 "Uil.y"
2761 	{ sar_set_object_flags (&yystack.l_mark[0], sym_m_private); }
2762 break;
2763 case 133:
2764 #line 499 "Uil.y"
2765 	{ sar_set_object_flags (&yystack.l_mark[0], sym_m_exported); }
2766 break;
2767 case 135:
2768 #line 502 "Uil.y"
2769 	{ sar_set_object_flags (&yystack.l_mark[0], sym_m_imported); }
2770 break;
2771 case 136:
2772 #line 504 "Uil.y"
2773 	{ sar_set_object_class (&yystack.l_mark[0]); }
2774 break;
2775 case 137:
2776 #line 514 "Uil.y"
2777 	{ sar_verify_object (&yystack.l_mark[-5]); }
2778 break;
2779 case 138:
2780 #line 519 "Uil.y"
2781 	{ sar_set_object_flags (&yystack.l_mark[0], sym_m_exported); }
2782 break;
2783 case 140:
2784 #line 522 "Uil.y"
2785 	{ sar_set_object_flags (&yystack.l_mark[0], sym_m_private); }
2786 break;
2787 case 142:
2788 #line 525 "Uil.y"
2789 	{ sar_set_object_flags (& yystack.l_mark[0], (sym_m_managed | sym_m_exported)); }
2790 break;
2791 case 144:
2792 #line 528 "Uil.y"
2793 	{ sar_unset_object_flags (& yystack.l_mark[0], sym_m_managed), sar_set_object_flags (& yystack.l_mark[0], sym_m_exported); }
2794 break;
2795 case 146:
2796 #line 531 "Uil.y"
2797 	{ sar_set_object_flags (&yystack.l_mark[0], sym_m_exported); }
2798 break;
2799 case 148:
2800 #line 534 "Uil.y"
2801 	{ sar_set_object_flags (&yystack.l_mark[0], sym_m_imported); }
2802 break;
2803 case 149:
2804 #line 536 "Uil.y"
2805 	{ sar_set_object_class (&yystack.l_mark[0]); }
2806 break;
2807 case 150:
2808 #line 538 "Uil.y"
2809 	{ sar_verify_object (&yystack.l_mark[-4]); }
2810 break;
2811 case 151:
2812 #line 543 "Uil.y"
2813 	{ sar_set_object_class (&yystack.l_mark[0]); }
2814 break;
2815 case 152:
2816 #line 547 "Uil.y"
2817 	{ sar_verify_object (&yystack.l_mark[-4]); }
2818 break;
2819 case 153:
2820 #line 552 "Uil.y"
2821 	{ sar_set_object_variant (&yystack.l_mark[0]); }
2822 break;
2823 case 154:
2824 #line 554 "Uil.y"
2825 	{ sar_set_object_variant (&yystack.l_mark[0]); }
2826 break;
2827 case 155:
2828 #line 559 "Uil.y"
2829 	{ sar_set_object_class (&yystack.l_mark[0]); yyval = gz_yynullval;}
2830 break;
2831 case 156:
2832 #line 563 "Uil.y"
2833 	{ sar_verify_object (&yystack.l_mark[-4]); }
2834 break;
2835 case 158:
2836 #line 569 "Uil.y"
2837 	{ sar_process_proc_ref (&yystack.l_mark[-1], &gz_yynullval, sym_k_object_proc);
2838 	  sar_save_user_proc_ref_src ( &yystack.l_mark[-2], &yystack.l_mark[-1], &yystack.l_mark[0] ); }
2839 break;
2840 case 160:
2841 #line 575 "Uil.y"
2842 	{ yyval = yystack.l_mark[0]; }
2843 break;
2844 case 161:
2845 #line 585 "Uil.y"
2846 	{ sar_object_reference (&yystack.l_mark[0]); }
2847 break;
2848 case 164:
2849 #line 588 "Uil.y"
2850 	{ lex_issue_error (RIGHT_BRACE); }
2851 break;
2852 case 166:
2853 #line 593 "Uil.y"
2854 	{ sar_object_reference (&yystack.l_mark[0]); }
2855 break;
2856 case 167:
2857 #line 596 "Uil.y"
2858 	{ sar_set_object_flags (&yystack.l_mark[-2], sym_m_exported); }
2859 break;
2860 case 168:
2861 #line 599 "Uil.y"
2862 	{ sar_set_object_flags (&yystack.l_mark[-3], sym_m_exported); }
2863 break;
2864 case 169:
2865 #line 600 "Uil.y"
2866 	{ lex_issue_error (RIGHT_BRACE); }
2867 break;
2868 case 171:
2869 #line 606 "Uil.y"
2870 	{ sar_set_object_flags (&yystack.l_mark[-2], sym_m_private); }
2871 break;
2872 case 172:
2873 #line 609 "Uil.y"
2874 	{ sar_set_object_flags (&yystack.l_mark[-3], sym_m_private); }
2875 break;
2876 case 173:
2877 #line 610 "Uil.y"
2878 	{ lex_issue_error (RIGHT_BRACE); }
2879 break;
2880 case 177:
2881 #line 620 "Uil.y"
2882 	{ sar_save_list_end ( &yystack.l_mark[0]); sar_save_feature (&yystack.l_mark[-1]); yyval = gz_yynullval; }
2883 break;
2884 case 178:
2885 #line 622 "Uil.y"
2886 	{ sar_save_list_end ( &yystack.l_mark[0]); sar_save_feature (&yystack.l_mark[-1]); yyval = gz_yynullval; }
2887 break;
2888 case 179:
2889 #line 624 "Uil.y"
2890 	{ sar_save_list_end ( &yystack.l_mark[0]); sar_save_feature (&yystack.l_mark[-1]);
2891 sar_update_parent_list (&yystack.l_mark[-1]); yyval = gz_yynullval; }
2892 break;
2893 case 180:
2894 #line 626 "Uil.y"
2895 	{ lex_issue_error (SEMICOLON); }
2896 break;
2897 case 182:
2898 #line 631 "Uil.y"
2899 	{ yyval = gz_yynullval; }
2900 break;
2901 case 183:
2902 #line 639 "Uil.y"
2903 	{ yyval = yystack.l_mark[0]; sar_save_section_source (&yystack.l_mark[0], sym_k_list_section); }
2904 break;
2905 case 185:
2906 #line 644 "Uil.y"
2907 	{ yyval = yystack.l_mark[-1]; sar_save_src_semicolon_pos (&yystack.l_mark[0] ); }
2908 break;
2909 case 186:
2910 #line 645 "Uil.y"
2911 	{ yyval = yystack.l_mark[-2]; sar_save_src_semicolon_pos (&yystack.l_mark[0] ); }
2912 break;
2913 case 187:
2914 #line 646 "Uil.y"
2915 	{ lex_issue_error (SEMICOLON); }
2916 break;
2917 case 189:
2918 #line 651 "Uil.y"
2919 	{ sar_create_object (&yystack.l_mark[0], sym_k_list_entry);
2920 sar_link_section (&yystack.l_mark[0]); yyval = gz_yynullval;}
2921 break;
2922 case 190:
2923 #line 654 "Uil.y"
2924 	{ yyval = gz_yynullval; }
2925 break;
2926 case 195:
2927 #line 666 "Uil.y"
2928 	{ yyval = gz_yynullval; sar_set_list_type (&yystack.l_mark[0]); }
2929 break;
2930 case 196:
2931 #line 668 "Uil.y"
2932 	{ sar_verify_object (&yystack.l_mark[-2]); }
2933 break;
2934 case 197:
2935 #line 673 "Uil.y"
2936 	{ yyval = gz_yynullval; sar_set_list_type (&yystack.l_mark[0]); }
2937 break;
2938 case 198:
2939 #line 675 "Uil.y"
2940 	{ sar_verify_object (&yystack.l_mark[-2]); }
2941 break;
2942 case 199:
2943 #line 680 "Uil.y"
2944 	{ yyval = gz_yynullval; sar_set_list_type (&yystack.l_mark[0]); }
2945 break;
2946 case 200:
2947 #line 682 "Uil.y"
2948 	{ sar_verify_object (&yystack.l_mark[-2]); }
2949 break;
2950 case 201:
2951 #line 687 "Uil.y"
2952 	{ yyval = gz_yynullval; sar_set_list_type (&yystack.l_mark[0]); }
2953 break;
2954 case 202:
2955 #line 689 "Uil.y"
2956 	{ sar_verify_object (&yystack.l_mark[-2]); }
2957 break;
2958 case 203:
2959 #line 694 "Uil.y"
2960 	{ yyval = gz_yynullval; yyval.b_type = sym_k_argument_list; }
2961 break;
2962 case 204:
2963 #line 699 "Uil.y"
2964 	{ yyval = gz_yynullval; yyval.b_type = sym_k_callback_list; }
2965 break;
2966 case 205:
2967 #line 704 "Uil.y"
2968 	{ yyval = gz_yynullval; yyval.b_type = sym_k_proc_ref_list; }
2969 break;
2970 case 206:
2971 #line 708 "Uil.y"
2972 	{ yyval = gz_yynullval; yyval.b_type = sym_k_control_list; }
2973 break;
2974 case 207:
2975 #line 712 "Uil.y"
2976 	{ sar_object_reference (&yystack.l_mark[0]); }
2977 break;
2978 case 210:
2979 #line 715 "Uil.y"
2980 	{ lex_issue_error (RIGHT_BRACE); }
2981 break;
2982 case 212:
2983 #line 719 "Uil.y"
2984 	{ sar_object_reference (&yystack.l_mark[0]); }
2985 break;
2986 case 215:
2987 #line 722 "Uil.y"
2988 	{ lex_issue_error (RIGHT_BRACE); }
2989 break;
2990 case 217:
2991 #line 727 "Uil.y"
2992 	{ sar_object_reference (&yystack.l_mark[0]); }
2993 break;
2994 case 220:
2995 #line 730 "Uil.y"
2996 	{ lex_issue_error (RIGHT_BRACE); }
2997 break;
2998 case 222:
2999 #line 734 "Uil.y"
3000 	{ sar_object_reference (&yystack.l_mark[0]); }
3001 break;
3002 case 225:
3003 #line 737 "Uil.y"
3004 	{ lex_issue_error (RIGHT_BRACE); }
3005 break;
3006 case 235:
3007 #line 762 "Uil.y"
3008 	{ sar_save_src_entry_end (&yystack.l_mark[0], &yystack.l_mark[-1]); sar_add_list_entry (&yystack.l_mark[-1]); yyval = gz_yynullval; }
3009 break;
3010 case 236:
3011 #line 764 "Uil.y"
3012 	{ sar_save_src_entry_end (&yystack.l_mark[0], &yystack.l_mark[-1]); sar_add_list_entry (&yystack.l_mark[-1]); yyval = gz_yynullval; }
3013 break;
3014 case 237:
3015 #line 765 "Uil.y"
3016 	{ lex_issue_error (SEMICOLON); }
3017 break;
3018 case 239:
3019 #line 770 "Uil.y"
3020 	{ sar_save_src_entry_end (&yystack.l_mark[0], &yystack.l_mark[-1]); sar_add_list_entry (&yystack.l_mark[-1]); yyval = gz_yynullval; }
3021 break;
3022 case 240:
3023 #line 772 "Uil.y"
3024 	{ sar_save_src_entry_end (&yystack.l_mark[0], &yystack.l_mark[-1]); sar_add_list_entry (&yystack.l_mark[-1]); yyval = gz_yynullval; }
3025 break;
3026 case 241:
3027 #line 773 "Uil.y"
3028 	{ lex_issue_error (SEMICOLON); }
3029 break;
3030 case 243:
3031 #line 778 "Uil.y"
3032 	{ sar_save_src_entry_end (&yystack.l_mark[0], &yystack.l_mark[-1]); sar_add_list_entry (&yystack.l_mark[-1]); yyval = gz_yynullval; }
3033 break;
3034 case 244:
3035 #line 780 "Uil.y"
3036 	{ sar_save_src_entry_end (&yystack.l_mark[0], &yystack.l_mark[-1]); sar_add_list_entry (&yystack.l_mark[-1]); yyval = gz_yynullval; }
3037 break;
3038 case 245:
3039 #line 781 "Uil.y"
3040 	{ lex_issue_error (SEMICOLON); }
3041 break;
3042 case 247:
3043 #line 786 "Uil.y"
3044 	{ sar_save_src_entry_end (&yystack.l_mark[0], &yystack.l_mark[-1]); sar_add_list_entry (&yystack.l_mark[-1]); yyval = gz_yynullval; }
3045 break;
3046 case 248:
3047 #line 788 "Uil.y"
3048 	{ sar_save_src_entry_end (&yystack.l_mark[0], &yystack.l_mark[-1]); sar_add_list_entry (&yystack.l_mark[-1]); yyval = gz_yynullval; }
3049 break;
3050 case 249:
3051 #line 789 "Uil.y"
3052 	{ lex_issue_error (SEMICOLON); }
3053 break;
3054 case 251:
3055 #line 794 "Uil.y"
3056 	{ yyval = gz_yynullval; sar_create_object (&yystack.l_mark[0], sym_k_list_entry); }
3057 break;
3058 case 252:
3059 #line 796 "Uil.y"
3060 	{ yyval = yystack.l_mark[-2]; }
3061 break;
3062 case 253:
3063 #line 801 "Uil.y"
3064 	{ yyval = gz_yynullval; sar_create_object (&yystack.l_mark[0], sym_k_list_entry); }
3065 break;
3066 case 254:
3067 #line 803 "Uil.y"
3068 	{ yyval = yystack.l_mark[-2]; }
3069 break;
3070 case 255:
3071 #line 808 "Uil.y"
3072 	{ yyval = gz_yynullval; sar_create_object (&yystack.l_mark[0], sym_k_list_entry); }
3073 break;
3074 case 256:
3075 #line 810 "Uil.y"
3076 	{ yyval = yystack.l_mark[-2]; }
3077 break;
3078 case 257:
3079 #line 815 "Uil.y"
3080 	{ yyval = gz_yynullval; sar_create_object (&yystack.l_mark[0], sym_k_list_entry); }
3081 break;
3082 case 258:
3083 #line 817 "Uil.y"
3084 	{ yyval = yystack.l_mark[-2]; }
3085 break;
3086 case 259:
3087 #line 825 "Uil.y"
3088 	{ sar_save_control_item (&yystack.l_mark[-1], &yystack.l_mark[0]); yyval = yystack.l_mark[-1]; }
3089 break;
3090 case 260:
3091 #line 828 "Uil.y"
3092 	{ sar_create_object (& yystack.l_mark[0], sym_k_widget_entry); yystack.l_mark[0].b_flags = sym_m_managed; yyval = gz_yynullval;}
3093 break;
3094 case 261:
3095 #line 831 "Uil.y"
3096 	{ sar_save_control_widget (& yystack.l_mark[-3], & yystack.l_mark[-2]); yyval = yystack.l_mark[-3]; }
3097 break;
3098 case 262:
3099 #line 834 "Uil.y"
3100 	{ sar_create_child (& yystack.l_mark[-1]); yystack.l_mark[-1].b_flags = sym_m_managed;
3101 	  yyval = gz_yynullval; }
3102 break;
3103 case 263:
3104 #line 837 "Uil.y"
3105 	{ sar_save_control_widget (& yystack.l_mark[-3], & yystack.l_mark[-2]); yyval = yystack.l_mark[-3]; }
3106 break;
3107 case 264:
3108 #line 839 "Uil.y"
3109 	{ sar_create_child (& yystack.l_mark[-1]); yyval = gz_yynullval; }
3110 break;
3111 case 265:
3112 #line 841 "Uil.y"
3113 	{ sar_save_control_widget (& yystack.l_mark[-3], & yystack.l_mark[-1]); yyval = yystack.l_mark[-3]; }
3114 break;
3115 case 268:
3116 #line 855 "Uil.y"
3117 	{ sar_save_argument_pair (&yystack.l_mark[-2], &yystack.l_mark[0], &yystack.l_mark[-1]); yyval = yystack.l_mark[-2]; }
3118 break;
3119 case 269:
3120 #line 860 "Uil.y"
3121 	{ YYSTYPE temp [2];
3122 	  temp [0] = gz_yynullval;
3123 	  sar_create_object (&temp [0], sym_k_widget_entry);
3124 	  temp [1] = yystack.l_mark[-1]; sar_set_object_class (&temp [1]);
3125 	  temp [1] = yystack.l_mark[0]; sar_object_reference (&temp [1]);
3126 	  sar_verify_object (&temp [1]);
3127 	  sar_save_argument_pair (&yystack.l_mark[-3], &temp [0], &yystack.l_mark[-2]); yyval = yystack.l_mark[-3]; }
3128 break;
3129 case 270:
3130 #line 874 "Uil.y"
3131 	{ sar_save_reason_binding (&yystack.l_mark[-2], &yystack.l_mark[0], &yystack.l_mark[-1]); yyval = yystack.l_mark[-2]; }
3132 break;
3133 case 271:
3134 #line 876 "Uil.y"
3135 	{ sar_save_reason_binding (&yystack.l_mark[-2], &yystack.l_mark[0], &yystack.l_mark[-1]); yyval = yystack.l_mark[-2]; }
3136 break;
3137 case 272:
3138 #line 881 "Uil.y"
3139 	{ sar_create_object (&yystack.l_mark[0], sym_k_widget_entry); yyval = gz_yynullval; }
3140 break;
3141 case 273:
3142 #line 883 "Uil.y"
3143 	{ yyval = yystack.l_mark[-2]; }
3144 break;
3145 case 274:
3146 #line 888 "Uil.y"
3147 	{ yyval.b_flags = sym_m_managed; }
3148 break;
3149 case 275:
3150 #line 890 "Uil.y"
3151 	{ yyval = gz_yynullval; yyval.b_flags = sym_m_managed; }
3152 break;
3153 case 276:
3154 #line 892 "Uil.y"
3155 	{ yyval = gz_yynullval; }
3156 break;
3157 case 277:
3158 #line 897 "Uil.y"
3159 	{ sar_process_proc_ref (&yystack.l_mark[-1], &yystack.l_mark[0], sym_k_callback_proc); yyval = yystack.l_mark[-1]; }
3160 break;
3161 case 278:
3162 #line 902 "Uil.y"
3163 	{ sar_process_proc_ref (&yystack.l_mark[-1], &yystack.l_mark[0], sym_k_callback_proc); yyval = yystack.l_mark[-1]; }
3164 break;
3165 case 280:
3166 #line 908 "Uil.y"
3167 	{ yyval = yystack.l_mark[-1]; }
3168 break;
3169 case 281:
3170 #line 910 "Uil.y"
3171 	{ YYSTYPE temp [2];
3172 	  temp [0] = gz_yynullval;
3173 	  sar_create_object (&temp [0], sym_k_widget_entry);
3174 	  temp [1] = yystack.l_mark[-2]; sar_set_object_class (&temp [1]);
3175 	  temp [1] = yystack.l_mark[-1]; sar_object_reference (&temp [1]);
3176 	  sar_verify_object (&temp [1]);
3177 	  yyval = temp [0]; }
3178 break;
3179 case 282:
3180 #line 918 "Uil.y"
3181 	{ yyval = gz_yynullval; }
3182 break;
3183 case 290:
3184 #line 933 "Uil.y"
3185 	{ sar_map_keyword_to_name( &yyval, &yystack.l_mark[0]); }
3186 break;
3187 case 291:
3188 #line 940 "Uil.y"
3189 	{ sar_process_id_ref (&yystack.l_mark[0]); yyval = yystack.l_mark[0]; }
3190 break;
3191 case 332:
3192 #line 998 "Uil.y"
3193 	{
3194                  yyval = yystack.l_mark[0];
3195 		 if ((yyval.b_type != sym_k_error_value) &&
3196 		     (yyval.b_type != sym_k_any_value) &&
3197 		    ((yyval.b_flags &sym_m_forward_ref) == 0))
3198 		       {
3199 			if ((yyval.b_type != sym_k_char_8_value) &&
3200 			    (yyval.b_type != sym_k_localized_string_value))
3201 		  	    sar_value_type_error( &yyval, sym_k_char_8_value );
3202 			if ((yyval.b_flags &sym_m_private) == 0)
3203 			    sar_private_error( &yyval );
3204 		       }
3205 		}
3206 break;
3207 case 333:
3208 #line 1014 "Uil.y"
3209 	{ yyval = yystack.l_mark[0];
3210 								  if (yyval.b_type != sym_k_error_value)
3211 								  {
3212 								    if (((yyval.b_flags &sym_m_private) == 0) &&
3213 									((yyval.b_flags &sym_m_forward_ref) == 0))
3214 									sar_private_error( &yyval );
3215 								  }
3216  								}
3217 break;
3218 case 334:
3219 #line 1027 "Uil.y"
3220 	{ yyval = yystack.l_mark[0];
3221  								  if (yyval.b_type != sym_k_error_value)
3222  								  {
3223  								    if (((yyval.b_flags &sym_m_private) == 0) &&
3224  									((yyval.b_flags &sym_m_forward_ref) == 0))
3225  									sar_private_error( &yyval );
3226  								  }
3227 							}
3228 break;
3229 case 335:
3230 #line 1035 "Uil.y"
3231 	{ yyval = yystack.l_mark[0];
3232  								  if (yyval.b_type != sym_k_error_value)
3233  								  {
3234  								    if (((yyval.b_flags &sym_m_private) == 0) &&
3235  									((yyval.b_flags &sym_m_forward_ref) == 0))
3236  									sar_private_error( &yyval );
3237  								  }
3238  								}
3239 break;
3240 case 336:
3241 #line 1045 "Uil.y"
3242 	{ sar_make_color_table( &yyval, &yystack.l_mark[-1], &yystack.l_mark[-3]); }
3243 break;
3244 case 338:
3245 #line 1052 "Uil.y"
3246 	{ yyval = yystack.l_mark[-1]; sar_binary_op( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0] ); }
3247 break;
3248 case 339:
3249 #line 1053 "Uil.y"
3250 	{ yyval = yystack.l_mark[-1]; sar_binary_op( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0] ); }
3251 break;
3252 case 341:
3253 #line 1058 "Uil.y"
3254 	{ yyval = yystack.l_mark[-1]; sar_binary_op( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0] ); }
3255 break;
3256 case 343:
3257 #line 1063 "Uil.y"
3258 	{ yyval = yystack.l_mark[-1]; sar_binary_op( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0] ); }
3259 break;
3260 case 344:
3261 #line 1064 "Uil.y"
3262 	{ yyval = yystack.l_mark[-1]; sar_binary_op( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0] ); }
3263 break;
3264 case 346:
3265 #line 1069 "Uil.y"
3266 	{ yyval = yystack.l_mark[-1]; sar_binary_op( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0] ); }
3267 break;
3268 case 347:
3269 #line 1070 "Uil.y"
3270 	{ yyval = yystack.l_mark[-1]; sar_binary_op( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0] ); }
3271 break;
3272 case 349:
3273 #line 1075 "Uil.y"
3274 	{ yyval = yystack.l_mark[-1]; sar_binary_op( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0] ); }
3275 break;
3276 case 350:
3277 #line 1076 "Uil.y"
3278 	{ yyval = yystack.l_mark[-1]; sar_binary_op( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0] ); }
3279 break;
3280 case 352:
3281 #line 1081 "Uil.y"
3282 	{ yyval = yystack.l_mark[-1]; sar_unary_op( &yyval, &yystack.l_mark[0] ); }
3283 break;
3284 case 353:
3285 #line 1082 "Uil.y"
3286 	{ yyval = yystack.l_mark[-1]; sar_unary_op( &yyval, &yystack.l_mark[0] ); }
3287 break;
3288 case 354:
3289 #line 1083 "Uil.y"
3290 	{ yyval = yystack.l_mark[-1]; sar_unary_op( &yyval, &yystack.l_mark[0] ); }
3291 break;
3292 case 356:
3293 #line 1088 "Uil.y"
3294 	{ yyval = yystack.l_mark[-1]; }
3295 break;
3296 case 357:
3297 #line 1092 "Uil.y"
3298 	{ sar_make_private_value( &yyval, &yystack.l_mark[0], sym_k_integer_value,
3299 								  &yystack.l_mark[0], XmPIXELS); }
3300 break;
3301 case 358:
3302 #line 1094 "Uil.y"
3303 	{ sar_make_private_value( &yyval, &yystack.l_mark[-1], sym_k_integer_value,
3304 								  &yystack.l_mark[-1], sar_get_units_type(&yystack.l_mark[0])); }
3305 break;
3306 case 359:
3307 #line 1096 "Uil.y"
3308 	{ /* Don't use FALSE because it is a token not a Boolean! */
3309 								  Uil_lex_l_charset_specified = 0;
3310 								  sar_make_private_value( &yyval, &yystack.l_mark[0], sym_k_char_8_value,
3311 								  &yystack.l_mark[0], 0); }
3312 break;
3313 case 360:
3314 #line 1100 "Uil.y"
3315 	{ sar_process_id( &yyval, &yystack.l_mark[0] );}
3316 break;
3317 case 361:
3318 #line 1101 "Uil.y"
3319 	{ sar_make_private_value( &yyval, &yystack.l_mark[0], sym_k_float_value,
3320 								  &yystack.l_mark[0], XmPIXELS); }
3321 break;
3322 case 362:
3323 #line 1103 "Uil.y"
3324 	{ sar_make_private_value( &yyval, &yystack.l_mark[-1], sym_k_float_value,
3325 								  &yystack.l_mark[-1], sar_get_units_type(&yystack.l_mark[0])); }
3326 break;
3327 case 363:
3328 #line 1105 "Uil.y"
3329 	{ sar_value_not_implemented( &yyval, &yystack.l_mark[-3], "pixmap literal" ); }
3330 break;
3331 case 364:
3332 #line 1106 "Uil.y"
3333 	{ yyval = yystack.l_mark[-1]; }
3334 break;
3335 case 365:
3336 #line 1107 "Uil.y"
3337 	{ yyval = yystack.l_mark[-1]; }
3338 break;
3339 case 366:
3340 #line 1108 "Uil.y"
3341 	{ yyval = yystack.l_mark[-1]; }
3342 break;
3343 case 367:
3344 #line 1109 "Uil.y"
3345 	{ sar_make_private_value(&yyval, &yystack.l_mark[-1], sym_k_reason_value,
3346 								  &yystack.l_mark[-3], 0); }
3347 break;
3348 case 368:
3349 #line 1111 "Uil.y"
3350 	{ sar_make_private_value(&yyval, &yystack.l_mark[-1], sym_k_class_rec_name_value,
3351 											 &yystack.l_mark[-3], 0); }
3352 break;
3353 case 369:
3354 #line 1114 "Uil.y"
3355 	{ sar_make_private_value
3356 								      ( &yyval, &yystack.l_mark[-2], sym_k_argument_value, &yystack.l_mark[-4], yystack.l_mark[-1].b_type ); }
3357 break;
3358 case 370:
3359 #line 1116 "Uil.y"
3360 	{ sar_make_private_value( &yyval, &yystack.l_mark[0], sym_k_bool_value,
3361 								  &yystack.l_mark[0], 0); }
3362 break;
3363 case 371:
3364 #line 1118 "Uil.y"
3365 	{ sar_make_private_value( &yyval, &yystack.l_mark[0], sym_k_bool_value,
3366 								  &yystack.l_mark[0], 0); }
3367 break;
3368 case 372:
3369 #line 1120 "Uil.y"
3370 	{ sar_make_private_value( &yyval, &yystack.l_mark[0], sym_k_bool_value,
3371 								  &yystack.l_mark[0], 0); }
3372 break;
3373 case 373:
3374 #line 1122 "Uil.y"
3375 	{ sar_make_private_value( &yyval, &yystack.l_mark[0], sym_k_bool_value,
3376 								  &yystack.l_mark[0], 0); }
3377 break;
3378 case 374:
3379 #line 1124 "Uil.y"
3380 	{ /* Don't use FALSE because it is a token not a Boolean! */
3381 								  Uil_lex_l_charset_specified = 0;
3382 								  sar_make_private_value
3383 								      ( &yyval, &yystack.l_mark[0], sym_k_compound_string_value, &yystack.l_mark[0], 0); }
3384 break;
3385 case 375:
3386 #line 1128 "Uil.y"
3387 	{ sar_make_private_value( &yyval, &yystack.l_mark[-1], sym_k_string_table_value,
3388 								  &yystack.l_mark[-3], 0); }
3389 break;
3390 case 376:
3391 #line 1130 "Uil.y"
3392 	{ sar_make_private_value( &yyval, &yystack.l_mark[-1], sym_k_asciz_table_value,
3393 								  &yystack.l_mark[-3], 0); }
3394 break;
3395 case 377:
3396 #line 1132 "Uil.y"
3397 	{ sar_make_private_value( &yyval, &yystack.l_mark[-1], sym_k_integer_table_value,
3398 								  &yystack.l_mark[-3], 0); }
3399 break;
3400 case 378:
3401 #line 1134 "Uil.y"
3402 	{ sar_make_private_value( &yyval, &yystack.l_mark[-1], sym_k_trans_table_value,
3403 								  &yystack.l_mark[-3], 0); }
3404 break;
3405 case 379:
3406 #line 1136 "Uil.y"
3407 	{ yyval = yystack.l_mark[-1]; }
3408 break;
3409 case 380:
3410 #line 1137 "Uil.y"
3411 	{ yyval = yystack.l_mark[-1]; }
3412 break;
3413 case 381:
3414 #line 1138 "Uil.y"
3415 	{ yyval = yystack.l_mark[-1]; }
3416 break;
3417 case 382:
3418 #line 1139 "Uil.y"
3419 	{ yyval = yystack.l_mark[-1]; }
3420 break;
3421 case 383:
3422 #line 1140 "Uil.y"
3423 	{ yyval = yystack.l_mark[-3]; sar_unary_op( &yyval, &yystack.l_mark[-1] ); }
3424 break;
3425 case 384:
3426 #line 1141 "Uil.y"
3427 	{ yyval = yystack.l_mark[-3]; sar_unary_op( &yyval, &yystack.l_mark[-1] ); }
3428 break;
3429 case 385:
3430 #line 1143 "Uil.y"
3431 	{ sar_make_private_value(&yyval, &yystack.l_mark[-1], sym_k_xbitmapfile_value,
3432 											 &yystack.l_mark[-3], 0); }
3433 break;
3434 case 386:
3435 #line 1146 "Uil.y"
3436 	{ sar_make_private_value(&yyval, &yystack.l_mark[-1], sym_k_keysym_value,
3437 											 &yystack.l_mark[-3], 0); }
3438 break;
3439 case 387:
3440 #line 1149 "Uil.y"
3441 	{ yyval = yystack.l_mark[-3]; sar_unary_op( &yyval, &yystack.l_mark[-1] ); }
3442 break;
3443 case 388:
3444 #line 1151 "Uil.y"
3445 	{ sar_make_private_value( & yyval, & yystack.l_mark[-1], sym_k_rgb_value,
3446 								  &yystack.l_mark[-3], 0); }
3447 break;
3448 case 389:
3449 #line 1153 "Uil.y"
3450 	{ yyval = yystack.l_mark[-1]; }
3451 break;
3452 case 390:
3453 #line 1154 "Uil.y"
3454 	{ sar_make_private_value(&yyval, &yystack.l_mark[0], sym_k_localized_string_value,
3455 								  &yystack.l_mark[0], 0); }
3456 break;
3457 case 391:
3458 #line 1160 "Uil.y"
3459 	{ yyval = gz_yynullval; }
3460 break;
3461 case 392:
3462 #line 1162 "Uil.y"
3463 	{ yyval = yystack.l_mark[0]; }
3464 break;
3465 case 393:
3466 #line 1167 "Uil.y"
3467 	{ sar_append_table_value (&yystack.l_mark[0], &gz_yynullval, sym_k_trans_table_value, &yystack.l_mark[0]); yyval = yystack.l_mark[0]; }
3468 break;
3469 case 394:
3470 #line 1169 "Uil.y"
3471 	{ sar_append_table_value (&yystack.l_mark[0], &yystack.l_mark[-2], sym_k_trans_table_value, &yystack.l_mark[-1]); yyval = yystack.l_mark[0]; }
3472 break;
3473 case 395:
3474 #line 1174 "Uil.y"
3475 	{ yyval = gz_yynullval; }
3476 break;
3477 case 396:
3478 #line 1176 "Uil.y"
3479 	{ yyval = yystack.l_mark[0]; }
3480 break;
3481 case 397:
3482 #line 1181 "Uil.y"
3483 	{ sar_append_table_value (&yystack.l_mark[0], &gz_yynullval, sym_k_asciz_table_value, &yystack.l_mark[0]); yyval = yystack.l_mark[0]; }
3484 break;
3485 case 398:
3486 #line 1183 "Uil.y"
3487 	{ sar_append_table_value (&yystack.l_mark[0], &yystack.l_mark[-2], sym_k_asciz_table_value, &yystack.l_mark[-1]); yyval = yystack.l_mark[0]; }
3488 break;
3489 case 399:
3490 #line 1188 "Uil.y"
3491 	{ yyval = gz_yynullval; }
3492 break;
3493 case 400:
3494 #line 1190 "Uil.y"
3495 	{ yyval = yystack.l_mark[0]; }
3496 break;
3497 case 401:
3498 #line 1195 "Uil.y"
3499 	{ sar_append_table_value (&yystack.l_mark[0], &gz_yynullval, sym_k_integer_table_value, &yystack.l_mark[0]); yyval = yystack.l_mark[0]; }
3500 break;
3501 case 402:
3502 #line 1197 "Uil.y"
3503 	{ sar_append_table_value (&yystack.l_mark[0], &yystack.l_mark[-2], sym_k_integer_table_value, &yystack.l_mark[-1]); yyval = yystack.l_mark[0]; }
3504 break;
3505 case 403:
3506 #line 1203 "Uil.y"
3507 	{sar_append_table_value(&yystack.l_mark[-4], & gz_yynullval, sym_k_integer_table_value, & yystack.l_mark[-4]);
3508      sar_append_table_value(& yystack.l_mark[-2], & yystack.l_mark[-4], sym_k_integer_table_value, & yystack.l_mark[-3]);
3509      sar_append_table_value(& yystack.l_mark[0], & yystack.l_mark[-2], sym_k_integer_table_value, & yystack.l_mark[-1]);
3510      yyval = yystack.l_mark[0];}
3511 break;
3512 case 404:
3513 #line 1212 "Uil.y"
3514 	{ yyval = gz_yynullval; }
3515 break;
3516 case 405:
3517 #line 1214 "Uil.y"
3518 	{ yyval = yystack.l_mark[0]; }
3519 break;
3520 case 406:
3521 #line 1219 "Uil.y"
3522 	{ sar_append_table_value (&yystack.l_mark[0], &gz_yynullval, sym_k_string_table_value, &yystack.l_mark[0]); yyval = yystack.l_mark[0]; }
3523 break;
3524 case 407:
3525 #line 1221 "Uil.y"
3526 	{ sar_append_table_value (&yystack.l_mark[0], &yystack.l_mark[-2], sym_k_string_table_value, &yystack.l_mark[-1]); yyval = yystack.l_mark[0]; }
3527 break;
3528 case 408:
3529 #line 1225 "Uil.y"
3530 	{ yyval = gz_yynullval; yyval.b_type = sym_k_any_value; }
3531 break;
3532 case 409:
3533 #line 1226 "Uil.y"
3534 	{ yyval = gz_yynullval; yyval.b_type = yystack.l_mark[0].b_type; }
3535 break;
3536 case 410:
3537 #line 1227 "Uil.y"
3538 	{ yyval = gz_yynullval; yyval.b_type = sym_k_any_value; }
3539 break;
3540 case 411:
3541 #line 1231 "Uil.y"
3542 	{ sar_make_comp_str( &yyval, &yystack.l_mark[0], &gz_yynullval, &yystack.l_mark[-2] ); }
3543 break;
3544 case 412:
3545 #line 1232 "Uil.y"
3546 	{ sar_make_comp_str( &yyval, &yystack.l_mark[-1], &yystack.l_mark[0], &yystack.l_mark[-3] ); }
3547 break;
3548 case 413:
3549 #line 1236 "Uil.y"
3550 	{ sar_make_comp_str_comp(&yyval, &yystack.l_mark[0], &gz_yynullval, &yystack.l_mark[-2] ); }
3551 break;
3552 case 414:
3553 #line 1237 "Uil.y"
3554 	{ sar_make_comp_str_comp( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0], &yystack.l_mark[-4] ); }
3555 break;
3556 case 415:
3557 #line 1238 "Uil.y"
3558 	{ sar_make_comp_str_comp( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0], &yystack.l_mark[-4] ); }
3559 break;
3560 case 416:
3561 #line 1239 "Uil.y"
3562 	{ sar_make_comp_str_comp( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0], &yystack.l_mark[-4] ); }
3563 break;
3564 case 417:
3565 #line 1240 "Uil.y"
3566 	{ sar_make_comp_str_comp( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0], &yystack.l_mark[-4] ); }
3567 break;
3568 case 418:
3569 #line 1244 "Uil.y"
3570 	{ sar_chk_comp_str_attr( &yyval, &yystack.l_mark[0], &gz_yynullval ); }
3571 break;
3572 case 419:
3573 #line 1245 "Uil.y"
3574 	{ sar_chk_comp_str_attr( &yyval, &yystack.l_mark[0], &yystack.l_mark[-2] ); }
3575 break;
3576 case 420:
3577 #line 1249 "Uil.y"
3578 	{ yyval.b_type = yystack.l_mark[-2].b_type;
3579 							  yyval.b_tag = yystack.l_mark[0].b_tag;
3580 							  yyval.value.az_keyword_entry = yystack.l_mark[0].value.az_keyword_entry;
3581 							  yyval.value.az_symbol_entry = yystack.l_mark[0].value.az_symbol_entry; }
3582 break;
3583 case 421:
3584 #line 1253 "Uil.y"
3585 	{ yyval.b_type = yystack.l_mark[-2].b_type;
3586 							  yyval.value.az_symbol_entry = yystack.l_mark[0].value.az_symbol_entry; }
3587 break;
3588 case 422:
3589 #line 1255 "Uil.y"
3590 	{ yyval.b_type = yystack.l_mark[-2].b_type;
3591 							  yyval.value.az_symbol_entry = yystack.l_mark[0].value.az_symbol_entry; }
3592 break;
3593 case 423:
3594 #line 1260 "Uil.y"
3595 	{ sar_make_wchar_str( &yyval, &yystack.l_mark[0], &gz_yynullval, &yystack.l_mark[-2] ); }
3596 break;
3597 case 424:
3598 #line 1265 "Uil.y"
3599 	{ sar_make_font( &yyval, &yystack.l_mark[0], &yystack.l_mark[-4], &yystack.l_mark[-6] ); }
3600 break;
3601 case 425:
3602 #line 1266 "Uil.y"
3603 	{ sar_make_font( &yyval, &gz_yynullval, &yystack.l_mark[0], &yystack.l_mark[-2] ); }
3604 break;
3605 case 426:
3606 #line 1271 "Uil.y"
3607 	{ sar_make_fontset( &yyval, &yystack.l_mark[0], &yystack.l_mark[-4], &yystack.l_mark[-6] ); }
3608 break;
3609 case 427:
3610 #line 1272 "Uil.y"
3611 	{ sar_make_fontset( &yyval, &gz_yynullval, &yystack.l_mark[0], &yystack.l_mark[-2] ); }
3612 break;
3613 case 428:
3614 #line 1276 "Uil.y"
3615 	{ sar_make_font_table( &yyval, &yystack.l_mark[0], &gz_yynullval, &yystack.l_mark[-2] ); }
3616 break;
3617 case 429:
3618 #line 1277 "Uil.y"
3619 	{ sar_make_font_table( &yyval, &yystack.l_mark[0], &yystack.l_mark[-2], &yystack.l_mark[-4] ); }
3620 break;
3621 case 430:
3622 #line 1284 "Uil.y"
3623 	{ sar_make_font_item( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0] ); }
3624 break;
3625 case 431:
3626 #line 1285 "Uil.y"
3627 	{ sar_make_font_item( &yyval, &gz_yynullval, &yystack.l_mark[0] ); }
3628 break;
3629 case 432:
3630 #line 1289 "Uil.y"
3631 	{ /* Don't use TRUE because it is a token not a Boolean! */
3632 							  yyval = yystack.l_mark[0];
3633 							  Uil_lex_l_charset_specified = 1;}
3634 break;
3635 case 434:
3636 #line 1297 "Uil.y"
3637 	{ sar_charset_verify (&yystack.l_mark[0]); yyval = yystack.l_mark[0]; }
3638 break;
3639 case 435:
3640 #line 1298 "Uil.y"
3641 	{ yyval = yystack.l_mark[-1]; }
3642 break;
3643 case 436:
3644 #line 1299 "Uil.y"
3645 	{ sar_make_fallback_charset(&yystack.l_mark[0]);
3646 				  yyval = yystack.l_mark[0]; }
3647 break;
3648 case 437:
3649 #line 1305 "Uil.y"
3650 	{ sar_make_private_value(&yyval, &yystack.l_mark[0], sym_k_char_8_value,
3651 							  &yystack.l_mark[0], 0);
3652 							  sar_make_charset (&yyval, &yyval, &gz_yynullval, &yystack.l_mark[0]); }
3653 break;
3654 case 438:
3655 #line 1308 "Uil.y"
3656 	{ sar_make_private_value(&yyval, &yystack.l_mark[-1], sym_k_char_8_value,
3657 							  &yystack.l_mark[-1], 0);
3658 							  sar_make_charset (&yyval, &yyval, &yystack.l_mark[0], &yystack.l_mark[-1]); }
3659 break;
3660 case 439:
3661 #line 1314 "Uil.y"
3662 	{ sar_chk_charset_attr( &yyval, &yystack.l_mark[0], &gz_yynullval ); }
3663 break;
3664 case 440:
3665 #line 1315 "Uil.y"
3666 	{ sar_chk_charset_attr( &yyval, &yystack.l_mark[0], &yystack.l_mark[-2] ); }
3667 break;
3668 case 441:
3669 #line 1319 "Uil.y"
3670 	{ yyval.b_type = yystack.l_mark[-2].b_type;
3671 							  if (yystack.l_mark[0].b_type != sym_k_bool_value)
3672 							      sar_value_type_error( &yystack.l_mark[0], sym_k_bool_value );
3673 							  yyval.value.az_symbol_entry = yystack.l_mark[0].value.az_symbol_entry; }
3674 break;
3675 case 442:
3676 #line 1323 "Uil.y"
3677 	{ yyval.b_type = yystack.l_mark[-2].b_type;
3678 							  if (yystack.l_mark[0].b_type != sym_k_bool_value)
3679 							      sar_value_type_error( &yystack.l_mark[0], sym_k_bool_value );
3680 							  yyval.value.az_symbol_entry = yystack.l_mark[0].value.az_symbol_entry; }
3681 break;
3682 case 443:
3683 #line 1330 "Uil.y"
3684 	{ sar_append_color_item( &yyval, &yystack.l_mark[0], &gz_yynullval ); }
3685 break;
3686 case 444:
3687 #line 1331 "Uil.y"
3688 	{ sar_append_color_item( &yyval, &yystack.l_mark[0], &yystack.l_mark[-2] ); }
3689 break;
3690 case 445:
3691 #line 1335 "Uil.y"
3692 	{ sar_make_color_item( &yyval, &yystack.l_mark[-3], &yystack.l_mark[0] ); }
3693 break;
3694 case 446:
3695 #line 1336 "Uil.y"
3696 	{ sar_make_color_item( &yyval, &yystack.l_mark[-3], &yystack.l_mark[0] ); }
3697 break;
3698 case 447:
3699 #line 1337 "Uil.y"
3700 	{ sar_make_color_item( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0] ); }
3701 break;
3702 case 448:
3703 #line 1341 "Uil.y"
3704 	{ sar_make_color( &yyval, &yystack.l_mark[0], &gz_yynullval, &yystack.l_mark[-2] ); }
3705 break;
3706 case 449:
3707 #line 1342 "Uil.y"
3708 	{ sar_make_color( &yyval, &yystack.l_mark[-2], &yystack.l_mark[0], &yystack.l_mark[-4] ); }
3709 break;
3710 case 452:
3711 #line 1351 "Uil.y"
3712 	{ sar_make_icon( &yyval, &yystack.l_mark[0], &gz_yynullval, &yystack.l_mark[-2]); }
3713 break;
3714 case 453:
3715 #line 1353 "Uil.y"
3716 	{ sar_make_icon( &yyval, &yystack.l_mark[0], &yystack.l_mark[-2], &yystack.l_mark[-6] ); }
3717 break;
3718 case 454:
3719 #line 1358 "Uil.y"
3720 	{ sar_append_table_value (&yystack.l_mark[0], &gz_yynullval, sym_k_icon_value, &yystack.l_mark[0]); yyval = yystack.l_mark[0]; }
3721 break;
3722 case 455:
3723 #line 1360 "Uil.y"
3724 	{ sar_append_table_value (&yystack.l_mark[0], &yystack.l_mark[-2], sym_k_icon_value, &yystack.l_mark[-1]); yyval = yystack.l_mark[0]; }
3725 break;
3726 case 456:
3727 #line 1365 "Uil.y"
3728 	{ yyval = yystack.l_mark[0]; }
3729 break;
3730 case 457:
3731 #line 1367 "Uil.y"
3732 	{ yyval = yystack.l_mark[0]; }
3733 break;
3734 case 458:
3735 #line 1369 "Uil.y"
3736 	{ yyval = yystack.l_mark[0]; }
3737 break;
3738 case 459:
3739 #line 1371 "Uil.y"
3740 	{ yyval = yystack.l_mark[0]; }
3741 break;
3742 case 460:
3743 #line 1373 "Uil.y"
3744 	{ yyval = yystack.l_mark[0]; }
3745 break;
3746 case 461:
3747 #line 1375 "Uil.y"
3748 	{ yyval = yystack.l_mark[0]; }
3749 break;
3750 case 462:
3751 #line 1377 "Uil.y"
3752 	{ yyval = yystack.l_mark[0]; }
3753 break;
3754 case 463:
3755 #line 1379 "Uil.y"
3756 	{ yyval = yystack.l_mark[0]; }
3757 break;
3758 case 464:
3759 #line 1381 "Uil.y"
3760 	{ yyval = yystack.l_mark[0]; }
3761 break;
3762 case 465:
3763 #line 1383 "Uil.y"
3764 	{ yyval = yystack.l_mark[0]; }
3765 break;
3766 case 466:
3767 #line 1385 "Uil.y"
3768 	{ yyval = yystack.l_mark[0]; }
3769 break;
3770 case 467:
3771 #line 1387 "Uil.y"
3772 	{ yyval = yystack.l_mark[0]; }
3773 break;
3774 case 468:
3775 #line 1389 "Uil.y"
3776 	{ yyval = yystack.l_mark[0]; }
3777 break;
3778 case 469:
3779 #line 1391 "Uil.y"
3780 	{ yyval = yystack.l_mark[0]; }
3781 break;
3782 case 470:
3783 #line 1393 "Uil.y"
3784 	{ yyval = yystack.l_mark[0]; }
3785 break;
3786 case 471:
3787 #line 1395 "Uil.y"
3788 	{ yyval = yystack.l_mark[0]; }
3789 break;
3790 case 472:
3791 #line 1397 "Uil.y"
3792 	{ yyval = yystack.l_mark[0]; }
3793 break;
3794 case 473:
3795 #line 1399 "Uil.y"
3796 	{ yyval = yystack.l_mark[0]; }
3797 break;
3798 #line 3799 "Uil.c"
3799     }
3800     yystack.s_mark -= yym;
3801     yystate = *yystack.s_mark;
3802     yystack.l_mark -= yym;
3803     yym = yylhs[yyn];
3804     if (yystate == 0 && yym == 0)
3805     {
3806 #if YYDEBUG
3807         if (yydebug)
3808             printf("%sdebug: after reduction, shifting from state 0 to\
3809  state %d\n", YYPREFIX, YYFINAL);
3810 #endif
3811         yystate = YYFINAL;
3812         *++yystack.s_mark = YYFINAL;
3813         *++yystack.l_mark = yyval;
3814         if (yychar < 0)
3815         {
3816             if ((yychar = YYLEX) < 0) yychar = YYEOF;
3817 #if YYDEBUG
3818             if (yydebug)
3819             {
3820                 yys = yyname[YYTRANSLATE(yychar)];
3821                 printf("%sdebug: state %d, reading %d (%s)\n",
3822                         YYPREFIX, YYFINAL, yychar, yys);
3823             }
3824 #endif
3825         }
3826         if (yychar == YYEOF) goto yyaccept;
3827         goto yyloop;
3828     }
3829     if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
3830             yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
3831         yystate = yytable[yyn];
3832     else
3833         yystate = yydgoto[yym];
3834 #if YYDEBUG
3835     if (yydebug)
3836         printf("%sdebug: after reduction, shifting from state %d \
3837 to state %d\n", YYPREFIX, *yystack.s_mark, yystate);
3838 #endif
3839     if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM)
3840     {
3841         goto yyoverflow;
3842     }
3843     *++yystack.s_mark = (YYINT) yystate;
3844     *++yystack.l_mark = yyval;
3845     goto yyloop;
3846 
3847 yyoverflow:
3848     YYERROR_CALL("yacc stack overflow");
3849 
3850 yyabort:
3851     yyfreestack(&yystack);
3852     return (1);
3853 
3854 yyaccept:
3855     yyfreestack(&yystack);
3856     return (0);
3857 }
3858