#include #ifndef lint #if 0 static char yysccsid[] = "@(#)yaccpar 1.9 (Berkeley) 02/21/93"; #else __IDSTRING(yyrcsid, "$NetBSD: skeleton.c,v 1.14 1997/10/20 03:41:16 lukem Exp $"); #endif #endif #include #define YYBYACC 1 #define YYMAJOR 1 #define YYMINOR 9 #define YYLEX yylex() #define YYEMPTY -1 #define yyclearin (yychar=(YYEMPTY)) #define yyerrok (yyerrflag=0) #define YYRECOVERING (yyerrflag!=0) #define YYPREFIX "yy" #line 56 "Uil.y" /* Begin user declarations section */ #ifdef HAVE_CONFIG_H #include #endif #include "UilDefI.h" #include "UilCompGl.h" #define YYSTYPE yystype #define YYDEBUG 1 /* Declare and initialize stack entry for epsilon productions. */ YYSTYPE gz_yynullval = {NULL,0,0,0,0}; /* Declare token to aid in saving source context */ YYSTYPE prev_yylval; /* End user declarations section */ #line 44 "y.tab.c" #define UILEOF 0 #define NAME 1 #define FONT_NAME 2 #define COLOR_NAME 3 #define ARGUMENT_NAME 4 #define REASON_NAME 5 #define CHARSET_NAME 6 #define ENUMVAL_NAME 7 #define CLASS_NAME 8 #define CHILD_NAME 96 #define UNS_FLOAT_LITERAL 9 #define COMP_STRING 10 #define CHAR_8_LITERAL 11 #define UNS_INT_LITERAL 12 #define LEFT_PAREN 13 #define RIGHT_PAREN 14 #define COLON 15 #define SEMICOLON 16 #define LEFT_BRACE 17 #define RIGHT_BRACE 18 #define COMMA 19 #define EQUAL_SIGN 20 #define NOT 21 #define PLUS 22 #define MINUS 23 #define AND 24 #define OR 25 #define XOR 26 #define MULTIPLY 27 #define DIVIDE 28 #define LEFT_SHIFT 29 #define RIGHT_SHIFT 30 #define LIST 31 #define IDENTIFIER 32 #define END 33 #define MODULE 34 #define UILTRUE 35 #define UILFALSE 36 #define INCLUDE 37 #define MACRO 38 #define ON 39 #define OFF 40 #define VALUE 41 #define ARGUMENTS 42 #define CALLBACKS 43 #define PROCEDURES 44 #define CONTROLS 45 #define PROCEDURE 46 #define OBJECT 47 #define OBJECTS 48 #define WIDGET 49 #define GADGET 50 #define FONT 51 #define ARGUMENT 52 #define REASON 53 #define PIXMAP 54 #define COLOR 55 #define NAMES 56 #define CHARACTER_SET 57 #define CASE_SENSITIVE 58 #define CASE_INSENSITIVE 59 #define VERSION 60 #define MANAGED 61 #define UNMANAGED 62 #define PRIVATE 63 #define IMPORTED 64 #define EXPORTED 65 #define UILFILE 66 #define STRING_TABLE 67 #define TRANSLATION_TABLE 68 #define COMPOUND_STRING 69 #define FONT_TABLE 70 #define ANY 71 #define STRING 72 #define BOOLEAN 73 #define ICON 74 #define RIGHT_TO_LEFT 75 #define BACKGROUND 76 #define FOREGROUND 77 #define COLOR_TABLE 78 #define FLOAT 79 #define INTEGER 80 #define CLASS_REC_NAME 81 #define ASCIZ_TABLE 82 #define INTEGER_TABLE 83 #define ASCIZ_STRING_TABLE 84 #define COMPOUND_STRING_TABLE 85 #define XBITMAPFILE 86 #define SEPARATE 87 #define SIXTEEN_BIT 88 #define POUND 89 #define KEYSYM 90 #define SINGLE_FLOAT 91 #define RGB 92 #define WIDE_CHARACTER 93 #define LOC_STRING 94 #define FONTSET 95 #define COMPOUND_STRING_COMPONENT 97 #define PIX 115 #define PIXEL 103 #define PIXELS 104 #define IN 98 #define INCH 105 #define INCHES 106 #define CM 99 #define CENTIMETER 107 #define CENTIMETERS 108 #define MM 100 #define MILLIMETER 109 #define MILLIMETERS 110 #define PT 101 #define POINT 111 #define POINTS 112 #define FU 102 #define FONT_UNIT 113 #define FONT_UNITS 114 #define YYERRCODE 256 short yylhs[] = { -1, 3, 0, 4, 7, 1, 6, 6, 8, 8, 9, 9, 9, 13, 9, 11, 11, 14, 14, 16, 14, 15, 15, 18, 15, 19, 17, 20, 20, 2, 2, 21, 21, 21, 21, 21, 21, 29, 22, 28, 28, 31, 28, 30, 32, 32, 32, 32, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 38, 36, 36, 37, 37, 40, 24, 39, 39, 42, 39, 41, 43, 43, 45, 45, 45, 45, 44, 47, 23, 46, 46, 49, 46, 48, 27, 50, 27, 52, 25, 51, 51, 54, 51, 55, 53, 58, 56, 59, 56, 61, 56, 62, 64, 56, 66, 65, 67, 65, 68, 65, 69, 65, 70, 65, 71, 72, 65, 73, 57, 74, 74, 77, 76, 63, 63, 80, 80, 75, 75, 75, 82, 75, 78, 78, 78, 83, 78, 84, 84, 85, 84, 81, 81, 86, 86, 86, 90, 86, 60, 92, 26, 91, 91, 94, 91, 95, 93, 96, 96, 96, 96, 103, 97, 106, 98, 109, 99, 112, 100, 104, 107, 110, 101, 105, 105, 105, 114, 105, 108, 108, 108, 116, 108, 111, 111, 111, 118, 111, 102, 102, 102, 120, 102, 113, 113, 115, 115, 117, 117, 119, 119, 121, 121, 126, 121, 122, 122, 128, 122, 123, 123, 131, 123, 124, 124, 133, 124, 134, 89, 135, 87, 136, 88, 137, 129, 132, 140, 132, 142, 132, 143, 132, 141, 141, 125, 125, 127, 127, 146, 139, 138, 138, 138, 145, 130, 147, 147, 147, 147, 5, 5, 5, 5, 5, 5, 5, 5, 79, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 148, 10, 33, 34, 34, 149, 144, 144, 144, 151, 151, 152, 152, 152, 153, 153, 153, 154, 154, 154, 155, 155, 155, 155, 156, 156, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 157, 167, 167, 174, 174, 165, 165, 175, 175, 166, 166, 176, 176, 172, 164, 164, 177, 177, 163, 163, 163, 168, 168, 169, 169, 169, 169, 169, 178, 178, 179, 179, 179, 173, 160, 160, 161, 161, 170, 170, 180, 180, 159, 159, 12, 12, 12, 181, 181, 182, 182, 183, 183, 150, 150, 184, 184, 184, 162, 162, 185, 185, 171, 171, 186, 186, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, 158, }; short yylen[] = { 2, 0, 6, 0, 0, 5, 0, 1, 1, 2, 3, 3, 3, 0, 4, 1, 1, 2, 3, 0, 3, 2, 3, 0, 3, 0, 4, 1, 1, 0, 2, 1, 1, 1, 1, 1, 1, 0, 3, 1, 2, 0, 3, 4, 2, 2, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 3, 1, 2, 0, 3, 4, 0, 3, 0, 1, 1, 1, 0, 0, 3, 1, 2, 0, 3, 2, 4, 0, 3, 0, 3, 2, 3, 0, 3, 0, 4, 0, 3, 0, 3, 0, 3, 0, 0, 6, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 0, 0, 5, 0, 5, 1, 1, 0, 5, 1, 3, 1, 2, 1, 2, 3, 0, 3, 1, 3, 4, 0, 3, 3, 4, 0, 3, 1, 2, 2, 2, 2, 0, 3, 0, 0, 3, 2, 3, 0, 3, 0, 4, 1, 1, 1, 1, 0, 3, 0, 3, 0, 3, 0, 3, 1, 1, 1, 1, 1, 2, 3, 0, 3, 1, 2, 3, 0, 3, 1, 2, 3, 0, 3, 1, 2, 3, 0, 3, 1, 2, 1, 2, 1, 2, 1, 2, 2, 2, 0, 3, 2, 2, 0, 3, 2, 2, 0, 3, 2, 2, 0, 3, 0, 3, 0, 3, 0, 3, 0, 3, 2, 0, 4, 0, 4, 0, 4, 1, 1, 3, 4, 3, 3, 0, 3, 1, 1, 1, 3, 2, 1, 3, 4, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 4, 1, 3, 3, 1, 3, 1, 3, 3, 1, 3, 3, 1, 3, 3, 1, 2, 2, 2, 1, 3, 1, 2, 2, 1, 1, 2, 4, 4, 4, 4, 4, 4, 5, 1, 1, 1, 1, 2, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 0, 1, 1, 3, 0, 1, 1, 3, 0, 1, 1, 3, 5, 0, 1, 1, 3, 0, 2, 2, 1, 2, 1, 3, 3, 3, 3, 2, 3, 3, 3, 3, 1, 5, 1, 5, 1, 1, 3, 3, 1, 2, 1, 1, 4, 1, 1, 2, 2, 3, 3, 3, 1, 3, 4, 4, 3, 1, 3, 1, 1, 1, 5, 1, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, }; short yydefred[] = { 3, 0, 1, 0, 29, 0, 0, 283, 284, 285, 286, 287, 288, 289, 326, 296, 297, 298, 299, 300, 301, 317, 302, 303, 304, 305, 306, 325, 307, 93, 311, 312, 315, 324, 292, 293, 319, 316, 320, 321, 318, 294, 295, 314, 95, 310, 96, 94, 322, 323, 327, 328, 329, 330, 331, 313, 4, 308, 309, 290, 119, 183, 111, 0, 0, 37, 97, 121, 30, 31, 32, 33, 34, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 5, 0, 8, 120, 187, 189, 0, 0, 115, 0, 0, 113, 2, 0, 0, 0, 0, 0, 0, 370, 371, 372, 373, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 390, 0, 0, 360, 0, 0, 0, 433, 0, 0, 0, 0, 0, 348, 351, 355, 0, 41, 0, 0, 39, 101, 0, 0, 99, 125, 127, 0, 0, 0, 0, 0, 0, 9, 0, 0, 0, 185, 0, 117, 114, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 362, 358, 0, 353, 354, 352, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 436, 434, 0, 432, 0, 0, 0, 0, 0, 0, 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 374, 359, 0, 0, 40, 0, 0, 110, 100, 0, 0, 0, 123, 0, 15, 16, 11, 12, 10, 188, 0, 186, 116, 356, 0, 0, 0, 0, 0, 0, 0, 393, 0, 0, 0, 0, 0, 0, 0, 0, 431, 0, 428, 0, 454, 0, 0, 0, 0, 0, 401, 0, 0, 0, 0, 0, 0, 0, 0, 423, 0, 0, 0, 0, 0, 406, 0, 0, 397, 0, 0, 0, 0, 0, 0, 0, 0, 0, 349, 350, 42, 0, 0, 0, 0, 0, 46, 0, 334, 102, 109, 72, 53, 55, 54, 50, 56, 60, 63, 61, 108, 49, 52, 62, 51, 48, 65, 59, 66, 67, 68, 69, 70, 71, 64, 107, 57, 58, 0, 0, 126, 0, 124, 19, 0, 14, 203, 204, 205, 206, 190, 191, 192, 193, 194, 195, 197, 199, 201, 0, 364, 0, 0, 367, 363, 0, 366, 378, 0, 0, 0, 379, 0, 381, 0, 0, 382, 0, 383, 384, 368, 377, 0, 385, 0, 0, 386, 387, 0, 388, 389, 0, 365, 0, 380, 375, 0, 376, 0, 45, 47, 44, 0, 43, 105, 103, 131, 135, 129, 128, 133, 0, 23, 25, 17, 0, 0, 0, 0, 0, 0, 0, 92, 78, 79, 75, 80, 84, 87, 85, 410, 74, 77, 86, 76, 73, 83, 88, 89, 90, 91, 81, 82, 409, 369, 450, 451, 449, 394, 0, 0, 0, 418, 0, 430, 429, 0, 455, 402, 0, 0, 435, 0, 0, 417, 414, 415, 416, 407, 398, 0, 0, 0, 0, 443, 0, 0, 0, 0, 20, 0, 0, 18, 0, 21, 225, 0, 291, 222, 196, 210, 0, 207, 198, 215, 0, 212, 200, 220, 0, 217, 202, 0, 0, 0, 0, 419, 0, 0, 0, 439, 0, 0, 0, 0, 0, 0, 336, 0, 151, 132, 136, 130, 134, 24, 0, 22, 0, 249, 0, 223, 0, 0, 260, 0, 0, 0, 233, 0, 182, 0, 237, 208, 0, 0, 0, 227, 0, 0, 0, 241, 213, 0, 0, 0, 229, 0, 0, 0, 245, 218, 257, 0, 0, 231, 0, 0, 424, 420, 421, 422, 0, 0, 0, 440, 403, 426, 0, 0, 447, 444, 0, 0, 27, 28, 26, 226, 0, 267, 264, 266, 262, 0, 0, 247, 224, 234, 248, 272, 259, 211, 0, 0, 235, 209, 228, 236, 0, 216, 0, 0, 239, 214, 230, 240, 0, 221, 0, 0, 0, 279, 278, 219, 232, 243, 244, 441, 442, 445, 446, 0, 157, 0, 182, 250, 0, 0, 0, 252, 0, 238, 254, 0, 0, 242, 256, 0, 271, 270, 246, 258, 0, 282, 0, 0, 154, 153, 0, 137, 173, 0, 265, 263, 142, 144, 140, 148, 138, 146, 261, 155, 273, 269, 0, 0, 280, 0, 159, 158, 164, 0, 152, 161, 0, 180, 182, 0, 0, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 277, 281, 160, 0, 162, 0, 174, 0, 171, 182, 176, 177, 178, 179, 143, 145, 141, 149, 139, 147, 0, 165, 163, 181, 172, 182, 0, 150, 169, 0, 156, 166, 0, 182, 0, 170, 167, 182, 168, }; short yydgoto[] = { 1, 2, 6, 4, 3, 133, 88, 75, 89, 90, 134, 247, 270, 159, 356, 426, 422, 427, 491, 492, 666, 68, 69, 70, 71, 72, 73, 74, 149, 81, 150, 233, 316, 271, 317, 346, 135, 136, 454, 153, 82, 154, 236, 238, 350, 349, 98, 78, 99, 168, 76, 157, 83, 158, 240, 241, 420, 531, 488, 486, 137, 489, 487, 643, 593, 680, 707, 705, 703, 704, 708, 706, 735, 592, 668, 692, 682, 709, 740, 573, 689, 698, 713, 742, 672, 694, 699, 700, 701, 702, 717, 94, 77, 95, 164, 165, 361, 362, 363, 364, 365, 366, 500, 428, 367, 504, 429, 368, 508, 430, 369, 512, 431, 556, 551, 565, 560, 574, 569, 547, 538, 557, 566, 575, 548, 558, 612, 567, 620, 576, 577, 628, 549, 598, 604, 613, 621, 629, 550, 610, 603, 602, 647, 646, 263, 659, 650, 632, 59, 319, 484, 139, 140, 141, 142, 143, 144, 145, 189, 146, 256, 293, 261, 373, 297, 300, 282, 264, 267, 295, 272, 276, 289, 291, 265, 301, 283, 298, 381, 463, 273, 396, 471, 521, 485, 458, 277, }; short yysindex[] = { 0, 0, 0, 19, 0, 5159, 18, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 120, 50, 2508, 2617, 72, 4771, 2714, 2823, 2920, 0, 88, 140, 144, 0, 120, 0, 0, 0, 0, 5159, 151, 0, 170, 5159, 0, 0, 1192, 1192, 4771, 4771, 4771, 4771, 0, 0, 0, 0, 200, 210, 214, 227, 230, 238, 270, 276, 289, 291, 294, 306, 319, 344, 61, 352, 362, 365, 377, 0, 392, 395, 0, 173, 398, 400, 0, 315, 206, 14, 320, 325, 0, 0, 0, 349, 0, 219, 5159, 0, 0, 402, 5159, 0, 0, 0, 5159, 233, 218, 303, 61, 4771, 0, 281, 401, 283, 0, 322, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 32, 0, 0, 0, 4771, 4771, 4771, 4771, 4771, 4771, 4771, 4577, 4868, 4771, 4771, 4771, 4771, 4771, 0, 0, 405, 0, 4771, 4771, 4771, 4771, 4771, 412, 0, 4771, 4771, 4771, 4771, 4771, 4771, 4771, 4771, 4771, 4771, 4771, 0, 0, 404, 4480, 0, 406, 5214, 0, 0, 413, 419, 420, 0, -12, 0, 0, 0, 0, 0, 0, 159, 0, 0, 0, 423, 407, 425, 431, 434, 442, 448, 0, 315, 449, 446, 447, 453, 0, 405, 450, 0, 205, 0, 451, 0, 455, 457, 131, 167, 458, 0, 465, 461, 468, 4771, 471, 169, 467, 474, 0, 475, 476, 480, 478, 484, 0, 486, 482, 0, 488, 485, 206, 206, 14, 320, 320, 325, 325, 0, 0, 0, 4965, 1116, 4771, 498, 497, 0, 315, 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, 502, 501, 0, 246, 0, 0, -6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 433, 0, 625, 506, 0, 0, 287, 0, 0, 4771, -27, 503, 0, 4771, 0, 4577, 4771, 0, 4771, 0, 0, 0, 0, 4771, 0, 507, 513, 0, 0, 4771, 0, 0, 464, 0, 22, 0, 0, 4771, 0, 4771, 0, 0, 0, 5062, 0, 0, 0, 0, 0, 0, 0, 0, 511, 0, 0, 0, 24, 515, 1381, 1478, 1587, 1684, 512, 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, 516, 519, 520, 0, -27, 0, 0, 522, 0, 0, -34, 525, 0, 526, 528, 0, 0, 0, 0, 0, 0, 491, 495, 221, 217, 0, 527, 544, 527, 527, 0, 537, 535, 0, 542, 0, 0, 1793, 0, 0, 0, 0, 760, 0, 0, 0, 857, 0, 0, 0, 1890, 0, 0, 61, 61, 4771, 4771, 0, 4771, 539, 540, 0, -34, 4771, 61, 541, 543, 4771, 0, 5062, 0, 0, 0, 0, 0, 0, 339, 0, 546, 0, 334, 0, 0, 0, 0, 0, 549, 1999, 0, 551, 0, 550, 0, 0, 0, 554, 966, 0, 555, 243, 556, 0, 0, 0, 557, 1063, 0, 559, 250, 560, 0, 0, 0, 564, 2096, 0, 563, 566, 0, 0, 0, 0, 457, 4771, 4771, 0, 0, 0, 4771, 4771, 0, 0, 534, 534, 0, 0, 0, 0, 568, 0, 0, 0, 0, 547, 548, 0, 0, 0, 0, 0, 0, 0, 569, 530, 0, 0, 0, 0, 4674, 0, 570, 552, 0, 0, 0, 0, 553, 0, 571, 558, 4380, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5159, 0, 339, 0, 0, -4, -4, 286, 0, 584, 0, 0, 5159, 315, 0, 0, 5159, 0, 0, 0, 0, 5159, 0, 203, 581, 0, 0, 2205, 0, 0, -3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 564, 582, 0, 586, 0, 0, 0, -2, 0, 0, 580, 0, 0, 0, -1, 0, 585, 587, 588, 527, 527, 527, 597, 527, 527, 534, 0, 0, 0, 589, 0, 3, 0, 592, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 339, 0, 0, 0, 0, 0, 2302, 0, 0, 4, 0, 0, 591, 0, 5, 0, 0, 0, 0, }; short yyrindex[] = { 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, 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, 80, 0, 0, 0, 0, 388, 0, 0, 0, 0, 0, 0, 0, 0, 100, 0, 0, 0, 0, 138, 0, 0, 0, 141, 0, 0, 298, 427, 388, 388, 388, 388, 0, 0, 0, 0, 3004, 3043, 3082, 3121, 3166, 3205, 3250, 3289, 3328, 3367, 3412, 3451, 3496, 3535, 0, 3574, 3613, 3658, 3697, 0, 3742, 3781, 0, 0, 3820, 3859, 0, 477, 4234, 4150, 4027, 3904, 0, 0, 0, 0, 0, 0, 179, 0, 0, 594, 225, 0, 0, 0, 259, 0, 0, 0, 0, 388, 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, 388, 388, 388, 388, 388, 129, 388, 388, 388, 388, 388, 388, 274, 388, 0, 0, 0, 0, 388, 388, 388, 388, 388, 0, 0, 284, 323, 388, 388, 388, 388, 388, 388, 388, 388, 388, 0, 0, 0, 388, 0, 0, 599, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 602, 0, 488, 0, 0, 604, 0, 0, 106, 0, 465, 615, 0, 357, 598, 0, 0, 0, 0, 1377, 0, 0, 616, 0, 0, 0, 0, 0, 474, 0, 388, 0, 0, 0, 0, 0, 0, 618, 0, 621, 0, 0, 0, 484, 0, 0, 623, 4273, 4312, 4189, 4066, 4105, 3943, 3988, 0, 0, 0, 388, 860, 388, 969, 0, 0, 595, 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, 630, 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, 388, 0, 626, 0, 388, 0, 388, 388, 0, 388, 0, 0, 0, 0, 388, 0, 627, 0, 0, 0, 388, 0, 0, 0, 0, 0, 0, 0, 388, 0, 388, 0, 0, 0, 388, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 628, 0, 0, 0, 0, 0, 0, 0, 0, 0, 935, 1067, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 60, 0, 0, 0, 95, 0, 0, 0, 600, 0, 0, 0, 0, 388, 388, 0, 388, 0, 0, 0, 0, 388, 0, 0, 0, 388, 0, 388, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11, 0, 115, 127, 0, 53, 0, 23, 0, 0, 0, 0, 0, 0, 180, 0, 60, 0, 0, 0, 0, 0, 0, 118, 0, 95, 0, 0, 0, 0, 0, 0, 0, 629, 600, 0, 0, 0, 0, 0, 0, 0, 632, 388, 388, 0, 0, 0, 388, 388, 0, 0, 1272, 629, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 388, 0, 0, 0, 0, 0, 0, 0, 600, 0, 0, 0, 388, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2411, 0, 0, 0, 0, 630, 0, 0, 0, 0, 0, 631, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1175, 0, 0, 0, 0, 0, 222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 629, 0, 0, 0, 0, 0, 0, 222, 0, 0, 0, 0, 0, 236, 222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1272, 0, 0, 0, 0, 0, 222, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2411, 0, 0, 0, 0, 0, 0, 0, 0, 222, 0, 0, 0, 0, 222, 0, 0, 0, 0, }; short yygindex[] = { 0, 0, 0, 0, 0, 9, 0, 0, 0, 562, -161, 0, -122, 0, 0, 0, 0, 213, 0, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 504, 0, 0, -106, 342, 343, -5, 2, 0, 0, 0, 505, 0, 0, 0, 0, 0, 0, 567, 0, 0, 0, 0, 518, 0, 0, 0, -335, 0, 0, 41, 0, 0, -575, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -70, 0, 0, 0, 0, -420, 0, -664, 0, 0, 21, 0, -579, -482, -466, -478, 0, 0, 0, 575, 0, 0, 0, 57, 59, 52, 58, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 125, 117, 112, 143, 0, 0, 0, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 7, 0, 0, 0, 178, 479, 181, 176, -80, 0, 0, 609, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 237, 317, 0, 0, 191, 171, 0, 196, }; #define YYTABLESIZE 5311 short yytable[] = { 57, 249, 424, 212, 289, 355, 182, 58, 499, 503, 507, 511, 425, 671, 56, 696, 714, 719, 644, 546, 555, 732, 743, 747, 192, 193, 194, 715, 475, 476, 460, 182, 424, 477, 255, 257, 258, 259, 260, 248, 564, 519, 493, 225, 226, 280, 254, 284, 461, 61, 62, 63, 286, 5, 520, 64, 292, 222, 223, 65, 462, 274, 209, 79, 66, 67, 91, 210, 182, 546, 182, 182, 57, 57, 555, 744, 57, 57, 57, 58, 58, 138, 80, 58, 58, 58, 93, 97, 100, 57, 148, 152, 156, 57, 262, 266, 58, 275, 251, 564, 58, 281, 182, 93, 191, 182, 182, 97, 160, 288, 290, 6, 6, 6, 296, 299, 478, 6, 211, 720, 333, 6, 333, 275, 395, 333, 6, 6, 433, 433, 305, 7, 7, 7, 730, 276, 720, 7, 182, 182, 182, 7, 306, 391, 57, 389, 7, 7, 57, 309, 310, 58, 57, 533, 534, 58, 222, 223, 148, 58, 161, 255, 152, 138, 162, 720, 156, 167, 84, 184, 184, 184, 112, 112, 112, 184, 85, 86, 112, 184, 87, 390, 112, 398, 184, 184, 169, 112, 112, 219, 433, 433, 222, 223, 222, 223, 138, 138, 138, 138, 138, 357, 358, 359, 360, 278, 279, 138, 412, 138, 38, 38, 38, 195, 138, 287, 38, 686, 138, 384, 38, 665, 253, 196, 385, 38, 38, 197, 222, 223, 224, 528, 347, 683, 234, 318, 529, 684, 244, 348, 198, 527, 685, 199, 354, 182, 222, 223, 693, 243, 423, 200, 670, 695, 695, 695, 98, 98, 98, 695, 695, 695, 98, 618, 182, 182, 98, 182, 222, 223, 626, 98, 98, 459, 60, 222, 223, 465, 253, 255, 467, 251, 468, 201, 182, 182, 138, 469, 399, 202, 122, 122, 122, 473, 182, 182, 122, 250, 404, 252, 122, 479, 203, 480, 204, 122, 122, 205, 347, 417, 418, 419, 361, 318, 361, 348, 741, 361, 361, 206, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 361, 207, 182, 182, 361, 6, 395, 253, 361, 222, 223, 227, 228, 361, 361, 361, 674, 675, 676, 677, 678, 229, 230, 361, 361, 7, 208, 361, 231, 232, 245, 246, 456, 457, 213, 590, 452, 724, 725, 726, 283, 728, 729, 453, 214, 283, 436, 215, 283, 283, 283, 283, 283, 283, 283, 283, 283, 594, 595, 216, 578, 579, 421, 184, 599, 600, 112, 182, 182, 302, 303, 587, 307, 308, 217, 305, 306, 218, 580, 581, 220, 275, 221, 483, 237, 251, 586, 285, 294, 311, 371, 320, 57, 57, 57, 57, 639, 640, 351, 58, 58, 58, 58, 352, 38, 353, 498, 498, 498, 498, 357, 370, 357, 372, 374, 357, 357, 375, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 357, 376, 377, 378, 357, 379, 380, 382, 357, 387, 383, 386, 391, 357, 357, 357, 388, 637, 638, 392, 393, 98, 394, 357, 357, 397, 399, 357, 400, 401, 432, 332, 57, 332, 403, 402, 332, 404, 405, 58, 406, 407, 408, 559, 409, 57, 544, 568, 332, 332, 332, 413, 58, 414, 332, 122, 415, 416, 332, 498, 455, 474, 464, 332, 332, 332, 470, 472, 138, 490, 483, 495, 513, 332, 332, 530, 514, 332, 545, 515, 516, 518, 57, 554, 522, 523, 525, 563, 524, 58, 526, 572, 532, 535, 361, 536, 544, 559, 537, 583, 584, 588, 648, 589, 597, 605, 568, 608, 611, 57, 614, 617, 357, 622, 619, 625, 58, 630, 627, 635, 641, 601, 636, 498, 645, 651, 655, 660, 545, 138, 138, 609, 681, 360, 687, 358, 711, 554, 716, 657, 712, 721, 359, 722, 723, 727, 563, 731, 733, 745, 104, 335, 317, 106, 631, 572, 425, 317, 448, 654, 317, 317, 317, 317, 317, 317, 317, 317, 317, 411, 452, 664, 427, 642, 642, 413, 57, 396, 182, 494, 412, 437, 438, 58, 182, 182, 453, 268, 57, 596, 498, 163, 57, 235, 410, 58, 411, 57, 239, 58, 736, 649, 498, 57, 58, 170, 498, 572, 673, 166, 58, 498, 652, 656, 433, 242, 434, 498, 435, 436, 437, 616, 624, 357, 667, 669, 634, 661, 658, 679, 607, 710, 29, 438, 439, 440, 441, 442, 443, 444, 591, 517, 466, 304, 445, 446, 688, 44, 447, 46, 47, 190, 697, 585, 582, 448, 449, 0, 450, 0, 451, 0, 0, 0, 0, 631, 0, 0, 0, 0, 0, 57, 697, 332, 0, 0, 0, 718, 58, 697, 0, 0, 0, 0, 0, 498, 0, 0, 0, 0, 642, 0, 0, 0, 0, 0, 697, 0, 0, 0, 734, 7, 8, 9, 10, 11, 0, 12, 0, 101, 0, 667, 102, 103, 0, 0, 737, 0, 553, 0, 697, 104, 105, 106, 746, 697, 0, 0, 748, 0, 0, 0, 0, 0, 0, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 111, 112, 113, 114, 115, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 38, 39, 40, 120, 121, 122, 44, 123, 46, 47, 124, 49, 0, 125, 126, 127, 128, 129, 130, 131, 13, 132, 7, 8, 9, 10, 11, 0, 12, 0, 101, 0, 0, 102, 103, 0, 0, 0, 0, 562, 325, 0, 104, 105, 106, 0, 325, 325, 325, 325, 325, 325, 325, 325, 325, 0, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 111, 112, 113, 114, 115, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 38, 39, 40, 120, 121, 122, 44, 123, 46, 47, 124, 49, 0, 125, 126, 127, 128, 129, 130, 131, 13, 132, 320, 0, 320, 320, 320, 320, 320, 320, 320, 320, 320, 0, 7, 8, 9, 10, 11, 0, 12, 0, 101, 0, 0, 102, 103, 0, 0, 0, 0, 615, 318, 0, 104, 105, 106, 0, 318, 318, 318, 318, 318, 318, 318, 318, 318, 0, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 0, 552, 111, 112, 113, 114, 115, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 38, 39, 40, 120, 121, 122, 44, 123, 46, 47, 124, 49, 0, 125, 126, 127, 128, 129, 130, 131, 13, 132, 7, 8, 9, 10, 11, 0, 12, 0, 101, 0, 0, 102, 103, 0, 0, 0, 0, 623, 0, 0, 104, 105, 106, 321, 0, 321, 321, 321, 321, 321, 321, 321, 321, 321, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 0, 561, 111, 112, 113, 114, 115, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 38, 39, 40, 120, 121, 122, 44, 123, 46, 47, 124, 49, 0, 125, 126, 127, 128, 129, 130, 131, 13, 132, 0, 0, 0, 0, 322, 0, 323, 324, 325, 326, 327, 0, 0, 0, 0, 182, 182, 182, 182, 182, 0, 182, 29, 328, 329, 330, 0, 332, 333, 334, 182, 182, 0, 0, 335, 336, 337, 44, 338, 46, 47, 339, 0, 0, 0, 340, 341, 342, 343, 0, 344, 0, 345, 0, 0, 0, 0, 0, 0, 0, 0, 552, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 0, 182, 0, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 0, 0, 182, 182, 182, 182, 0, 182, 182, 182, 182, 182, 182, 182, 182, 0, 182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 182, 174, 177, 180, 183, 186, 172, 173, 175, 176, 178, 179, 181, 182, 184, 185, 187, 188, 171, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 561, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 0, 182, 0, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 0, 0, 182, 182, 182, 182, 0, 182, 182, 182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 0, 12, 0, 0, 318, 0, 0, 0, 0, 318, 0, 497, 318, 318, 318, 318, 318, 318, 318, 318, 318, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 182, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 7, 8, 9, 10, 11, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 502, 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, 14, 0, 182, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 506, 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, 14, 0, 496, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 7, 8, 9, 10, 11, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 510, 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, 14, 0, 501, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 541, 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, 14, 0, 505, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 542, 543, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 540, 55, 7, 8, 9, 10, 11, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 571, 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, 14, 0, 509, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 606, 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, 14, 0, 539, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 542, 543, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 540, 55, 7, 8, 9, 10, 11, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 633, 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, 14, 0, 570, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 691, 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, 14, 0, 539, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 7, 8, 9, 10, 11, 0, 12, 0, 0, 0, 0, 0, 0, 0, 0, 0, 739, 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, 14, 0, 570, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 182, 182, 182, 182, 182, 0, 182, 0, 0, 0, 0, 0, 0, 0, 0, 0, 182, 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, 182, 0, 690, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 0, 182, 0, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 182, 0, 0, 182, 182, 182, 182, 0, 182, 182, 182, 7, 8, 9, 10, 11, 0, 12, 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, 14, 0, 738, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 0, 12, 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, 14, 0, 182, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 7, 8, 9, 10, 11, 0, 12, 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, 14, 0, 92, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 0, 12, 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, 14, 0, 96, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 7, 8, 9, 10, 11, 0, 12, 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, 14, 0, 147, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 296, 0, 296, 0, 0, 296, 296, 0, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 296, 0, 0, 0, 296, 0, 0, 0, 296, 0, 0, 0, 0, 296, 296, 296, 0, 0, 0, 0, 297, 0, 297, 296, 296, 297, 297, 296, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 297, 0, 0, 151, 297, 0, 0, 0, 297, 0, 0, 0, 0, 297, 297, 297, 0, 0, 0, 0, 298, 0, 298, 297, 297, 298, 298, 297, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 298, 0, 0, 0, 298, 0, 0, 0, 298, 0, 0, 0, 0, 298, 298, 298, 0, 0, 0, 0, 299, 0, 299, 298, 298, 299, 299, 298, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, 0, 0, 0, 299, 0, 0, 0, 299, 0, 0, 0, 0, 299, 299, 299, 0, 0, 0, 0, 0, 0, 155, 299, 299, 0, 300, 299, 300, 0, 0, 300, 300, 0, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 300, 0, 0, 0, 300, 0, 0, 0, 300, 0, 0, 0, 0, 300, 300, 300, 0, 0, 0, 0, 311, 0, 311, 300, 300, 311, 311, 300, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, 0, 0, 0, 311, 0, 0, 0, 311, 0, 0, 0, 0, 311, 311, 311, 0, 0, 0, 0, 0, 0, 296, 311, 311, 0, 312, 311, 312, 0, 0, 312, 312, 0, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 312, 0, 0, 0, 312, 0, 0, 0, 312, 0, 0, 0, 0, 312, 312, 312, 297, 0, 0, 0, 315, 0, 315, 312, 312, 315, 315, 312, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 315, 0, 0, 0, 315, 0, 0, 0, 315, 0, 0, 0, 0, 315, 315, 315, 298, 0, 0, 0, 319, 0, 319, 315, 315, 319, 319, 315, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 319, 0, 0, 0, 319, 0, 0, 0, 319, 0, 0, 0, 0, 319, 319, 319, 299, 0, 0, 0, 294, 0, 294, 319, 319, 294, 294, 319, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 294, 0, 0, 0, 294, 0, 0, 0, 294, 0, 0, 0, 0, 294, 294, 294, 0, 0, 0, 0, 0, 0, 300, 294, 294, 0, 295, 294, 295, 0, 0, 295, 295, 0, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 0, 0, 0, 295, 0, 0, 0, 295, 0, 0, 0, 0, 295, 295, 295, 311, 0, 0, 0, 314, 0, 314, 295, 295, 314, 314, 295, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, 0, 0, 0, 314, 0, 0, 0, 314, 0, 0, 0, 0, 314, 314, 314, 0, 0, 0, 0, 0, 0, 312, 314, 314, 0, 310, 314, 310, 0, 0, 310, 310, 0, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 310, 0, 0, 0, 310, 0, 0, 0, 310, 0, 0, 0, 0, 310, 310, 310, 315, 0, 0, 0, 322, 0, 322, 310, 310, 322, 322, 310, 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, 0, 0, 0, 322, 0, 0, 0, 322, 0, 0, 0, 0, 322, 322, 322, 319, 0, 0, 0, 327, 0, 327, 322, 322, 327, 327, 322, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 327, 0, 0, 0, 327, 0, 0, 0, 327, 0, 0, 0, 0, 327, 327, 327, 294, 0, 0, 0, 328, 0, 328, 327, 327, 328, 328, 327, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, 0, 0, 0, 328, 0, 0, 0, 328, 0, 0, 0, 0, 328, 328, 328, 0, 0, 0, 0, 0, 0, 295, 328, 328, 0, 329, 328, 329, 0, 0, 329, 329, 0, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 329, 0, 0, 0, 329, 0, 0, 0, 329, 0, 0, 0, 0, 329, 329, 329, 314, 0, 0, 0, 330, 0, 330, 329, 329, 330, 330, 329, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 330, 0, 0, 0, 330, 0, 0, 0, 330, 0, 0, 0, 0, 330, 330, 330, 0, 0, 0, 0, 0, 0, 310, 330, 330, 0, 331, 330, 331, 0, 0, 331, 331, 0, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 331, 0, 0, 0, 331, 0, 0, 0, 331, 0, 0, 0, 0, 331, 331, 331, 322, 0, 0, 0, 313, 0, 313, 331, 331, 313, 313, 331, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 313, 0, 0, 0, 313, 0, 0, 0, 313, 0, 0, 0, 0, 313, 313, 313, 327, 0, 0, 0, 308, 0, 308, 313, 313, 308, 308, 313, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 308, 0, 0, 0, 308, 0, 0, 0, 308, 0, 0, 0, 0, 308, 308, 308, 328, 0, 0, 0, 309, 0, 309, 308, 308, 309, 309, 308, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, 0, 0, 0, 309, 0, 0, 0, 309, 0, 0, 0, 0, 309, 309, 309, 0, 0, 0, 0, 0, 0, 329, 309, 309, 0, 345, 309, 345, 0, 0, 345, 345, 0, 345, 345, 345, 345, 345, 0, 0, 345, 345, 345, 345, 345, 0, 0, 0, 345, 0, 0, 0, 345, 0, 0, 0, 0, 345, 345, 345, 330, 0, 0, 0, 346, 0, 346, 345, 345, 346, 346, 345, 346, 346, 346, 346, 346, 0, 0, 346, 346, 346, 346, 346, 0, 0, 0, 346, 0, 0, 0, 346, 0, 0, 0, 0, 346, 346, 346, 0, 0, 0, 0, 0, 0, 331, 346, 346, 0, 347, 346, 347, 0, 0, 347, 347, 0, 347, 347, 347, 347, 347, 0, 0, 347, 347, 347, 347, 347, 0, 0, 0, 347, 0, 0, 0, 347, 0, 0, 0, 0, 347, 347, 347, 313, 0, 0, 0, 342, 0, 342, 347, 347, 342, 342, 347, 0, 0, 342, 342, 342, 0, 0, 342, 342, 342, 342, 342, 0, 0, 0, 342, 0, 0, 0, 342, 0, 0, 0, 0, 342, 342, 342, 308, 0, 0, 0, 343, 0, 343, 342, 342, 343, 343, 342, 0, 0, 343, 343, 343, 0, 0, 343, 343, 343, 343, 343, 0, 0, 0, 343, 0, 0, 0, 343, 0, 0, 0, 0, 343, 343, 343, 309, 0, 0, 0, 344, 0, 344, 343, 343, 344, 344, 343, 0, 0, 344, 344, 344, 0, 0, 344, 344, 344, 344, 344, 0, 0, 0, 344, 0, 0, 0, 344, 0, 0, 0, 0, 344, 344, 344, 0, 0, 0, 0, 0, 0, 345, 344, 344, 0, 340, 344, 340, 0, 0, 340, 340, 0, 0, 0, 340, 340, 340, 0, 0, 0, 0, 340, 340, 340, 0, 0, 0, 340, 0, 0, 0, 340, 0, 0, 0, 0, 340, 340, 340, 346, 0, 0, 0, 341, 0, 341, 340, 340, 341, 341, 340, 0, 0, 341, 341, 341, 0, 0, 0, 0, 341, 341, 341, 0, 0, 0, 341, 0, 0, 0, 341, 0, 0, 0, 0, 341, 341, 341, 0, 0, 0, 0, 0, 0, 347, 341, 341, 0, 337, 341, 337, 0, 0, 337, 337, 0, 0, 0, 0, 337, 337, 0, 0, 0, 0, 337, 337, 337, 0, 0, 0, 337, 0, 0, 0, 337, 0, 0, 0, 0, 337, 337, 337, 342, 0, 0, 0, 338, 0, 338, 337, 337, 338, 338, 337, 0, 0, 0, 338, 338, 0, 0, 0, 0, 338, 338, 338, 0, 0, 0, 338, 0, 0, 0, 338, 0, 0, 0, 0, 338, 338, 338, 343, 0, 0, 0, 339, 0, 339, 338, 338, 339, 339, 338, 0, 0, 0, 339, 339, 0, 0, 0, 0, 339, 339, 339, 0, 0, 0, 339, 0, 0, 0, 339, 0, 0, 0, 0, 339, 339, 339, 344, 0, 0, 0, 0, 0, 0, 339, 339, 0, 0, 339, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 9, 10, 11, 0, 12, 662, 101, 0, 0, 102, 103, 663, 0, 0, 0, 0, 0, 0, 104, 105, 106, 0, 0, 340, 0, 0, 0, 0, 0, 0, 0, 0, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 111, 112, 113, 114, 115, 20, 21, 22, 23, 24, 25, 26, 0, 27, 341, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 38, 39, 40, 120, 121, 122, 44, 123, 46, 47, 124, 49, 0, 125, 126, 127, 128, 129, 130, 131, 13, 132, 0, 0, 0, 7, 8, 9, 10, 11, 0, 12, 0, 101, 337, 0, 102, 103, 0, 0, 0, 0, 0, 0, 0, 104, 105, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 338, 0, 111, 112, 113, 114, 115, 20, 21, 22, 23, 24, 25, 26, 312, 313, 314, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 38, 39, 315, 120, 121, 122, 44, 123, 46, 47, 124, 49, 339, 125, 126, 127, 128, 129, 130, 131, 13, 132, 268, 8, 9, 10, 11, 210, 12, 0, 101, 0, 0, 102, 103, 0, 0, 0, 0, 0, 0, 0, 104, 105, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 111, 112, 113, 114, 115, 20, 269, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 38, 39, 40, 120, 121, 122, 44, 123, 46, 47, 124, 49, 0, 125, 126, 127, 128, 129, 130, 131, 13, 132, 7, 8, 9, 10, 11, 0, 12, 653, 101, 0, 0, 102, 103, 0, 0, 0, 0, 0, 0, 0, 104, 105, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 111, 112, 113, 114, 115, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 38, 39, 40, 120, 121, 122, 44, 123, 46, 47, 124, 49, 0, 125, 126, 127, 128, 129, 130, 131, 13, 132, 7, 8, 9, 10, 11, 0, 12, 0, 101, 0, 0, 102, 103, 0, 0, 0, 0, 0, 0, 0, 104, 105, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 111, 112, 113, 114, 115, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 38, 39, 40, 120, 121, 122, 44, 123, 46, 47, 124, 49, 0, 125, 126, 127, 128, 129, 130, 131, 13, 132, 7, 8, 9, 10, 11, 0, 12, 0, 101, 0, 0, 102, 103, 0, 0, 0, 0, 0, 0, 0, 104, 105, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 111, 112, 113, 114, 115, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 38, 39, 274, 120, 121, 122, 44, 123, 46, 47, 124, 49, 0, 125, 126, 127, 128, 129, 130, 131, 13, 132, 7, 8, 9, 10, 11, 0, 12, 0, 101, 0, 0, 102, 103, 0, 0, 0, 0, 0, 0, 0, 104, 105, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 111, 112, 113, 114, 115, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 38, 39, 315, 120, 121, 122, 44, 123, 46, 47, 124, 49, 0, 125, 126, 127, 128, 129, 130, 131, 13, 132, 7, 8, 9, 10, 11, 0, 12, 0, 101, 0, 0, 102, 103, 0, 0, 0, 0, 0, 0, 0, 104, 105, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 108, 0, 0, 109, 110, 0, 0, 0, 0, 0, 0, 0, 14, 0, 0, 111, 112, 113, 114, 115, 20, 21, 22, 23, 24, 25, 26, 0, 27, 0, 28, 29, 116, 117, 118, 33, 34, 35, 119, 37, 481, 482, 40, 120, 121, 122, 44, 123, 46, 47, 124, 49, 0, 125, 126, 127, 128, 129, 130, 131, 13, 132, 7, 8, 9, 10, 11, 0, 12, 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, 14, 0, 0, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 321, 27, 0, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 0, 0, 50, 51, 52, 53, 0, 54, 13, 55, 0, 0, 0, 0, 0, 0, 322, 0, 323, 324, 325, 326, 327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 328, 329, 330, 331, 332, 333, 334, 0, 0, 0, 0, 335, 336, 337, 44, 338, 46, 47, 339, 0, 0, 0, 340, 341, 342, 343, 0, 344, 0, 345, }; short yycheck[] = { 5, 162, 8, 125, 15, 17, 17, 5, 428, 429, 430, 431, 18, 17, 5, 18, 18, 18, 593, 497, 502, 18, 18, 18, 104, 105, 106, 691, 6, 7, 57, 8, 8, 11, 195, 196, 197, 198, 199, 161, 506, 75, 18, 29, 30, 206, 14, 208, 75, 31, 32, 33, 213, 34, 88, 37, 217, 25, 26, 41, 87, 8, 1, 34, 46, 47, 16, 6, 45, 547, 10, 11, 77, 78, 556, 739, 81, 82, 83, 77, 78, 80, 66, 81, 82, 83, 77, 78, 16, 94, 81, 82, 83, 98, 200, 201, 94, 203, 45, 565, 98, 207, 42, 94, 103, 10, 11, 98, 20, 215, 216, 31, 32, 33, 220, 221, 94, 37, 57, 698, 14, 41, 16, 8, 285, 19, 46, 47, 10, 11, 15, 31, 32, 33, 709, 8, 715, 37, 43, 10, 11, 41, 15, 14, 149, 14, 46, 47, 153, 229, 230, 149, 157, 488, 489, 153, 25, 26, 149, 157, 20, 43, 153, 162, 20, 744, 157, 16, 48, 31, 32, 33, 31, 32, 33, 37, 56, 57, 37, 41, 60, 14, 41, 14, 46, 47, 16, 46, 47, 16, 10, 11, 25, 26, 25, 26, 195, 196, 197, 198, 199, 42, 43, 44, 45, 204, 205, 206, 314, 208, 31, 32, 33, 13, 213, 214, 37, 14, 217, 14, 41, 641, 42, 13, 19, 46, 47, 13, 25, 26, 24, 14, 237, 653, 15, 234, 19, 657, 20, 237, 13, 20, 662, 13, 256, 256, 25, 26, 668, 16, 256, 13, 256, 256, 256, 256, 31, 32, 33, 256, 256, 256, 37, 20, 42, 43, 41, 45, 25, 26, 20, 46, 47, 379, 256, 25, 26, 383, 42, 43, 386, 45, 388, 13, 10, 11, 285, 393, 14, 13, 31, 32, 33, 399, 10, 11, 37, 16, 14, 16, 41, 407, 13, 409, 13, 46, 47, 13, 313, 63, 64, 65, 14, 312, 16, 313, 736, 19, 20, 13, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 13, 10, 11, 37, 256, 14, 16, 41, 25, 26, 22, 23, 46, 47, 48, 61, 62, 63, 64, 65, 27, 28, 56, 57, 256, 13, 60, 10, 11, 58, 59, 76, 77, 13, 527, 372, 703, 704, 705, 14, 707, 708, 372, 13, 19, 20, 13, 22, 23, 24, 25, 26, 27, 28, 29, 30, 49, 50, 13, 513, 514, 352, 256, 61, 62, 256, 10, 11, 222, 223, 524, 227, 228, 13, 225, 226, 13, 515, 516, 13, 518, 13, 413, 13, 15, 523, 13, 7, 16, 14, 16, 428, 429, 430, 431, 588, 589, 16, 428, 429, 430, 431, 15, 256, 16, 428, 429, 430, 431, 14, 19, 16, 19, 14, 19, 20, 14, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 19, 14, 14, 37, 19, 19, 14, 41, 14, 20, 20, 14, 46, 47, 48, 19, 583, 584, 14, 19, 256, 14, 56, 57, 14, 19, 60, 14, 14, 57, 14, 497, 16, 14, 19, 19, 19, 14, 497, 14, 19, 14, 502, 19, 510, 497, 506, 31, 32, 33, 13, 510, 16, 37, 256, 14, 16, 41, 510, 14, 57, 19, 46, 47, 48, 19, 14, 527, 18, 529, 16, 20, 56, 57, 8, 20, 60, 497, 20, 20, 19, 547, 502, 19, 19, 55, 506, 20, 547, 55, 510, 8, 16, 256, 20, 547, 556, 16, 20, 20, 20, 15, 20, 18, 16, 565, 16, 18, 574, 16, 16, 42, 16, 18, 16, 574, 13, 18, 16, 46, 540, 16, 574, 16, 16, 16, 16, 547, 588, 589, 550, 8, 45, 13, 43, 14, 556, 18, 46, 14, 16, 44, 16, 16, 8, 565, 18, 16, 18, 16, 16, 14, 14, 573, 574, 14, 19, 14, 618, 22, 23, 24, 25, 26, 27, 28, 29, 30, 14, 14, 630, 14, 592, 593, 14, 641, 14, 8, 426, 14, 14, 14, 641, 44, 16, 14, 16, 653, 536, 641, 89, 657, 149, 312, 653, 313, 662, 153, 657, 730, 604, 653, 668, 662, 98, 657, 626, 647, 94, 668, 662, 613, 621, 49, 157, 51, 668, 53, 54, 55, 556, 565, 256, 643, 644, 574, 629, 626, 648, 547, 684, 67, 68, 69, 70, 71, 72, 73, 74, 529, 464, 385, 224, 79, 80, 665, 82, 83, 84, 85, 102, 671, 522, 518, 90, 91, -1, 93, -1, 95, -1, -1, -1, -1, 684, -1, -1, -1, -1, -1, 736, 691, 256, -1, -1, -1, 696, 736, 698, -1, -1, -1, -1, -1, 736, -1, -1, -1, -1, 709, -1, -1, -1, -1, -1, 715, -1, -1, -1, 719, 1, 2, 3, 4, 5, -1, 7, -1, 9, -1, 730, 12, 13, -1, -1, 735, -1, 18, -1, 739, 21, 22, 23, 743, 744, -1, -1, 747, -1, -1, -1, -1, -1, -1, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, 9, -1, -1, 12, 13, -1, -1, -1, -1, 18, 16, -1, 21, 22, 23, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, 20, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, 1, 2, 3, 4, 5, -1, 7, -1, 9, -1, -1, 12, 13, -1, -1, -1, -1, 18, 16, -1, 21, 22, 23, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, 9, -1, -1, 12, 13, -1, -1, -1, -1, 18, -1, -1, 21, 22, 23, 20, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, -1, -1, -1, -1, 49, -1, 51, 52, 53, 54, 55, -1, -1, -1, -1, 1, 2, 3, 4, 5, -1, 7, 67, 68, 69, 70, -1, 72, 73, 74, 16, 17, -1, -1, 79, 80, 81, 82, 83, 84, 85, 86, -1, -1, -1, 90, 91, 92, 93, -1, 95, -1, 97, -1, -1, -1, -1, -1, -1, -1, -1, 256, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, 17, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 256, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, -1, 7, -1, -1, 14, -1, -1, -1, -1, 19, -1, 17, 22, 23, 24, 25, 26, 27, 28, 29, 30, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, 17, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, 17, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, 17, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 18, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, 17, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, 17, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, 17, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, 256, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, 14, -1, 16, -1, -1, 19, 20, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, 256, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, -1, -1, 256, 56, 57, -1, 14, 60, 16, -1, -1, 19, 20, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, -1, -1, 256, 56, 57, -1, 14, 60, 16, -1, -1, 19, 20, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, -1, -1, 256, 56, 57, -1, 14, 60, 16, -1, -1, 19, 20, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, -1, -1, 256, 56, 57, -1, 14, 60, 16, -1, -1, 19, 20, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, -1, -1, 256, 56, 57, -1, 14, 60, 16, -1, -1, 19, 20, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, -1, -1, 256, 56, 57, -1, 14, 60, 16, -1, -1, 19, 20, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, -1, -1, 256, 56, 57, -1, 14, 60, 16, -1, -1, 19, 20, -1, 22, 23, 24, 25, 26, -1, -1, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, 22, 23, 24, 25, 26, -1, -1, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, -1, -1, 256, 56, 57, -1, 14, 60, 16, -1, -1, 19, 20, -1, 22, 23, 24, 25, 26, -1, -1, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, -1, -1, 24, 25, 26, -1, -1, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, -1, -1, 24, 25, 26, -1, -1, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, -1, -1, 24, 25, 26, -1, -1, 29, 30, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, -1, -1, 256, 56, 57, -1, 14, 60, 16, -1, -1, 19, 20, -1, -1, -1, 24, 25, 26, -1, -1, -1, -1, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, -1, -1, 24, 25, 26, -1, -1, -1, -1, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, -1, -1, -1, -1, -1, -1, 256, 56, 57, -1, 14, 60, 16, -1, -1, 19, 20, -1, -1, -1, -1, 25, 26, -1, -1, -1, -1, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, -1, -1, -1, 25, 26, -1, -1, -1, -1, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, 14, -1, 16, 56, 57, 19, 20, 60, -1, -1, -1, 25, 26, -1, -1, -1, -1, 31, 32, 33, -1, -1, -1, 37, -1, -1, -1, 41, -1, -1, -1, -1, 46, 47, 48, 256, -1, -1, -1, -1, -1, -1, 56, 57, -1, -1, 60, -1, -1, -1, -1, -1, -1, -1, -1, 1, 2, 3, 4, 5, -1, 7, 8, 9, -1, -1, 12, 13, 14, -1, -1, -1, -1, -1, -1, 21, 22, 23, -1, -1, 256, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, 256, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, -1, -1, -1, 1, 2, 3, 4, 5, -1, 7, -1, 9, 256, -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, 21, 22, 23, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, 256, -1, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 256, 89, 90, 91, 92, 93, 94, 95, 96, 97, 1, 2, 3, 4, 5, 6, 7, -1, 9, -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, 21, 22, 23, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, 8, 9, -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, 21, 22, 23, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, 9, -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, 21, 22, 23, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, 9, -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, 21, 22, 23, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, 9, -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, 21, 22, 23, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, 9, -1, -1, 12, 13, -1, -1, -1, -1, -1, -1, -1, 21, 22, 23, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 35, 36, -1, -1, 39, 40, -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, -1, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, 89, 90, 91, 92, 93, 94, 95, 96, 97, 1, 2, 3, 4, 5, -1, 7, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 48, -1, -1, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 8, 64, -1, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, -1, -1, 90, 91, 92, 93, -1, 95, 96, 97, -1, -1, -1, -1, -1, -1, 49, -1, 51, 52, 53, 54, 55, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 67, 68, 69, 70, 71, 72, 73, 74, -1, -1, -1, -1, 79, 80, 81, 82, 83, 84, 85, 86, -1, -1, -1, 90, 91, 92, 93, -1, 95, -1, 97, }; #define YYFINAL 1 #ifndef YYDEBUG #define YYDEBUG 0 #endif #define YYMAXTOKEN 115 #if YYDEBUG char *yyname[] = { "end-of-file","NAME","FONT_NAME","COLOR_NAME","ARGUMENT_NAME","REASON_NAME", "CHARSET_NAME","ENUMVAL_NAME","CLASS_NAME","UNS_FLOAT_LITERAL","COMP_STRING", "CHAR_8_LITERAL","UNS_INT_LITERAL","LEFT_PAREN","RIGHT_PAREN","COLON", "SEMICOLON","LEFT_BRACE","RIGHT_BRACE","COMMA","EQUAL_SIGN","NOT","PLUS", "MINUS","AND","OR","XOR","MULTIPLY","DIVIDE","LEFT_SHIFT","RIGHT_SHIFT","LIST", "IDENTIFIER","END","MODULE","UILTRUE","UILFALSE","INCLUDE","MACRO","ON","OFF", "VALUE","ARGUMENTS","CALLBACKS","PROCEDURES","CONTROLS","PROCEDURE","OBJECT", "OBJECTS","WIDGET","GADGET","FONT","ARGUMENT","REASON","PIXMAP","COLOR","NAMES", "CHARACTER_SET","CASE_SENSITIVE","CASE_INSENSITIVE","VERSION","MANAGED", "UNMANAGED","PRIVATE","IMPORTED","EXPORTED","UILFILE","STRING_TABLE", "TRANSLATION_TABLE","COMPOUND_STRING","FONT_TABLE","ANY","STRING","BOOLEAN", "ICON","RIGHT_TO_LEFT","BACKGROUND","FOREGROUND","COLOR_TABLE","FLOAT", "INTEGER","CLASS_REC_NAME","ASCIZ_TABLE","INTEGER_TABLE","ASCIZ_STRING_TABLE", "COMPOUND_STRING_TABLE","XBITMAPFILE","SEPARATE","SIXTEEN_BIT","POUND","KEYSYM", "SINGLE_FLOAT","RGB","WIDE_CHARACTER","LOC_STRING","FONTSET","CHILD_NAME", "COMPOUND_STRING_COMPONENT","IN","CM","MM","PT","FU","PIXEL","PIXELS","INCH", "INCHES","CENTIMETER","CENTIMETERS","MILLIMETER","MILLIMETERS","POINT","POINTS", "FONT_UNIT","FONT_UNITS","PIX", }; char *yyrule[] = { "$accept : module_block", "$$1 :", "module_block : module_header $$1 module_declaration_list END MODULE SEMICOLON", "$$2 :", "$$3 :", "module_header : $$2 MODULE id $$3 opt_module_clauses", "opt_module_clauses :", "opt_module_clauses : module_clauses", "module_clauses : module_clause", "module_clauses : module_clauses module_clause", "module_clause : VERSION EQUAL_SIGN character_8_value", "module_clause : NAMES EQUAL_SIGN sensitivity_value", "module_clause : CHARACTER_SET EQUAL_SIGN valid_charset", "$$4 :", "module_clause : OBJECTS $$4 EQUAL_SIGN variant_spec", "sensitivity_value : CASE_SENSITIVE", "sensitivity_value : CASE_INSENSITIVE", "variant_spec : LEFT_BRACE RIGHT_BRACE", "variant_spec : LEFT_BRACE variant_list RIGHT_BRACE", "$$5 :", "variant_spec : error $$5 RIGHT_BRACE", "variant_list : variant_clause SEMICOLON", "variant_list : variant_list variant_clause SEMICOLON", "$$6 :", "variant_list : error $$6 SEMICOLON", "$$7 :", "variant_clause : CLASS_NAME $$7 EQUAL_SIGN variant", "variant : WIDGET", "variant : GADGET", "module_declaration_list :", "module_declaration_list : module_declaration_list module_declaration", "module_declaration : value_declaration", "module_declaration : identifier_declaration", "module_declaration : procedure_declaration", "module_declaration : object_declaration", "module_declaration : list_declaration", "module_declaration : include_directive", "$$8 :", "value_declaration : VALUE $$8 value_declaration_list", "value_declaration_list : value_decl", "value_declaration_list : value_declaration_list value_decl", "$$9 :", "value_declaration_list : error $$9 SEMICOLON", "value_decl : id COLON value_definition SEMICOLON", "value_definition : EXPORTED private_value", "value_definition : PRIVATE private_value_plus", "value_definition : private_value_plus", "value_definition : IMPORTED value_type", "value_type : INTEGER", "value_type : STRING", "value_type : PIXMAP", "value_type : FLOAT", "value_type : BOOLEAN", "value_type : FONT", "value_type : REASON", "value_type : ARGUMENT", "value_type : COLOR", "value_type : string_table_type", "value_type : asciz_table_type", "value_type : INTEGER_TABLE", "value_type : TRANSLATION_TABLE", "value_type : FONT_TABLE", "value_type : ICON", "value_type : COMPOUND_STRING", "value_type : COMPOUND_STRING_COMPONENT", "value_type : CLASS_REC_NAME", "value_type : XBITMAPFILE", "value_type : KEYSYM", "value_type : SINGLE_FLOAT", "value_type : RGB", "value_type : WIDE_CHARACTER", "value_type : FONTSET", "value_type : WIDGET", "arg_value_type : INTEGER", "arg_value_type : STRING", "arg_value_type : PIXMAP", "arg_value_type : FLOAT", "arg_value_type : BOOLEAN", "arg_value_type : FONT", "arg_value_type : REASON", "arg_value_type : COLOR", "arg_value_type : string_table_type", "arg_value_type : asciz_table_type", "arg_value_type : INTEGER_TABLE", "arg_value_type : TRANSLATION_TABLE", "arg_value_type : FONT_TABLE", "arg_value_type : ICON", "arg_value_type : COMPOUND_STRING", "arg_value_type : KEYSYM", "arg_value_type : SINGLE_FLOAT", "arg_value_type : WIDE_CHARACTER", "arg_value_type : FONTSET", "arg_value_type : WIDGET", "string_table_type : STRING_TABLE", "string_table_type : COMPOUND_STRING_TABLE", "asciz_table_type : ASCIZ_TABLE", "asciz_table_type : ASCIZ_STRING_TABLE", "$$10 :", "procedure_declaration : PROCEDURE $$10 procedure_declaration_list", "procedure_declaration_list : procedure_decl", "procedure_declaration_list : procedure_declaration_list procedure_decl", "$$11 :", "procedure_declaration_list : error $$11 SEMICOLON", "procedure_decl : id opt_formal_parameters opt_class SEMICOLON", "opt_formal_parameters :", "opt_formal_parameters : LEFT_PAREN formal_parameter_type RIGHT_PAREN", "formal_parameter_type :", "formal_parameter_type : value_type", "formal_parameter_type : ANY", "formal_parameter_type : CLASS_NAME", "opt_class :", "$$12 :", "identifier_declaration : IDENTIFIER $$12 identifier_declaration_list", "identifier_declaration_list : identifier_decl", "identifier_declaration_list : identifier_declaration_list identifier_decl", "$$13 :", "identifier_declaration_list : error $$13 SEMICOLON", "identifier_decl : id SEMICOLON", "include_directive : INCLUDE UILFILE character_8_value SEMICOLON", "$$14 :", "include_directive : error $$14 SEMICOLON", "$$15 :", "object_declaration : OBJECT $$15 object_decl_list", "object_decl_list : object_decl SEMICOLON", "object_decl_list : object_decl_list object_decl SEMICOLON", "$$16 :", "object_decl_list : error $$16 SEMICOLON", "$$17 :", "object_decl : id $$17 COLON object_definition", "$$18 :", "object_definition : EXPORTED $$18 object_specification", "$$19 :", "object_definition : PRIVATE $$19 object_specification", "$$20 :", "object_definition : epsilon_production $$20 object_specification", "$$21 :", "$$22 :", "object_definition : IMPORTED $$21 CLASS_NAME $$22 opt_create_proc_ref epsilon_production", "$$23 :", "control_object_definition : EXPORTED $$23 object_specification", "$$24 :", "control_object_definition : PRIVATE $$24 object_specification", "$$25 :", "control_object_definition : MANAGED $$25 object_specification", "$$26 :", "control_object_definition : UNMANAGED $$26 object_specification", "$$27 :", "control_object_definition : epsilon_production $$27 object_specification", "$$28 :", "$$29 :", "control_object_definition : IMPORTED $$28 CLASS_NAME $$29 epsilon_production", "$$30 :", "object_specification : CLASS_NAME $$30 opt_create_proc_ref opt_variant object_spec", "opt_variant : epsilon_production", "opt_variant : variant", "$$31 :", "control_object_specification : CLASS_NAME $$31 opt_create_proc_ref opt_variant control_object_spec", "opt_create_proc_ref : epsilon_production", "opt_create_proc_ref : PROCEDURE id_ref opt_parens", "opt_parens : epsilon_production", "opt_parens : LEFT_PAREN RIGHT_PAREN", "object_spec : id_ref", "object_spec : LEFT_BRACE RIGHT_BRACE", "object_spec : LEFT_BRACE object_feature_list RIGHT_BRACE", "$$32 :", "object_spec : error $$32 RIGHT_BRACE", "control_object_spec : id_ref", "control_object_spec : LEFT_BRACE RIGHT_BRACE epsilon_production", "control_object_spec : LEFT_BRACE object_feature_list RIGHT_BRACE epsilon_production", "$$33 :", "control_object_spec : error $$33 RIGHT_BRACE", "child_object_spec : LEFT_BRACE RIGHT_BRACE epsilon_production", "child_object_spec : LEFT_BRACE object_feature_list RIGHT_BRACE epsilon_production", "$$34 :", "child_object_spec : error $$34 RIGHT_BRACE", "object_feature_list : object_feature", "object_feature_list : object_feature_list object_feature", "object_feature : argument_list_def SEMICOLON", "object_feature : callback_list_def SEMICOLON", "object_feature : control_list_def SEMICOLON", "$$35 :", "object_feature : error $$35 SEMICOLON", "epsilon_production :", "$$36 :", "list_declaration : LIST $$36 list_decl_list", "list_decl_list : list_decl SEMICOLON", "list_decl_list : list_decl_list list_decl SEMICOLON", "$$37 :", "list_decl_list : error $$37 SEMICOLON", "$$38 :", "list_decl : id $$38 COLON list_specification", "list_specification : control_list_specification", "list_specification : argument_list_specification", "list_specification : callback_list_specification", "list_specification : procedure_list_specification", "$$39 :", "control_list_specification : control_list_type $$39 control_list_spec", "$$40 :", "argument_list_specification : argument_list_type $$40 argument_list_spec", "$$41 :", "callback_list_specification : callback_list_type $$41 callback_list_spec", "$$42 :", "procedure_list_specification : procedure_list_type $$42 procedure_list_spec", "argument_list_type : ARGUMENTS", "callback_list_type : CALLBACKS", "procedure_list_type : PROCEDURES", "control_list_type : CONTROLS", "argument_list_spec : id_ref", "argument_list_spec : LEFT_BRACE RIGHT_BRACE", "argument_list_spec : LEFT_BRACE argument_list_clause_list RIGHT_BRACE", "$$43 :", "argument_list_spec : error $$43 RIGHT_BRACE", "callback_list_spec : id_ref", "callback_list_spec : LEFT_BRACE RIGHT_BRACE", "callback_list_spec : LEFT_BRACE callback_list_clause_list RIGHT_BRACE", "$$44 :", "callback_list_spec : error $$44 RIGHT_BRACE", "procedure_list_spec : id_ref", "procedure_list_spec : LEFT_BRACE RIGHT_BRACE", "procedure_list_spec : LEFT_BRACE procedure_list_clause_list RIGHT_BRACE", "$$45 :", "procedure_list_spec : error $$45 RIGHT_BRACE", "control_list_spec : id_ref", "control_list_spec : LEFT_BRACE RIGHT_BRACE", "control_list_spec : LEFT_BRACE control_list_clause_list RIGHT_BRACE", "$$46 :", "control_list_spec : error $$46 RIGHT_BRACE", "argument_list_clause_list : argument_list_clause", "argument_list_clause_list : argument_list_clause_list argument_list_clause", "callback_list_clause_list : callback_list_clause", "callback_list_clause_list : callback_list_clause_list callback_list_clause", "procedure_list_clause_list : procedure_list_clause", "procedure_list_clause_list : procedure_list_clause_list procedure_list_clause", "control_list_clause_list : control_list_clause", "control_list_clause_list : control_list_clause_list control_list_clause", "argument_list_clause : argument_list_def SEMICOLON", "argument_list_clause : argument_list_item SEMICOLON", "$$47 :", "argument_list_clause : error $$47 SEMICOLON", "callback_list_clause : callback_list_def SEMICOLON", "callback_list_clause : callback_list_item SEMICOLON", "$$48 :", "callback_list_clause : error $$48 SEMICOLON", "procedure_list_clause : procedure_list_def SEMICOLON", "procedure_list_clause : procedure_list_def_ref SEMICOLON", "$$49 :", "procedure_list_clause : error $$49 SEMICOLON", "control_list_clause : control_list_def SEMICOLON", "control_list_clause : control_list_item SEMICOLON", "$$50 :", "control_list_clause : error $$50 SEMICOLON", "$$51 :", "control_list_def : epsilon_production $$51 control_list_specification", "$$52 :", "argument_list_def : epsilon_production $$52 argument_list_specification", "$$53 :", "callback_list_def : epsilon_production $$53 callback_list_specification", "$$54 :", "procedure_list_def : epsilon_production $$54 procedure_list_specification", "control_list_item : opt_managed control_item", "$$55 :", "control_list_item : id $$55 COLON control_object_definition", "$$56 :", "control_list_item : CHILD_NAME opt_child_managed $$56 child_object_spec", "$$57 :", "control_list_item : CHILD_NAME UNMANAGED $$57 child_object_spec", "opt_child_managed : epsilon_production", "opt_child_managed : MANAGED", "argument_list_item : value EQUAL_SIGN value", "argument_list_item : value EQUAL_SIGN CLASS_NAME id_ref", "callback_list_item : value EQUAL_SIGN procedure_reference", "callback_list_item : value EQUAL_SIGN procedure_list_def", "$$58 :", "control_item : epsilon_production $$58 control_object_specification", "opt_managed : epsilon_production", "opt_managed : MANAGED", "opt_managed : UNMANAGED", "procedure_reference : PROCEDURE id_ref opt_procedure_argument", "procedure_list_def_ref : id_ref opt_procedure_argument", "opt_procedure_argument : epsilon_production", "opt_procedure_argument : LEFT_PAREN value RIGHT_PAREN", "opt_procedure_argument : LEFT_PAREN CLASS_NAME id_ref RIGHT_PAREN", "opt_procedure_argument : LEFT_PAREN RIGHT_PAREN", "id : NAME", "id : FONT_NAME", "id : COLOR_NAME", "id : ARGUMENT_NAME", "id : REASON_NAME", "id : ENUMVAL_NAME", "id : CHILD_NAME", "id : keyword", "id_ref : id", "keyword : STRING", "keyword : BOOLEAN", "keyword : FLOAT", "keyword : INTEGER", "keyword : FONT", "keyword : ARGUMENT", "keyword : REASON", "keyword : PIXMAP", "keyword : COLOR", "keyword : NAMES", "keyword : CASE_SENSITIVE", "keyword : CASE_INSENSITIVE", "keyword : VERSION", "keyword : MANAGED", "keyword : UNMANAGED", "keyword : UILFILE", "keyword : string_table_type", "keyword : asciz_table_type", "keyword : INTEGER_TABLE", "keyword : TRANSLATION_TABLE", "keyword : COMPOUND_STRING", "keyword : COMPOUND_STRING_COMPONENT", "keyword : CLASS_REC_NAME", "keyword : FONT_TABLE", "keyword : RIGHT_TO_LEFT", "keyword : CHARACTER_SET", "keyword : COLOR_TABLE", "keyword : ICON", "keyword : BACKGROUND", "keyword : FOREGROUND", "keyword : XBITMAPFILE", "keyword : SEPARATE", "keyword : ANY", "keyword : IMPORTED", "keyword : OBJECTS", "keyword : KEYSYM", "keyword : SINGLE_FLOAT", "keyword : RGB", "keyword : WIDE_CHARACTER", "keyword : FONTSET", "character_8_value : value", "private_value : value", "private_value_plus : non_export_value", "private_value_plus : value", "non_export_value : COLOR_TABLE LEFT_PAREN color_list RIGHT_PAREN", "value : value_1", "value : value OR value_1", "value : value XOR value_1", "value_1 : value_2", "value_1 : value_1 AND value_2", "value_2 : value_3", "value_2 : value_2 LEFT_SHIFT value_3", "value_2 : value_2 RIGHT_SHIFT value_3", "value_3 : value_4", "value_3 : value_3 PLUS value_4", "value_3 : value_3 MINUS value_4", "value_4 : value_5", "value_4 : value_4 MULTIPLY value_5", "value_4 : value_4 DIVIDE value_5", "value_5 : value_6", "value_5 : MINUS value_5", "value_5 : NOT value_5", "value_5 : PLUS value_5", "value_6 : operand", "value_6 : LEFT_PAREN value RIGHT_PAREN", "operand : UNS_INT_LITERAL", "operand : UNS_INT_LITERAL units_specification", "operand : optional_charset CHAR_8_LITERAL", "operand : id", "operand : UNS_FLOAT_LITERAL", "operand : UNS_FLOAT_LITERAL units_specification", "operand : PIXMAP LEFT_PAREN character_8_value RIGHT_PAREN", "operand : FONT LEFT_PAREN font_spec RIGHT_PAREN", "operand : FONTSET LEFT_PAREN fontset_spec RIGHT_PAREN", "operand : COLOR LEFT_PAREN color_spec RIGHT_PAREN", "operand : REASON LEFT_PAREN character_8_value RIGHT_PAREN", "operand : CLASS_REC_NAME LEFT_PAREN character_8_value RIGHT_PAREN", "operand : ARGUMENT LEFT_PAREN character_8_value opt_arg_type RIGHT_PAREN", "operand : UILTRUE", "operand : UILFALSE", "operand : ON", "operand : OFF", "operand : optional_charset COMP_STRING", "operand : string_table_type LEFT_PAREN comp_str_list RIGHT_PAREN", "operand : asciz_table_type LEFT_PAREN asciz_list RIGHT_PAREN", "operand : INTEGER_TABLE LEFT_PAREN integer_list RIGHT_PAREN", "operand : TRANSLATION_TABLE LEFT_PAREN string_list RIGHT_PAREN", "operand : COMPOUND_STRING LEFT_PAREN comp_str_result RIGHT_PAREN", "operand : COMPOUND_STRING_COMPONENT LEFT_PAREN comp_str_comp_result RIGHT_PAREN", "operand : FONT_TABLE LEFT_PAREN font_list RIGHT_PAREN", "operand : ICON LEFT_PAREN icon_spec RIGHT_PAREN", "operand : FLOAT LEFT_PAREN value RIGHT_PAREN", "operand : INTEGER LEFT_PAREN value RIGHT_PAREN", "operand : XBITMAPFILE LEFT_PAREN character_8_value RIGHT_PAREN", "operand : KEYSYM LEFT_PAREN character_8_value RIGHT_PAREN", "operand : SINGLE_FLOAT LEFT_PAREN value RIGHT_PAREN", "operand : RGB LEFT_PAREN rgb_list RIGHT_PAREN", "operand : WIDE_CHARACTER LEFT_PAREN wchar_str_result RIGHT_PAREN", "operand : LOC_STRING", "string_list :", "string_list : string_list_2", "string_list_2 : private_value", "string_list_2 : string_list_2 COMMA private_value", "asciz_list :", "asciz_list : asciz_list_2", "asciz_list_2 : private_value", "asciz_list_2 : asciz_list_2 COMMA private_value", "integer_list :", "integer_list : integer_list_2", "integer_list_2 : private_value", "integer_list_2 : integer_list_2 COMMA private_value", "rgb_list : private_value COMMA private_value COMMA private_value", "comp_str_list :", "comp_str_list : comp_str_list_2", "comp_str_list_2 : private_value", "comp_str_list_2 : comp_str_list_2 COMMA private_value", "opt_arg_type :", "opt_arg_type : COMMA arg_value_type", "opt_arg_type : COMMA ANY", "comp_str_result : private_value", "comp_str_result : private_value comp_str_attrs", "comp_str_comp_result : ENUMVAL_NAME", "comp_str_comp_result : ENUMVAL_NAME COMMA ENUMVAL_NAME", "comp_str_comp_result : ENUMVAL_NAME COMMA CHAR_8_LITERAL", "comp_str_comp_result : ENUMVAL_NAME COMMA LOC_STRING", "comp_str_comp_result : ENUMVAL_NAME COMMA CHARSET_NAME", "comp_str_attrs : COMMA comp_str_attr", "comp_str_attrs : comp_str_attrs COMMA comp_str_attr", "comp_str_attr : CHARACTER_SET EQUAL_SIGN valid_charset", "comp_str_attr : RIGHT_TO_LEFT EQUAL_SIGN private_value", "comp_str_attr : SEPARATE EQUAL_SIGN private_value", "wchar_str_result : private_value", "font_spec : character_8_value COMMA CHARACTER_SET EQUAL_SIGN valid_charset", "font_spec : character_8_value", "fontset_spec : character_8_value COMMA CHARACTER_SET EQUAL_SIGN valid_charset", "fontset_spec : character_8_value", "font_list : font_item", "font_list : font_list COMMA font_item", "font_item : valid_charset EQUAL_SIGN private_value", "font_item : private_value", "optional_charset : POUND valid_charset", "optional_charset : epsilon_production", "valid_charset : CHARSET_NAME", "valid_charset : CHARACTER_SET LEFT_PAREN charset_info RIGHT_PAREN", "valid_charset : NAME", "charset_info : character_8_value", "charset_info : character_8_value charset_attrs", "charset_attrs : COMMA charset_attr", "charset_attrs : charset_attrs COMMA charset_attr", "charset_attr : RIGHT_TO_LEFT EQUAL_SIGN private_value", "charset_attr : SIXTEEN_BIT EQUAL_SIGN private_value", "color_list : color_item", "color_list : color_list COMMA color_item", "color_item : BACKGROUND COLOR EQUAL_SIGN character_8_value", "color_item : FOREGROUND COLOR EQUAL_SIGN character_8_value", "color_item : value EQUAL_SIGN character_8_value", "color_spec : character_8_value", "color_spec : character_8_value COMMA mono_color_spec", "mono_color_spec : BACKGROUND", "mono_color_spec : FOREGROUND", "icon_spec : icon_rows", "icon_spec : COLOR_TABLE EQUAL_SIGN private_value COMMA icon_rows", "icon_rows : private_value", "icon_rows : icon_rows COMMA private_value", "units_specification : PIX", "units_specification : PIXEL", "units_specification : PIXELS", "units_specification : IN", "units_specification : INCH", "units_specification : INCHES", "units_specification : CM", "units_specification : CENTIMETER", "units_specification : CENTIMETERS", "units_specification : MM", "units_specification : MILLIMETER", "units_specification : MILLIMETERS", "units_specification : PT", "units_specification : POINT", "units_specification : POINTS", "units_specification : FU", "units_specification : FONT_UNIT", "units_specification : FONT_UNITS", }; #endif #ifndef YYSTYPE typedef int YYSTYPE; #endif #ifdef YYSTACKSIZE #undef YYMAXDEPTH #define YYMAXDEPTH YYSTACKSIZE #else #ifdef YYMAXDEPTH #define YYSTACKSIZE YYMAXDEPTH #else #define YYSTACKSIZE 10000 #define YYMAXDEPTH 10000 #endif #endif #define YYINITSTACKSIZE 200 int yydebug; int yynerrs; int yyerrflag; int yychar; short *yyssp; YYSTYPE *yyvsp; YYSTYPE yyval; YYSTYPE yylval; short *yyss; short *yysslim; YYSTYPE *yyvs; int yystacksize; #line 1423 "Uil.y" /* Dummy error routine for the parser. We will output our own error messages. */ int yyerror (s) char * s; { return 0; } #line 2147 "y.tab.c" /* allocate initial stack or double stack size, up to YYMAXDEPTH */ int yyparse __P((void)); static int yygrowstack __P((void)); static int yygrowstack() { int newsize, i; short *newss; YYSTYPE *newvs; if ((newsize = yystacksize) == 0) newsize = YYINITSTACKSIZE; else if (newsize >= YYMAXDEPTH) return -1; else if ((newsize *= 2) > YYMAXDEPTH) newsize = YYMAXDEPTH; i = yyssp - yyss; if ((newss = (short *)realloc(yyss, newsize * sizeof *newss)) == NULL) return -1; yyss = newss; yyssp = newss + i; if ((newvs = (YYSTYPE *)realloc(yyvs, newsize * sizeof *newvs)) == NULL) return -1; yyvs = newvs; yyvsp = newvs + i; yystacksize = newsize; yysslim = yyss + newsize - 1; return 0; } #define YYABORT goto yyabort #define YYREJECT goto yyabort #define YYACCEPT goto yyaccept #define YYERROR goto yyerrlab int yyparse() { int yym, yyn, yystate; #if YYDEBUG char *yys; if ((yys = getenv("YYDEBUG")) != NULL) { yyn = *yys; if (yyn >= '0' && yyn <= '9') yydebug = yyn - '0'; } #endif yynerrs = 0; yyerrflag = 0; yychar = (-1); if (yyss == NULL && yygrowstack()) goto yyoverflow; yyssp = yyss; yyvsp = yyvs; *yyssp = yystate = 0; yyloop: if ((yyn = yydefred[yystate]) != 0) goto yyreduce; if (yychar < 0) { if ((yychar = yylex()) < 0) yychar = 0; #if YYDEBUG if (yydebug) { yys = 0; if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; printf("%sdebug: state %d, reading %d (%s)\n", YYPREFIX, yystate, yychar, yys); } #endif } if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 && yyn <= YYTABLESIZE && yycheck[yyn] == yychar) { #if YYDEBUG if (yydebug) printf("%sdebug: state %d, shifting to state %d\n", YYPREFIX, yystate, yytable[yyn]); #endif if (yyssp >= yysslim && yygrowstack()) { goto yyoverflow; } *++yyssp = yystate = yytable[yyn]; *++yyvsp = yylval; yychar = (-1); if (yyerrflag > 0) --yyerrflag; goto yyloop; } if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 && yyn <= YYTABLESIZE && yycheck[yyn] == yychar) { yyn = yytable[yyn]; goto yyreduce; } if (yyerrflag) goto yyinrecovery; goto yynewerror; yynewerror: yyerror("syntax error"); goto yyerrlab; yyerrlab: ++yynerrs; yyinrecovery: if (yyerrflag < 3) { yyerrflag = 3; for (;;) { if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 && yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE) { #if YYDEBUG if (yydebug) printf("%sdebug: state %d, error recovery shifting\ to state %d\n", YYPREFIX, *yyssp, yytable[yyn]); #endif if (yyssp >= yysslim && yygrowstack()) { goto yyoverflow; } *++yyssp = yystate = yytable[yyn]; *++yyvsp = yylval; goto yyloop; } else { #if YYDEBUG if (yydebug) printf("%sdebug: error recovery discarding state %d\n", YYPREFIX, *yyssp); #endif if (yyssp <= yyss) goto yyabort; --yyssp; --yyvsp; } } } else { if (yychar == 0) goto yyabort; #if YYDEBUG if (yydebug) { yys = 0; if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; printf("%sdebug: state %d, error recovery discards token %d (%s)\n", YYPREFIX, yystate, yychar, yys); } #endif yychar = (-1); goto yyloop; } yyreduce: #if YYDEBUG if (yydebug) printf("%sdebug: state %d, reducing by rule %d (%s)\n", YYPREFIX, yystate, yyn, yyrule[yyn]); #endif yym = yylen[yyn]; yyval = yyvsp[1-yym]; switch (yyn) { case 1: #line 258 "Uil.y" { sar_save_module_source (); } break; case 3: #line 263 "Uil.y" { sar_create_root ( &yyval ); } break; case 4: #line 264 "Uil.y" { sar_create_module( &yyval, &yyvsp[0], &yyvsp[-1] ); } break; case 10: #line 279 "Uil.y" { sar_process_module_version( &yyvsp[0] , &yyvsp[-2] ); } break; case 11: #line 280 "Uil.y" { sar_process_module_sensitivity( &yyvsp[0] , &yyvsp[-2] ); } break; case 12: #line 281 "Uil.y" { sar_process_module_charset( &yyvsp[0] , &yyvsp[-2] ); } break; case 13: #line 282 "Uil.y" { sar_make_def_obj (&yyvsp[0]); } break; case 19: #line 293 "Uil.y" { lex_issue_error (RIGHT_BRACE); } break; case 23: #line 299 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 25: #line 303 "Uil.y" { sar_make_def_obj (&yyvsp[0]); } break; case 26: #line 304 "Uil.y" { sar_process_module_variant (&yyvsp[-3], &yyvsp[0]); yyval = gz_yynullval; } break; case 27: #line 308 "Uil.y" { yyval = gz_yynullval; yyval.b_type = sym_k_widget_entry; } break; case 28: #line 309 "Uil.y" { yyval = gz_yynullval; yyval.b_type = sym_k_gadget_entry; } break; case 37: #line 331 "Uil.y" { yyval = yyvsp[0]; sar_save_section_source (&yyvsp[0], sym_k_value_section); } break; case 41: #line 337 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 43: #line 341 "Uil.y" { sar_bind_value_name( &yyvsp[-3], &yyvsp[-1], &yyvsp[0] ); } break; case 44: #line 345 "Uil.y" { yyval = yyvsp[0]; yyval.b_flags |= sym_m_exported; yyval.b_flags &= ~sym_m_private; } break; case 45: #line 346 "Uil.y" { yyval = yyvsp[0]; yyval.b_flags |= sym_m_private; yyval.b_flags &= ~sym_m_exported; } break; case 46: #line 347 "Uil.y" { yyval = yyvsp[0]; yyval.b_flags |= sym_m_private; yyval.b_flags &= ~sym_m_exported; } break; case 47: #line 348 "Uil.y" { sar_import_value_entry( &yyval, &yyvsp[0] ); } break; case 48: #line 352 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_integer_value; } break; case 49: #line 353 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_char_8_value; } break; case 50: #line 354 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_pixmap_value; } break; case 51: #line 355 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_float_value; } break; case 52: #line 356 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_bool_value; } break; case 53: #line 357 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_font_value; } break; case 54: #line 358 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_reason_value; } break; case 55: #line 359 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_argument_value; } break; case 56: #line 360 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_color_value; } break; case 57: #line 361 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_string_table_value; } break; case 58: #line 362 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_asciz_table_value; } break; case 59: #line 363 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_integer_table_value; } break; case 60: #line 364 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_trans_table_value; } break; case 61: #line 365 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_font_table_value; } break; case 62: #line 366 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_icon_value; } break; case 63: #line 367 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_compound_string_value; } break; case 64: #line 368 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_compound_string_value; } break; case 65: #line 369 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_class_rec_name_value; } break; case 66: #line 370 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_xbitmapfile_value; } break; case 67: #line 371 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_keysym_value; } break; case 68: #line 372 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_single_float_value; } break; case 69: #line 373 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_rgb_value; } break; case 70: #line 374 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_wchar_string_value; } break; case 71: #line 375 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_fontset_value; } break; case 72: #line 376 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_widget_ref_value; } break; case 73: #line 381 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_integer_value; } break; case 74: #line 382 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_char_8_value; } break; case 75: #line 383 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_pixmap_value; } break; case 76: #line 384 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_float_value; } break; case 77: #line 385 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_bool_value; } break; case 78: #line 386 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_font_value; } break; case 79: #line 387 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_reason_value; } break; case 80: #line 388 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_color_value; } break; case 81: #line 389 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_string_table_value; } break; case 82: #line 390 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_asciz_table_value; } break; case 83: #line 391 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_integer_table_value; } break; case 84: #line 392 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_trans_table_value; } break; case 85: #line 393 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_font_table_value; } break; case 86: #line 394 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_icon_value; } break; case 87: #line 395 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_compound_string_value; } break; case 88: #line 396 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_keysym_value; } break; case 89: #line 397 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_single_float_value; } break; case 90: #line 398 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_wchar_string_value; } break; case 91: #line 399 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_fontset_value; } break; case 92: #line 400 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_widget_ref_value; } break; case 97: #line 417 "Uil.y" { yyval = yyvsp[0]; sar_save_section_source (&yyvsp[0], sym_k_procedure_section); } break; case 101: #line 423 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 103: #line 427 "Uil.y" { sar_create_procedure( &yyvsp[-3], &yyvsp[-2], &yyvsp[-1], &yyvsp[0] );} break; case 104: #line 431 "Uil.y" { yyval = gz_yynullval; } break; case 105: #line 432 "Uil.y" { yyval = yyvsp[-1]; } break; case 106: #line 436 "Uil.y" { yyval = gz_yynullval; yyval.b_type = sym_k_no_value; } break; case 108: #line 438 "Uil.y" { yyval = yyvsp[0]; yyval.b_type = sym_k_any_value; } break; case 109: #line 441 "Uil.y" { YYSTYPE temp[2]; temp[0] = gz_yynullval; sar_create_object(&temp[0], sym_k_widget_entry); temp[1] = yyvsp[0]; sar_set_object_class(&temp[1]); sar_verify_object(&temp[1]); yyval = temp[0]; } break; case 110: #line 451 "Uil.y" { yyval.b_flags = sym_m_private; } break; case 111: #line 464 "Uil.y" { yyval = yyvsp[0]; sar_save_section_source (&yyvsp[0], sym_k_identifier_section); } break; case 115: #line 470 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 117: #line 474 "Uil.y" { sar_create_identifier ( &yyvsp[-1], &yyvsp[0] ); } break; case 118: #line 484 "Uil.y" { sar_include_file (&yyvsp[-1], &yyvsp[-3], &yyvsp[0]); } break; case 119: #line 485 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 121: #line 493 "Uil.y" { yyval = yyvsp[0]; sar_save_section_source (&yyvsp[0], sym_k_object_section); } break; case 123: #line 497 "Uil.y" { yyval = yyvsp[-1]; sar_save_src_semicolon_pos (&yyvsp[0] ); } break; case 124: #line 498 "Uil.y" { yyval = yyvsp[-2]; sar_save_src_semicolon_pos (&yyvsp[0] ); } break; case 125: #line 499 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 127: #line 504 "Uil.y" { sar_create_object (&yyvsp[0], sym_k_widget_entry); sar_link_section (&yyvsp[0]); yyval = gz_yynullval;} break; case 128: #line 507 "Uil.y" { yyval = gz_yynullval; } break; case 129: #line 512 "Uil.y" { sar_set_object_flags (&yyvsp[0], sym_m_exported); } break; case 131: #line 515 "Uil.y" { sar_set_object_flags (&yyvsp[0], sym_m_private); } break; case 133: #line 518 "Uil.y" { sar_set_object_flags (&yyvsp[0], sym_m_exported); } break; case 135: #line 521 "Uil.y" { sar_set_object_flags (&yyvsp[0], sym_m_imported); } break; case 136: #line 523 "Uil.y" { sar_set_object_class (&yyvsp[0]); } break; case 137: #line 533 "Uil.y" { sar_verify_object (&yyvsp[-5]); } break; case 138: #line 538 "Uil.y" { sar_set_object_flags (&yyvsp[0], sym_m_exported); } break; case 140: #line 541 "Uil.y" { sar_set_object_flags (&yyvsp[0], sym_m_private); } break; case 142: #line 544 "Uil.y" { sar_set_object_flags (& yyvsp[0], (sym_m_managed | sym_m_exported)); } break; case 144: #line 547 "Uil.y" { sar_unset_object_flags (& yyvsp[0], sym_m_managed), sar_set_object_flags (& yyvsp[0], sym_m_exported); } break; case 146: #line 550 "Uil.y" { sar_set_object_flags (&yyvsp[0], sym_m_exported); } break; case 148: #line 553 "Uil.y" { sar_set_object_flags (&yyvsp[0], sym_m_imported); } break; case 149: #line 555 "Uil.y" { sar_set_object_class (&yyvsp[0]); } break; case 150: #line 557 "Uil.y" { sar_verify_object (&yyvsp[-4]); } break; case 151: #line 562 "Uil.y" { sar_set_object_class (&yyvsp[0]); } break; case 152: #line 566 "Uil.y" { sar_verify_object (&yyvsp[-4]); } break; case 153: #line 571 "Uil.y" { sar_set_object_variant (&yyvsp[0]); } break; case 154: #line 573 "Uil.y" { sar_set_object_variant (&yyvsp[0]); } break; case 155: #line 578 "Uil.y" { sar_set_object_class (&yyvsp[0]); yyval = gz_yynullval;} break; case 156: #line 582 "Uil.y" { sar_verify_object (&yyvsp[-4]); } break; case 158: #line 588 "Uil.y" { sar_process_proc_ref (&yyvsp[-1], &gz_yynullval, sym_k_object_proc); sar_save_user_proc_ref_src ( &yyvsp[-2], &yyvsp[-1], &yyvsp[0] ); } break; case 160: #line 594 "Uil.y" { yyval = yyvsp[0]; } break; case 161: #line 604 "Uil.y" { sar_object_reference (&yyvsp[0]); } break; case 164: #line 607 "Uil.y" { lex_issue_error (RIGHT_BRACE); } break; case 166: #line 612 "Uil.y" { sar_object_reference (&yyvsp[0]); } break; case 167: #line 615 "Uil.y" { sar_set_object_flags (&yyvsp[-2], sym_m_exported); } break; case 168: #line 618 "Uil.y" { sar_set_object_flags (&yyvsp[-3], sym_m_exported); } break; case 169: #line 619 "Uil.y" { lex_issue_error (RIGHT_BRACE); } break; case 171: #line 625 "Uil.y" { sar_set_object_flags (&yyvsp[-2], sym_m_private); } break; case 172: #line 628 "Uil.y" { sar_set_object_flags (&yyvsp[-3], sym_m_private); } break; case 173: #line 629 "Uil.y" { lex_issue_error (RIGHT_BRACE); } break; case 177: #line 639 "Uil.y" { sar_save_list_end ( &yyvsp[0]); sar_save_feature (&yyvsp[-1]); yyval = gz_yynullval; } break; case 178: #line 641 "Uil.y" { sar_save_list_end ( &yyvsp[0]); sar_save_feature (&yyvsp[-1]); yyval = gz_yynullval; } break; case 179: #line 643 "Uil.y" { sar_save_list_end ( &yyvsp[0]); sar_save_feature (&yyvsp[-1]); sar_update_parent_list (&yyvsp[-1]); yyval = gz_yynullval; } break; case 180: #line 645 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 182: #line 650 "Uil.y" { yyval = gz_yynullval; } break; case 183: #line 658 "Uil.y" { yyval = yyvsp[0]; sar_save_section_source (&yyvsp[0], sym_k_list_section); } break; case 185: #line 663 "Uil.y" { yyval = yyvsp[-1]; sar_save_src_semicolon_pos (&yyvsp[0] ); } break; case 186: #line 664 "Uil.y" { yyval = yyvsp[-2]; sar_save_src_semicolon_pos (&yyvsp[0] ); } break; case 187: #line 665 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 189: #line 670 "Uil.y" { sar_create_object (&yyvsp[0], sym_k_list_entry); sar_link_section (&yyvsp[0]); yyval = gz_yynullval;} break; case 190: #line 673 "Uil.y" { yyval = gz_yynullval; } break; case 195: #line 685 "Uil.y" { yyval = gz_yynullval; sar_set_list_type (&yyvsp[0]); } break; case 196: #line 687 "Uil.y" { sar_verify_object (&yyvsp[-2]); } break; case 197: #line 692 "Uil.y" { yyval = gz_yynullval; sar_set_list_type (&yyvsp[0]); } break; case 198: #line 694 "Uil.y" { sar_verify_object (&yyvsp[-2]); } break; case 199: #line 699 "Uil.y" { yyval = gz_yynullval; sar_set_list_type (&yyvsp[0]); } break; case 200: #line 701 "Uil.y" { sar_verify_object (&yyvsp[-2]); } break; case 201: #line 706 "Uil.y" { yyval = gz_yynullval; sar_set_list_type (&yyvsp[0]); } break; case 202: #line 708 "Uil.y" { sar_verify_object (&yyvsp[-2]); } break; case 203: #line 713 "Uil.y" { yyval = gz_yynullval; yyval.b_type = sym_k_argument_list; } break; case 204: #line 718 "Uil.y" { yyval = gz_yynullval; yyval.b_type = sym_k_callback_list; } break; case 205: #line 723 "Uil.y" { yyval = gz_yynullval; yyval.b_type = sym_k_proc_ref_list; } break; case 206: #line 727 "Uil.y" { yyval = gz_yynullval; yyval.b_type = sym_k_control_list; } break; case 207: #line 731 "Uil.y" { sar_object_reference (&yyvsp[0]); } break; case 210: #line 734 "Uil.y" { lex_issue_error (RIGHT_BRACE); } break; case 212: #line 738 "Uil.y" { sar_object_reference (&yyvsp[0]); } break; case 215: #line 741 "Uil.y" { lex_issue_error (RIGHT_BRACE); } break; case 217: #line 746 "Uil.y" { sar_object_reference (&yyvsp[0]); } break; case 220: #line 749 "Uil.y" { lex_issue_error (RIGHT_BRACE); } break; case 222: #line 753 "Uil.y" { sar_object_reference (&yyvsp[0]); } break; case 225: #line 756 "Uil.y" { lex_issue_error (RIGHT_BRACE); } break; case 235: #line 781 "Uil.y" { sar_save_src_entry_end (&yyvsp[0], &yyvsp[-1]); sar_add_list_entry (&yyvsp[-1]); yyval = gz_yynullval; } break; case 236: #line 783 "Uil.y" { sar_save_src_entry_end (&yyvsp[0], &yyvsp[-1]); sar_add_list_entry (&yyvsp[-1]); yyval = gz_yynullval; } break; case 237: #line 784 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 239: #line 789 "Uil.y" { sar_save_src_entry_end (&yyvsp[0], &yyvsp[-1]); sar_add_list_entry (&yyvsp[-1]); yyval = gz_yynullval; } break; case 240: #line 791 "Uil.y" { sar_save_src_entry_end (&yyvsp[0], &yyvsp[-1]); sar_add_list_entry (&yyvsp[-1]); yyval = gz_yynullval; } break; case 241: #line 792 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 243: #line 797 "Uil.y" { sar_save_src_entry_end (&yyvsp[0], &yyvsp[-1]); sar_add_list_entry (&yyvsp[-1]); yyval = gz_yynullval; } break; case 244: #line 799 "Uil.y" { sar_save_src_entry_end (&yyvsp[0], &yyvsp[-1]); sar_add_list_entry (&yyvsp[-1]); yyval = gz_yynullval; } break; case 245: #line 800 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 247: #line 805 "Uil.y" { sar_save_src_entry_end (&yyvsp[0], &yyvsp[-1]); sar_add_list_entry (&yyvsp[-1]); yyval = gz_yynullval; } break; case 248: #line 807 "Uil.y" { sar_save_src_entry_end (&yyvsp[0], &yyvsp[-1]); sar_add_list_entry (&yyvsp[-1]); yyval = gz_yynullval; } break; case 249: #line 808 "Uil.y" { lex_issue_error (SEMICOLON); } break; case 251: #line 813 "Uil.y" { yyval = gz_yynullval; sar_create_object (&yyvsp[0], sym_k_list_entry); } break; case 252: #line 815 "Uil.y" { yyval = yyvsp[-2]; } break; case 253: #line 820 "Uil.y" { yyval = gz_yynullval; sar_create_object (&yyvsp[0], sym_k_list_entry); } break; case 254: #line 822 "Uil.y" { yyval = yyvsp[-2]; } break; case 255: #line 827 "Uil.y" { yyval = gz_yynullval; sar_create_object (&yyvsp[0], sym_k_list_entry); } break; case 256: #line 829 "Uil.y" { yyval = yyvsp[-2]; } break; case 257: #line 834 "Uil.y" { yyval = gz_yynullval; sar_create_object (&yyvsp[0], sym_k_list_entry); } break; case 258: #line 836 "Uil.y" { yyval = yyvsp[-2]; } break; case 259: #line 844 "Uil.y" { sar_save_control_item (&yyvsp[-1], &yyvsp[0]); yyval = yyvsp[-1]; } break; case 260: #line 847 "Uil.y" { sar_create_object (& yyvsp[0], sym_k_widget_entry); yyvsp[0].b_flags = sym_m_managed; yyval = gz_yynullval;} break; case 261: #line 850 "Uil.y" { sar_save_control_widget (& yyvsp[-3], & yyvsp[-2]); yyval = yyvsp[-3]; } break; case 262: #line 853 "Uil.y" { sar_create_child (& yyvsp[-1]); yyvsp[-1].b_flags = sym_m_managed; yyval = gz_yynullval; } break; case 263: #line 856 "Uil.y" { sar_save_control_widget (& yyvsp[-3], & yyvsp[-2]); yyval = yyvsp[-3]; } break; case 264: #line 858 "Uil.y" { sar_create_child (& yyvsp[-1]); yyval = gz_yynullval; } break; case 265: #line 860 "Uil.y" { sar_save_control_widget (& yyvsp[-3], & yyvsp[-1]); yyval = yyvsp[-3]; } break; case 268: #line 874 "Uil.y" { sar_save_argument_pair (&yyvsp[-2], &yyvsp[0], &yyvsp[-1]); yyval = yyvsp[-2]; } break; case 269: #line 879 "Uil.y" { YYSTYPE temp [2]; temp [0] = gz_yynullval; sar_create_object (&temp [0], sym_k_widget_entry); temp [1] = yyvsp[-1]; sar_set_object_class (&temp [1]); temp [1] = yyvsp[0]; sar_object_reference (&temp [1]); sar_verify_object (&temp [1]); sar_save_argument_pair (&yyvsp[-3], &temp [0], &yyvsp[-2]); yyval = yyvsp[-3]; } break; case 270: #line 893 "Uil.y" { sar_save_reason_binding (&yyvsp[-2], &yyvsp[0], &yyvsp[-1]); yyval = yyvsp[-2]; } break; case 271: #line 895 "Uil.y" { sar_save_reason_binding (&yyvsp[-2], &yyvsp[0], &yyvsp[-1]); yyval = yyvsp[-2]; } break; case 272: #line 900 "Uil.y" { sar_create_object (&yyvsp[0], sym_k_widget_entry); yyval = gz_yynullval; } break; case 273: #line 902 "Uil.y" { yyval = yyvsp[-2]; } break; case 274: #line 907 "Uil.y" { yyval.b_flags = sym_m_managed; } break; case 275: #line 909 "Uil.y" { yyval = gz_yynullval; yyval.b_flags = sym_m_managed; } break; case 276: #line 911 "Uil.y" { yyval = gz_yynullval; } break; case 277: #line 916 "Uil.y" { sar_process_proc_ref (&yyvsp[-1], &yyvsp[0], sym_k_callback_proc); yyval = yyvsp[-1]; } break; case 278: #line 921 "Uil.y" { sar_process_proc_ref (&yyvsp[-1], &yyvsp[0], sym_k_callback_proc); yyval = yyvsp[-1]; } break; case 280: #line 927 "Uil.y" { yyval = yyvsp[-1]; } break; case 281: #line 929 "Uil.y" { YYSTYPE temp [2]; temp [0] = gz_yynullval; sar_create_object (&temp [0], sym_k_widget_entry); temp [1] = yyvsp[-2]; sar_set_object_class (&temp [1]); temp [1] = yyvsp[-1]; sar_object_reference (&temp [1]); sar_verify_object (&temp [1]); yyval = temp [0]; } break; case 282: #line 937 "Uil.y" { yyval = gz_yynullval; } break; case 290: #line 952 "Uil.y" { sar_map_keyword_to_name( &yyval, &yyvsp[0]); } break; case 291: #line 959 "Uil.y" { sar_process_id_ref (&yyvsp[0]); yyval = yyvsp[0]; } break; case 332: #line 1017 "Uil.y" { yyval = yyvsp[0]; if ((yyval.b_type != sym_k_error_value) && (yyval.b_type != sym_k_any_value) && ((yyval.b_flags &sym_m_forward_ref) == 0)) { if ((yyval.b_type != sym_k_char_8_value) && (yyval.b_type != sym_k_localized_string_value)) sar_value_type_error( &yyval, sym_k_char_8_value ); if ((yyval.b_flags &sym_m_private) == 0) sar_private_error( &yyval ); } } break; case 333: #line 1033 "Uil.y" { yyval = yyvsp[0]; if (yyval.b_type != sym_k_error_value) { if (((yyval.b_flags &sym_m_private) == 0) && ((yyval.b_flags &sym_m_forward_ref) == 0)) sar_private_error( &yyval ); } } break; case 334: #line 1046 "Uil.y" { yyval = yyvsp[0]; if (yyval.b_type != sym_k_error_value) { if (((yyval.b_flags &sym_m_private) == 0) && ((yyval.b_flags &sym_m_forward_ref) == 0)) sar_private_error( &yyval ); } } break; case 335: #line 1055 "Uil.y" { yyval = yyvsp[0]; if (yyval.b_type != sym_k_error_value) { if (((yyval.b_flags &sym_m_private) == 0) && ((yyval.b_flags &sym_m_forward_ref) == 0)) sar_private_error( &yyval ); } } break; case 336: #line 1065 "Uil.y" { sar_make_color_table( &yyval, &yyvsp[-1], &yyvsp[-3]); } break; case 338: #line 1072 "Uil.y" { yyval = yyvsp[-1]; sar_binary_op( &yyval, &yyvsp[-2], &yyvsp[0] ); } break; case 339: #line 1073 "Uil.y" { yyval = yyvsp[-1]; sar_binary_op( &yyval, &yyvsp[-2], &yyvsp[0] ); } break; case 341: #line 1078 "Uil.y" { yyval = yyvsp[-1]; sar_binary_op( &yyval, &yyvsp[-2], &yyvsp[0] ); } break; case 343: #line 1083 "Uil.y" { yyval = yyvsp[-1]; sar_binary_op( &yyval, &yyvsp[-2], &yyvsp[0] ); } break; case 344: #line 1084 "Uil.y" { yyval = yyvsp[-1]; sar_binary_op( &yyval, &yyvsp[-2], &yyvsp[0] ); } break; case 346: #line 1089 "Uil.y" { yyval = yyvsp[-1]; sar_binary_op( &yyval, &yyvsp[-2], &yyvsp[0] ); } break; case 347: #line 1090 "Uil.y" { yyval = yyvsp[-1]; sar_binary_op( &yyval, &yyvsp[-2], &yyvsp[0] ); } break; case 349: #line 1095 "Uil.y" { yyval = yyvsp[-1]; sar_binary_op( &yyval, &yyvsp[-2], &yyvsp[0] ); } break; case 350: #line 1096 "Uil.y" { yyval = yyvsp[-1]; sar_binary_op( &yyval, &yyvsp[-2], &yyvsp[0] ); } break; case 352: #line 1101 "Uil.y" { yyval = yyvsp[-1]; sar_unary_op( &yyval, &yyvsp[0] ); } break; case 353: #line 1102 "Uil.y" { yyval = yyvsp[-1]; sar_unary_op( &yyval, &yyvsp[0] ); } break; case 354: #line 1103 "Uil.y" { yyval = yyvsp[-1]; sar_unary_op( &yyval, &yyvsp[0] ); } break; case 356: #line 1108 "Uil.y" { yyval = yyvsp[-1]; } break; case 357: #line 1112 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[0], sym_k_integer_value, &yyvsp[0], XmPIXELS); } break; case 358: #line 1114 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[-1], sym_k_integer_value, &yyvsp[-1], sar_get_units_type(&yyvsp[0])); } break; case 359: #line 1116 "Uil.y" { /* Don't use FALSE because it is a token not a Boolean! */ Uil_lex_l_charset_specified = 0; sar_make_private_value( &yyval, &yyvsp[0], sym_k_char_8_value, &yyvsp[0], 0); } break; case 360: #line 1120 "Uil.y" { sar_process_id( &yyval, &yyvsp[0] );} break; case 361: #line 1121 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[0], sym_k_float_value, &yyvsp[0], XmPIXELS); } break; case 362: #line 1123 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[-1], sym_k_float_value, &yyvsp[-1], sar_get_units_type(&yyvsp[0])); } break; case 363: #line 1125 "Uil.y" { sar_value_not_implemented( &yyval, &yyvsp[-3], "pixmap literal" ); } break; case 364: #line 1126 "Uil.y" { yyval = yyvsp[-1]; } break; case 365: #line 1127 "Uil.y" { yyval = yyvsp[-1]; } break; case 366: #line 1128 "Uil.y" { yyval = yyvsp[-1]; } break; case 367: #line 1129 "Uil.y" { sar_make_private_value(&yyval, &yyvsp[-1], sym_k_reason_value, &yyvsp[-3], 0); } break; case 368: #line 1131 "Uil.y" { sar_make_private_value(&yyval, &yyvsp[-1], sym_k_class_rec_name_value, &yyvsp[-3], 0); } break; case 369: #line 1134 "Uil.y" { sar_make_private_value ( &yyval, &yyvsp[-2], sym_k_argument_value, &yyvsp[-4], yyvsp[-1].b_type ); } break; case 370: #line 1136 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[0], sym_k_bool_value, &yyvsp[0], 0); } break; case 371: #line 1138 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[0], sym_k_bool_value, &yyvsp[0], 0); } break; case 372: #line 1140 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[0], sym_k_bool_value, &yyvsp[0], 0); } break; case 373: #line 1142 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[0], sym_k_bool_value, &yyvsp[0], 0); } break; case 374: #line 1144 "Uil.y" { /* Don't use FALSE because it is a token not a Boolean! */ Uil_lex_l_charset_specified = 0; sar_make_private_value ( &yyval, &yyvsp[0], sym_k_compound_string_value, &yyvsp[0], 0); } break; case 375: #line 1148 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[-1], sym_k_string_table_value, &yyvsp[-3], 0); } break; case 376: #line 1150 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[-1], sym_k_asciz_table_value, &yyvsp[-3], 0); } break; case 377: #line 1152 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[-1], sym_k_integer_table_value, &yyvsp[-3], 0); } break; case 378: #line 1154 "Uil.y" { sar_make_private_value( &yyval, &yyvsp[-1], sym_k_trans_table_value, &yyvsp[-3], 0); } break; case 379: #line 1156 "Uil.y" { yyval = yyvsp[-1]; } break; case 380: #line 1157 "Uil.y" { yyval = yyvsp[-1]; } break; case 381: #line 1158 "Uil.y" { yyval = yyvsp[-1]; } break; case 382: #line 1159 "Uil.y" { yyval = yyvsp[-1]; } break; case 383: #line 1160 "Uil.y" { yyval = yyvsp[-3]; sar_unary_op( &yyval, &yyvsp[-1] ); } break; case 384: #line 1161 "Uil.y" { yyval = yyvsp[-3]; sar_unary_op( &yyval, &yyvsp[-1] ); } break; case 385: #line 1163 "Uil.y" { sar_make_private_value(&yyval, &yyvsp[-1], sym_k_xbitmapfile_value, &yyvsp[-3], 0); } break; case 386: #line 1166 "Uil.y" { sar_make_private_value(&yyval, &yyvsp[-1], sym_k_keysym_value, &yyvsp[-3], 0); } break; case 387: #line 1169 "Uil.y" { yyval = yyvsp[-3]; sar_unary_op( &yyval, &yyvsp[-1] ); } break; case 388: #line 1171 "Uil.y" { sar_make_private_value( & yyval, & yyvsp[-1], sym_k_rgb_value, &yyvsp[-3], 0); } break; case 389: #line 1173 "Uil.y" { yyval = yyvsp[-1]; } break; case 390: #line 1174 "Uil.y" { sar_make_private_value(&yyval, &yyvsp[0], sym_k_localized_string_value, &yyvsp[0], 0); } break; case 391: #line 1180 "Uil.y" { yyval = gz_yynullval; } break; case 392: #line 1182 "Uil.y" { yyval = yyvsp[0]; } break; case 393: #line 1187 "Uil.y" { sar_append_table_value (&yyvsp[0], &gz_yynullval, sym_k_trans_table_value, &yyvsp[0]); yyval = yyvsp[0]; } break; case 394: #line 1189 "Uil.y" { sar_append_table_value (&yyvsp[0], &yyvsp[-2], sym_k_trans_table_value, &yyvsp[-1]); yyval = yyvsp[0]; } break; case 395: #line 1194 "Uil.y" { yyval = gz_yynullval; } break; case 396: #line 1196 "Uil.y" { yyval = yyvsp[0]; } break; case 397: #line 1201 "Uil.y" { sar_append_table_value (&yyvsp[0], &gz_yynullval, sym_k_asciz_table_value, &yyvsp[0]); yyval = yyvsp[0]; } break; case 398: #line 1203 "Uil.y" { sar_append_table_value (&yyvsp[0], &yyvsp[-2], sym_k_asciz_table_value, &yyvsp[-1]); yyval = yyvsp[0]; } break; case 399: #line 1208 "Uil.y" { yyval = gz_yynullval; } break; case 400: #line 1210 "Uil.y" { yyval = yyvsp[0]; } break; case 401: #line 1215 "Uil.y" { sar_append_table_value (&yyvsp[0], &gz_yynullval, sym_k_integer_table_value, &yyvsp[0]); yyval = yyvsp[0]; } break; case 402: #line 1217 "Uil.y" { sar_append_table_value (&yyvsp[0], &yyvsp[-2], sym_k_integer_table_value, &yyvsp[-1]); yyval = yyvsp[0]; } break; case 403: #line 1223 "Uil.y" {sar_append_table_value(&yyvsp[-4], & gz_yynullval, sym_k_integer_table_value, & yyvsp[-4]); sar_append_table_value(& yyvsp[-2], & yyvsp[-4], sym_k_integer_table_value, & yyvsp[-3]); sar_append_table_value(& yyvsp[0], & yyvsp[-2], sym_k_integer_table_value, & yyvsp[-1]); yyval = yyvsp[0];} break; case 404: #line 1232 "Uil.y" { yyval = gz_yynullval; } break; case 405: #line 1234 "Uil.y" { yyval = yyvsp[0]; } break; case 406: #line 1239 "Uil.y" { sar_append_table_value (&yyvsp[0], &gz_yynullval, sym_k_string_table_value, &yyvsp[0]); yyval = yyvsp[0]; } break; case 407: #line 1241 "Uil.y" { sar_append_table_value (&yyvsp[0], &yyvsp[-2], sym_k_string_table_value, &yyvsp[-1]); yyval = yyvsp[0]; } break; case 408: #line 1245 "Uil.y" { yyval = gz_yynullval; yyval.b_type = sym_k_any_value; } break; case 409: #line 1246 "Uil.y" { yyval = gz_yynullval; yyval.b_type = yyvsp[0].b_type; } break; case 410: #line 1247 "Uil.y" { yyval = gz_yynullval; yyval.b_type = sym_k_any_value; } break; case 411: #line 1251 "Uil.y" { sar_make_comp_str( &yyval, &yyvsp[0], &gz_yynullval, &yyvsp[-2] ); } break; case 412: #line 1252 "Uil.y" { sar_make_comp_str( &yyval, &yyvsp[-1], &yyvsp[0], &yyvsp[-3] ); } break; case 413: #line 1256 "Uil.y" { sar_make_comp_str_comp(&yyval, &yyvsp[0], &gz_yynullval, &yyvsp[-2] ); } break; case 414: #line 1257 "Uil.y" { sar_make_comp_str_comp( &yyval, &yyvsp[-2], &yyvsp[0], &yyvsp[-4] ); } break; case 415: #line 1258 "Uil.y" { sar_make_comp_str_comp( &yyval, &yyvsp[-2], &yyvsp[0], &yyvsp[-4] ); } break; case 416: #line 1259 "Uil.y" { sar_make_comp_str_comp( &yyval, &yyvsp[-2], &yyvsp[0], &yyvsp[-4] ); } break; case 417: #line 1260 "Uil.y" { sar_make_comp_str_comp( &yyval, &yyvsp[-2], &yyvsp[0], &yyvsp[-4] ); } break; case 418: #line 1264 "Uil.y" { sar_chk_comp_str_attr( &yyval, &yyvsp[0], &gz_yynullval ); } break; case 419: #line 1265 "Uil.y" { sar_chk_comp_str_attr( &yyval, &yyvsp[0], &yyvsp[-2] ); } break; case 420: #line 1269 "Uil.y" { yyval.b_type = yyvsp[-2].b_type; yyval.b_tag = yyvsp[0].b_tag; yyval.value.az_keyword_entry = yyvsp[0].value.az_keyword_entry; yyval.value.az_symbol_entry = yyvsp[0].value.az_symbol_entry; } break; case 421: #line 1273 "Uil.y" { yyval.b_type = yyvsp[-2].b_type; yyval.value.az_symbol_entry = yyvsp[0].value.az_symbol_entry; } break; case 422: #line 1275 "Uil.y" { yyval.b_type = yyvsp[-2].b_type; yyval.value.az_symbol_entry = yyvsp[0].value.az_symbol_entry; } break; case 423: #line 1280 "Uil.y" { sar_make_wchar_str( &yyval, &yyvsp[0], &gz_yynullval, &yyvsp[-2] ); } break; case 424: #line 1285 "Uil.y" { sar_make_font( &yyval, &yyvsp[0], &yyvsp[-4], &yyvsp[-6] ); } break; case 425: #line 1286 "Uil.y" { sar_make_font( &yyval, &gz_yynullval, &yyvsp[0], &yyvsp[-2] ); } break; case 426: #line 1291 "Uil.y" { sar_make_fontset( &yyval, &yyvsp[0], &yyvsp[-4], &yyvsp[-6] ); } break; case 427: #line 1292 "Uil.y" { sar_make_fontset( &yyval, &gz_yynullval, &yyvsp[0], &yyvsp[-2] ); } break; case 428: #line 1296 "Uil.y" { sar_make_font_table( &yyval, &yyvsp[0], &gz_yynullval, &yyvsp[-2] ); } break; case 429: #line 1297 "Uil.y" { sar_make_font_table( &yyval, &yyvsp[0], &yyvsp[-2], &yyvsp[-4] ); } break; case 430: #line 1304 "Uil.y" { sar_make_font_item( &yyval, &yyvsp[-2], &yyvsp[0] ); } break; case 431: #line 1305 "Uil.y" { sar_make_font_item( &yyval, &gz_yynullval, &yyvsp[0] ); } break; case 432: #line 1309 "Uil.y" { /* Don't use TRUE because it is a token not a Boolean! */ yyval = yyvsp[0]; Uil_lex_l_charset_specified = 1;} break; case 434: #line 1317 "Uil.y" { sar_charset_verify (&yyvsp[0]); yyval = yyvsp[0]; } break; case 435: #line 1318 "Uil.y" { yyval = yyvsp[-1]; } break; case 436: #line 1319 "Uil.y" { sar_make_fallback_charset(&yyvsp[0]); yyval = yyvsp[0]; } break; case 437: #line 1325 "Uil.y" { sar_make_private_value(&yyval, &yyvsp[0], sym_k_char_8_value, &yyvsp[0], 0); sar_make_charset (&yyval, &yyval, &gz_yynullval, &yyvsp[0]); } break; case 438: #line 1328 "Uil.y" { sar_make_private_value(&yyval, &yyvsp[-1], sym_k_char_8_value, &yyvsp[-1], 0); sar_make_charset (&yyval, &yyval, &yyvsp[0], &yyvsp[-1]); } break; case 439: #line 1334 "Uil.y" { sar_chk_charset_attr( &yyval, &yyvsp[0], &gz_yynullval ); } break; case 440: #line 1335 "Uil.y" { sar_chk_charset_attr( &yyval, &yyvsp[0], &yyvsp[-2] ); } break; case 441: #line 1339 "Uil.y" { yyval.b_type = yyvsp[-2].b_type; if (yyvsp[0].b_type != sym_k_bool_value) sar_value_type_error( &yyvsp[0], sym_k_bool_value ); yyval.value.az_symbol_entry = yyvsp[0].value.az_symbol_entry; } break; case 442: #line 1343 "Uil.y" { yyval.b_type = yyvsp[-2].b_type; if (yyvsp[0].b_type != sym_k_bool_value) sar_value_type_error( &yyvsp[0], sym_k_bool_value ); yyval.value.az_symbol_entry = yyvsp[0].value.az_symbol_entry; } break; case 443: #line 1350 "Uil.y" { sar_append_color_item( &yyval, &yyvsp[0], &gz_yynullval ); } break; case 444: #line 1351 "Uil.y" { sar_append_color_item( &yyval, &yyvsp[0], &yyvsp[-2] ); } break; case 445: #line 1355 "Uil.y" { sar_make_color_item( &yyval, &yyvsp[-3], &yyvsp[0] ); } break; case 446: #line 1356 "Uil.y" { sar_make_color_item( &yyval, &yyvsp[-3], &yyvsp[0] ); } break; case 447: #line 1357 "Uil.y" { sar_make_color_item( &yyval, &yyvsp[-2], &yyvsp[0] ); } break; case 448: #line 1361 "Uil.y" { sar_make_color( &yyval, &yyvsp[0], &gz_yynullval, &yyvsp[-2] ); } break; case 449: #line 1362 "Uil.y" { sar_make_color( &yyval, &yyvsp[-2], &yyvsp[0], &yyvsp[-4] ); } break; case 452: #line 1371 "Uil.y" { sar_make_icon( &yyval, &yyvsp[0], &gz_yynullval, &yyvsp[-2]); } break; case 453: #line 1373 "Uil.y" { sar_make_icon( &yyval, &yyvsp[0], &yyvsp[-2], &yyvsp[-6] ); } break; case 454: #line 1378 "Uil.y" { sar_append_table_value (&yyvsp[0], &gz_yynullval, sym_k_icon_value, &yyvsp[0]); yyval = yyvsp[0]; } break; case 455: #line 1380 "Uil.y" { sar_append_table_value (&yyvsp[0], &yyvsp[-2], sym_k_icon_value, &yyvsp[-1]); yyval = yyvsp[0]; } break; case 456: #line 1385 "Uil.y" { yyval = yyvsp[0]; } break; case 457: #line 1387 "Uil.y" { yyval = yyvsp[0]; } break; case 458: #line 1389 "Uil.y" { yyval = yyvsp[0]; } break; case 459: #line 1391 "Uil.y" { yyval = yyvsp[0]; } break; case 460: #line 1393 "Uil.y" { yyval = yyvsp[0]; } break; case 461: #line 1395 "Uil.y" { yyval = yyvsp[0]; } break; case 462: #line 1397 "Uil.y" { yyval = yyvsp[0]; } break; case 463: #line 1399 "Uil.y" { yyval = yyvsp[0]; } break; case 464: #line 1401 "Uil.y" { yyval = yyvsp[0]; } break; case 465: #line 1403 "Uil.y" { yyval = yyvsp[0]; } break; case 466: #line 1405 "Uil.y" { yyval = yyvsp[0]; } break; case 467: #line 1407 "Uil.y" { yyval = yyvsp[0]; } break; case 468: #line 1409 "Uil.y" { yyval = yyvsp[0]; } break; case 469: #line 1411 "Uil.y" { yyval = yyvsp[0]; } break; case 470: #line 1413 "Uil.y" { yyval = yyvsp[0]; } break; case 471: #line 1415 "Uil.y" { yyval = yyvsp[0]; } break; case 472: #line 1417 "Uil.y" { yyval = yyvsp[0]; } break; case 473: #line 1419 "Uil.y" { yyval = yyvsp[0]; } break; #line 3704 "y.tab.c" } yyssp -= yym; yystate = *yyssp; yyvsp -= yym; yym = yylhs[yyn]; if (yystate == 0 && yym == 0) { #if YYDEBUG if (yydebug) printf("%sdebug: after reduction, shifting from state 0 to\ state %d\n", YYPREFIX, YYFINAL); #endif yystate = YYFINAL; *++yyssp = YYFINAL; *++yyvsp = yyval; if (yychar < 0) { if ((yychar = yylex()) < 0) yychar = 0; #if YYDEBUG if (yydebug) { yys = 0; if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; if (!yys) yys = "illegal-symbol"; printf("%sdebug: state %d, reading %d (%s)\n", YYPREFIX, YYFINAL, yychar, yys); } #endif } if (yychar == 0) goto yyaccept; goto yyloop; } if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 && yyn <= YYTABLESIZE && yycheck[yyn] == yystate) yystate = yytable[yyn]; else yystate = yydgoto[yym]; #if YYDEBUG if (yydebug) printf("%sdebug: after reduction, shifting from state %d \ to state %d\n", YYPREFIX, *yyssp, yystate); #endif if (yyssp >= yysslim && yygrowstack()) { goto yyoverflow; } *++yyssp = yystate; *++yyvsp = yyval; goto yyloop; yyoverflow: yyerror("yacc stack overflow"); yyabort: return (1); yyaccept: return (0); }