diff options
Diffstat (limited to 'src/glsl/glsl_parser.cpp')
-rw-r--r-- | src/glsl/glsl_parser.cpp | 3313 |
1 files changed, 1663 insertions, 1650 deletions
diff --git a/src/glsl/glsl_parser.cpp b/src/glsl/glsl_parser.cpp index 188d128526d..e36bb03c434 100644 --- a/src/glsl/glsl_parser.cpp +++ b/src/glsl/glsl_parser.cpp @@ -1,9 +1,10 @@ -/* A Bison parser, made by GNU Bison 2.4.3. */ + +/* A Bison parser, made by GNU Bison 2.4.1. */ /* Skeleton implementation for Bison's Yacc-like parsers in C - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006, - 2009, 2010 Free Software Foundation, Inc. + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -45,7 +46,7 @@ #define YYBISON 1 /* Bison version. */ -#define YYBISON_VERSION "2.4.3" +#define YYBISON_VERSION "2.4.1" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" @@ -113,7 +114,7 @@ /* Line 189 of yacc.c */ -#line 117 "glsl_parser.cpp" +#line 118 "glsl_parser.cpp" /* Enabling traces. */ #ifndef YYDEBUG @@ -249,82 +250,85 @@ VERSION = 364, EXTENSION = 365, LINE = 366, - PRAGMA = 367, - COLON = 368, - EOL = 369, - INTERFACE = 370, - OUTPUT = 371, - LAYOUT_TOK = 372, - ASM = 373, - CLASS = 374, - UNION = 375, - ENUM = 376, - TYPEDEF = 377, - TEMPLATE = 378, - THIS = 379, - PACKED_TOK = 380, - GOTO = 381, - INLINE_TOK = 382, - NOINLINE = 383, - VOLATILE = 384, - PUBLIC_TOK = 385, - STATIC = 386, - EXTERN = 387, - EXTERNAL = 388, - LONG_TOK = 389, - SHORT_TOK = 390, - DOUBLE_TOK = 391, - HALF = 392, - FIXED_TOK = 393, - UNSIGNED = 394, - INPUT_TOK = 395, - OUPTUT = 396, - HVEC2 = 397, - HVEC3 = 398, - HVEC4 = 399, - DVEC2 = 400, - DVEC3 = 401, - DVEC4 = 402, - FVEC2 = 403, - FVEC3 = 404, - FVEC4 = 405, - SAMPLER2DRECT = 406, - SAMPLER3DRECT = 407, - SAMPLER2DRECTSHADOW = 408, - SIZEOF = 409, - CAST = 410, - NAMESPACE = 411, - USING = 412, - ERROR_TOK = 413, - COMMON = 414, - PARTITION = 415, - ACTIVE = 416, - SAMPLERBUFFER = 417, - FILTER = 418, - IMAGE1D = 419, - IMAGE2D = 420, - IMAGE3D = 421, - IMAGECUBE = 422, - IMAGE1DARRAY = 423, - IMAGE2DARRAY = 424, - IIMAGE1D = 425, - IIMAGE2D = 426, - IIMAGE3D = 427, - IIMAGECUBE = 428, - IIMAGE1DARRAY = 429, - IIMAGE2DARRAY = 430, - UIMAGE1D = 431, - UIMAGE2D = 432, - UIMAGE3D = 433, - UIMAGECUBE = 434, - UIMAGE1DARRAY = 435, - UIMAGE2DARRAY = 436, - IMAGE1DSHADOW = 437, - IMAGE2DSHADOW = 438, - IMAGEBUFFER = 439, - IIMAGEBUFFER = 440, - UIMAGEBUFFER = 441, - ROW_MAJOR = 442 + COLON = 367, + EOL = 368, + INTERFACE = 369, + OUTPUT = 370, + PRAGMA_DEBUG_ON = 371, + PRAGMA_DEBUG_OFF = 372, + PRAGMA_OPTIMIZE_ON = 373, + PRAGMA_OPTIMIZE_OFF = 374, + LAYOUT_TOK = 375, + ASM = 376, + CLASS = 377, + UNION = 378, + ENUM = 379, + TYPEDEF = 380, + TEMPLATE = 381, + THIS = 382, + PACKED_TOK = 383, + GOTO = 384, + INLINE_TOK = 385, + NOINLINE = 386, + VOLATILE = 387, + PUBLIC_TOK = 388, + STATIC = 389, + EXTERN = 390, + EXTERNAL = 391, + LONG_TOK = 392, + SHORT_TOK = 393, + DOUBLE_TOK = 394, + HALF = 395, + FIXED_TOK = 396, + UNSIGNED = 397, + INPUT_TOK = 398, + OUPTUT = 399, + HVEC2 = 400, + HVEC3 = 401, + HVEC4 = 402, + DVEC2 = 403, + DVEC3 = 404, + DVEC4 = 405, + FVEC2 = 406, + FVEC3 = 407, + FVEC4 = 408, + SAMPLER2DRECT = 409, + SAMPLER3DRECT = 410, + SAMPLER2DRECTSHADOW = 411, + SIZEOF = 412, + CAST = 413, + NAMESPACE = 414, + USING = 415, + ERROR_TOK = 416, + COMMON = 417, + PARTITION = 418, + ACTIVE = 419, + SAMPLERBUFFER = 420, + FILTER = 421, + IMAGE1D = 422, + IMAGE2D = 423, + IMAGE3D = 424, + IMAGECUBE = 425, + IMAGE1DARRAY = 426, + IMAGE2DARRAY = 427, + IIMAGE1D = 428, + IIMAGE2D = 429, + IIMAGE3D = 430, + IIMAGECUBE = 431, + IIMAGE1DARRAY = 432, + IIMAGE2DARRAY = 433, + UIMAGE1D = 434, + UIMAGE2D = 435, + UIMAGE3D = 436, + UIMAGECUBE = 437, + UIMAGE1DARRAY = 438, + UIMAGE2DARRAY = 439, + IMAGE1DSHADOW = 440, + IMAGE2DSHADOW = 441, + IMAGEBUFFER = 442, + IIMAGEBUFFER = 443, + UIMAGEBUFFER = 444, + ROW_MAJOR = 445 }; #endif @@ -366,7 +370,7 @@ typedef union YYSTYPE /* Line 214 of yacc.c */ -#line 370 "glsl_parser.cpp" +#line 374 "glsl_parser.cpp" } YYSTYPE; # define YYSTYPE_IS_TRIVIAL 1 # define yystype YYSTYPE /* obsolescent; will be withdrawn */ @@ -391,7 +395,7 @@ typedef struct YYLTYPE /* Line 264 of yacc.c */ -#line 395 "glsl_parser.cpp" +#line 399 "glsl_parser.cpp" #ifdef short # undef short @@ -441,7 +445,7 @@ typedef short int yytype_int16; #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) #ifndef YY_ -# if defined YYENABLE_NLS && YYENABLE_NLS +# if YYENABLE_NLS # if ENABLE_NLS # include <libintl.h> /* INFRINGES ON USER NAME SPACE */ # define YY_(msgid) dgettext ("bison-runtime", msgid) @@ -608,20 +612,20 @@ union yyalloc /* YYFINAL -- State number of the termination state. */ #define YYFINAL 5 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 4096 +#define YYLAST 4115 /* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 212 +#define YYNTOKENS 215 /* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 89 +#define YYNNTS 90 /* YYNRULES -- Number of rules. */ -#define YYNRULES 273 +#define YYNRULES 278 /* YYNRULES -- Number of states. */ -#define YYNSTATES 410 +#define YYNSTATES 419 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 -#define YYMAXUTOK 442 +#define YYMAXUTOK 445 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) @@ -632,16 +636,16 @@ static const yytype_uint8 yytranslate[] = 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 196, 2, 2, 2, 200, 203, 2, - 188, 189, 198, 194, 193, 195, 192, 199, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 207, 209, - 201, 208, 202, 206, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 199, 2, 2, 2, 203, 206, 2, + 191, 192, 201, 197, 196, 198, 195, 202, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, 210, 212, + 204, 211, 205, 209, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 190, 2, 191, 204, 2, 2, 2, 2, 2, + 2, 193, 2, 194, 207, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 210, 205, 211, 197, 2, 2, 2, + 2, 2, 2, 213, 208, 214, 200, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -673,7 +677,7 @@ static const yytype_uint8 yytranslate[] = 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, - 185, 186, 187 + 185, 186, 187, 188, 189, 190 }; #if YYDEBUG @@ -681,151 +685,153 @@ static const yytype_uint8 yytranslate[] = YYRHS. */ static const yytype_uint16 yyprhs[] = { - 0, 0, 3, 4, 9, 10, 14, 15, 18, 24, - 26, 29, 31, 33, 35, 37, 39, 41, 45, 47, - 52, 54, 58, 61, 64, 66, 68, 70, 74, 77, - 80, 83, 85, 88, 92, 95, 97, 99, 101, 103, - 106, 109, 112, 114, 116, 118, 120, 122, 126, 130, - 134, 136, 140, 144, 146, 150, 154, 156, 160, 164, - 168, 172, 174, 178, 182, 184, 188, 190, 194, 196, - 200, 202, 206, 208, 212, 214, 218, 220, 226, 228, - 232, 234, 236, 238, 240, 242, 244, 246, 248, 250, - 252, 254, 256, 260, 262, 265, 268, 273, 276, 278, - 280, 283, 287, 291, 294, 300, 304, 307, 311, 314, - 315, 317, 319, 321, 323, 325, 329, 335, 342, 350, - 359, 365, 367, 370, 375, 381, 388, 396, 401, 404, - 406, 409, 410, 412, 417, 419, 423, 425, 427, 429, - 431, 433, 435, 438, 441, 443, 445, 448, 451, 454, - 456, 459, 462, 464, 466, 469, 471, 475, 480, 482, - 484, 486, 488, 490, 492, 494, 496, 498, 500, 502, - 504, 506, 508, 510, 512, 514, 516, 518, 520, 522, - 524, 526, 528, 530, 532, 534, 536, 538, 540, 542, - 544, 546, 548, 550, 552, 554, 556, 558, 560, 562, - 564, 566, 568, 570, 572, 574, 576, 578, 580, 582, - 584, 586, 588, 590, 592, 594, 600, 605, 607, 610, - 614, 616, 620, 622, 627, 629, 631, 633, 635, 637, - 639, 641, 643, 645, 647, 649, 651, 653, 655, 658, - 662, 664, 666, 669, 673, 675, 678, 680, 683, 691, - 697, 703, 711, 713, 718, 724, 728, 731, 737, 745, - 752, 754, 756, 758, 759, 762, 766, 769, 772, 775, - 779, 782, 784, 786 + 0, 0, 3, 4, 9, 10, 14, 17, 20, 23, + 26, 27, 30, 36, 38, 41, 43, 45, 47, 49, + 51, 53, 57, 59, 64, 66, 70, 73, 76, 78, + 80, 82, 86, 89, 92, 95, 97, 100, 104, 107, + 109, 111, 113, 115, 118, 121, 124, 126, 128, 130, + 132, 134, 138, 142, 146, 148, 152, 156, 158, 162, + 166, 168, 172, 176, 180, 184, 186, 190, 194, 196, + 200, 202, 206, 208, 212, 214, 218, 220, 224, 226, + 230, 232, 238, 240, 244, 246, 248, 250, 252, 254, + 256, 258, 260, 262, 264, 266, 268, 272, 274, 277, + 280, 285, 288, 290, 292, 295, 299, 303, 306, 312, + 316, 319, 323, 326, 327, 329, 331, 333, 335, 337, + 341, 347, 354, 362, 371, 377, 379, 382, 387, 393, + 400, 408, 413, 416, 418, 421, 422, 424, 429, 431, + 435, 437, 439, 441, 443, 445, 447, 450, 453, 455, + 457, 460, 463, 466, 468, 471, 474, 476, 478, 481, + 483, 487, 492, 494, 496, 498, 500, 502, 504, 506, + 508, 510, 512, 514, 516, 518, 520, 522, 524, 526, + 528, 530, 532, 534, 536, 538, 540, 542, 544, 546, + 548, 550, 552, 554, 556, 558, 560, 562, 564, 566, + 568, 570, 572, 574, 576, 578, 580, 582, 584, 586, + 588, 590, 592, 594, 596, 598, 600, 602, 604, 606, + 612, 617, 619, 622, 626, 628, 632, 634, 639, 641, + 643, 645, 647, 649, 651, 653, 655, 657, 659, 661, + 663, 665, 667, 670, 674, 676, 678, 681, 685, 687, + 690, 692, 695, 703, 709, 715, 723, 725, 730, 736, + 740, 743, 749, 757, 764, 766, 768, 770, 771, 774, + 778, 781, 784, 787, 791, 794, 796, 798, 800 }; /* YYRHS -- A `-1'-separated list of the rules' RHS. */ static const yytype_int16 yyrhs[] = { - 213, 0, -1, -1, 215, 216, 214, 218, -1, -1, - 109, 78, 114, -1, -1, 216, 217, -1, 110, 76, - 113, 76, 114, -1, 299, -1, 218, 299, -1, 76, - -1, 219, -1, 78, -1, 79, -1, 77, -1, 80, - -1, 188, 246, 189, -1, 220, -1, 221, 190, 222, - 191, -1, 223, -1, 221, 192, 76, -1, 221, 84, - -1, 221, 85, -1, 246, -1, 224, -1, 225, -1, - 221, 192, 225, -1, 227, 189, -1, 226, 189, -1, - 228, 74, -1, 228, -1, 228, 244, -1, 227, 193, - 244, -1, 229, 188, -1, 268, -1, 76, -1, 81, - -1, 221, -1, 84, 230, -1, 85, 230, -1, 231, - 230, -1, 194, -1, 195, -1, 196, -1, 197, -1, - 230, -1, 232, 198, 230, -1, 232, 199, 230, -1, - 232, 200, 230, -1, 232, -1, 233, 194, 232, -1, - 233, 195, 232, -1, 233, -1, 234, 82, 233, -1, - 234, 83, 233, -1, 234, -1, 235, 201, 234, -1, - 235, 202, 234, -1, 235, 86, 234, -1, 235, 87, - 234, -1, 235, -1, 236, 88, 235, -1, 236, 89, - 235, -1, 236, -1, 237, 203, 236, -1, 237, -1, - 238, 204, 237, -1, 238, -1, 239, 205, 238, -1, - 239, -1, 240, 90, 239, -1, 240, -1, 241, 92, - 240, -1, 241, -1, 242, 91, 241, -1, 242, -1, - 242, 206, 246, 207, 244, -1, 243, -1, 230, 245, - 244, -1, 208, -1, 93, -1, 94, -1, 96, -1, - 95, -1, 102, -1, 97, -1, 98, -1, 99, -1, - 100, -1, 101, -1, 244, -1, 246, 193, 244, -1, - 243, -1, 249, 209, -1, 257, 209, -1, 108, 272, - 269, 209, -1, 250, 189, -1, 252, -1, 251, -1, - 252, 254, -1, 251, 193, 254, -1, 259, 76, 188, - -1, 268, 76, -1, 268, 76, 190, 247, 191, -1, - 265, 255, 253, -1, 255, 253, -1, 265, 255, 256, - -1, 255, 256, -1, -1, 33, -1, 34, -1, 35, - -1, 268, -1, 258, -1, 257, 193, 76, -1, 257, - 193, 76, 190, 191, -1, 257, 193, 76, 190, 247, - 191, -1, 257, 193, 76, 190, 191, 208, 278, -1, - 257, 193, 76, 190, 247, 191, 208, 278, -1, 257, - 193, 76, 208, 278, -1, 259, -1, 259, 76, -1, - 259, 76, 190, 191, -1, 259, 76, 190, 247, 191, - -1, 259, 76, 190, 191, 208, 278, -1, 259, 76, - 190, 247, 191, 208, 278, -1, 259, 76, 208, 278, - -1, 103, 76, -1, 268, -1, 266, 268, -1, -1, - 261, -1, 117, 188, 262, 189, -1, 263, -1, 262, - 193, 263, -1, 76, -1, 40, -1, 39, -1, 38, - -1, 4, -1, 267, -1, 264, 266, -1, 103, 266, - -1, 4, -1, 3, -1, 260, 37, -1, 32, 37, - -1, 260, 33, -1, 34, -1, 32, 33, -1, 32, - 34, -1, 36, -1, 269, -1, 272, 269, -1, 270, - -1, 270, 190, 191, -1, 270, 190, 247, 191, -1, - 271, -1, 273, -1, 76, -1, 74, -1, 6, -1, - 7, -1, 8, -1, 5, -1, 29, -1, 30, -1, - 31, -1, 20, -1, 21, -1, 22, -1, 23, -1, - 24, -1, 25, -1, 26, -1, 27, -1, 28, -1, - 41, -1, 42, -1, 43, -1, 44, -1, 45, -1, - 46, -1, 47, -1, 48, -1, 49, -1, 50, -1, - 51, -1, 151, -1, 52, -1, 53, -1, 54, -1, - 55, -1, 153, -1, 56, -1, 57, -1, 58, -1, - 59, -1, 60, -1, 61, -1, 62, -1, 63, -1, - 64, -1, 65, -1, 66, -1, 67, -1, 68, -1, - 69, -1, 70, -1, 71, -1, 72, -1, 106, -1, - 105, -1, 104, -1, 73, 76, 210, 274, 211, -1, - 73, 210, 274, 211, -1, 275, -1, 274, 275, -1, - 268, 276, 209, -1, 277, -1, 276, 193, 277, -1, - 76, -1, 76, 190, 247, 191, -1, 244, -1, 248, - -1, 281, -1, 282, -1, 284, -1, 283, -1, 290, - -1, 279, -1, 288, -1, 289, -1, 292, -1, 293, - -1, 294, -1, 298, -1, 210, 211, -1, 210, 287, - 211, -1, 286, -1, 283, -1, 210, 211, -1, 210, - 287, 211, -1, 280, -1, 287, 280, -1, 209, -1, - 246, 209, -1, 14, 188, 246, 189, 281, 12, 281, - -1, 14, 188, 246, 189, 281, -1, 14, 188, 246, - 189, 282, -1, 14, 188, 246, 189, 281, 12, 282, - -1, 246, -1, 259, 76, 208, 278, -1, 17, 188, - 246, 189, 284, -1, 18, 246, 207, -1, 19, 207, - -1, 75, 188, 291, 189, 285, -1, 11, 280, 75, - 188, 246, 189, 209, -1, 13, 188, 295, 297, 189, - 285, -1, 288, -1, 279, -1, 291, -1, -1, 296, - 209, -1, 296, 209, 246, -1, 10, 209, -1, 9, - 209, -1, 16, 209, -1, 16, 246, 209, -1, 15, - 209, -1, 300, -1, 248, -1, 249, 286, -1 + 216, 0, -1, -1, 218, 220, 217, 222, -1, -1, + 109, 78, 113, -1, 116, 113, -1, 117, 113, -1, + 118, 113, -1, 119, 113, -1, -1, 220, 221, -1, + 110, 76, 112, 76, 113, -1, 303, -1, 222, 303, + -1, 76, -1, 223, -1, 78, -1, 79, -1, 77, + -1, 80, -1, 191, 250, 192, -1, 224, -1, 225, + 193, 226, 194, -1, 227, -1, 225, 195, 76, -1, + 225, 84, -1, 225, 85, -1, 250, -1, 228, -1, + 229, -1, 225, 195, 229, -1, 231, 192, -1, 230, + 192, -1, 232, 74, -1, 232, -1, 232, 248, -1, + 231, 196, 248, -1, 233, 191, -1, 272, -1, 76, + -1, 81, -1, 225, -1, 84, 234, -1, 85, 234, + -1, 235, 234, -1, 197, -1, 198, -1, 199, -1, + 200, -1, 234, -1, 236, 201, 234, -1, 236, 202, + 234, -1, 236, 203, 234, -1, 236, -1, 237, 197, + 236, -1, 237, 198, 236, -1, 237, -1, 238, 82, + 237, -1, 238, 83, 237, -1, 238, -1, 239, 204, + 238, -1, 239, 205, 238, -1, 239, 86, 238, -1, + 239, 87, 238, -1, 239, -1, 240, 88, 239, -1, + 240, 89, 239, -1, 240, -1, 241, 206, 240, -1, + 241, -1, 242, 207, 241, -1, 242, -1, 243, 208, + 242, -1, 243, -1, 244, 90, 243, -1, 244, -1, + 245, 92, 244, -1, 245, -1, 246, 91, 245, -1, + 246, -1, 246, 209, 250, 210, 248, -1, 247, -1, + 234, 249, 248, -1, 211, -1, 93, -1, 94, -1, + 96, -1, 95, -1, 102, -1, 97, -1, 98, -1, + 99, -1, 100, -1, 101, -1, 248, -1, 250, 196, + 248, -1, 247, -1, 253, 212, -1, 261, 212, -1, + 108, 276, 273, 212, -1, 254, 192, -1, 256, -1, + 255, -1, 256, 258, -1, 255, 196, 258, -1, 263, + 76, 191, -1, 272, 76, -1, 272, 76, 193, 251, + 194, -1, 269, 259, 257, -1, 259, 257, -1, 269, + 259, 260, -1, 259, 260, -1, -1, 33, -1, 34, + -1, 35, -1, 272, -1, 262, -1, 261, 196, 76, + -1, 261, 196, 76, 193, 194, -1, 261, 196, 76, + 193, 251, 194, -1, 261, 196, 76, 193, 194, 211, + 282, -1, 261, 196, 76, 193, 251, 194, 211, 282, + -1, 261, 196, 76, 211, 282, -1, 263, -1, 263, + 76, -1, 263, 76, 193, 194, -1, 263, 76, 193, + 251, 194, -1, 263, 76, 193, 194, 211, 282, -1, + 263, 76, 193, 251, 194, 211, 282, -1, 263, 76, + 211, 282, -1, 103, 76, -1, 272, -1, 270, 272, + -1, -1, 265, -1, 120, 191, 266, 192, -1, 267, + -1, 266, 196, 267, -1, 76, -1, 40, -1, 39, + -1, 38, -1, 4, -1, 271, -1, 268, 270, -1, + 103, 270, -1, 4, -1, 3, -1, 264, 37, -1, + 32, 37, -1, 264, 33, -1, 34, -1, 32, 33, + -1, 32, 34, -1, 36, -1, 273, -1, 276, 273, + -1, 274, -1, 274, 193, 194, -1, 274, 193, 251, + 194, -1, 275, -1, 277, -1, 76, -1, 74, -1, + 6, -1, 7, -1, 8, -1, 5, -1, 29, -1, + 30, -1, 31, -1, 20, -1, 21, -1, 22, -1, + 23, -1, 24, -1, 25, -1, 26, -1, 27, -1, + 28, -1, 41, -1, 42, -1, 43, -1, 44, -1, + 45, -1, 46, -1, 47, -1, 48, -1, 49, -1, + 50, -1, 51, -1, 154, -1, 52, -1, 53, -1, + 54, -1, 55, -1, 156, -1, 56, -1, 57, -1, + 58, -1, 59, -1, 60, -1, 61, -1, 62, -1, + 63, -1, 64, -1, 65, -1, 66, -1, 67, -1, + 68, -1, 69, -1, 70, -1, 71, -1, 72, -1, + 106, -1, 105, -1, 104, -1, 73, 76, 213, 278, + 214, -1, 73, 213, 278, 214, -1, 279, -1, 278, + 279, -1, 272, 280, 212, -1, 281, -1, 280, 196, + 281, -1, 76, -1, 76, 193, 251, 194, -1, 248, + -1, 252, -1, 285, -1, 286, -1, 288, -1, 287, + -1, 294, -1, 283, -1, 292, -1, 293, -1, 296, + -1, 297, -1, 298, -1, 302, -1, 213, 214, -1, + 213, 291, 214, -1, 290, -1, 287, -1, 213, 214, + -1, 213, 291, 214, -1, 284, -1, 291, 284, -1, + 212, -1, 250, 212, -1, 14, 191, 250, 192, 285, + 12, 285, -1, 14, 191, 250, 192, 285, -1, 14, + 191, 250, 192, 286, -1, 14, 191, 250, 192, 285, + 12, 286, -1, 250, -1, 263, 76, 211, 282, -1, + 17, 191, 250, 192, 288, -1, 18, 250, 210, -1, + 19, 210, -1, 75, 191, 295, 192, 289, -1, 11, + 284, 75, 191, 250, 192, 212, -1, 13, 191, 299, + 301, 192, 289, -1, 292, -1, 283, -1, 295, -1, + -1, 300, 212, -1, 300, 212, 250, -1, 10, 212, + -1, 9, 212, -1, 16, 212, -1, 16, 250, 212, + -1, 15, 212, -1, 304, -1, 252, -1, 219, -1, + 253, 290, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 209, 209, 208, 217, 221, 239, 241, 245, 254, - 262, 273, 277, 284, 291, 298, 305, 312, 319, 320, - 326, 330, 337, 343, 352, 356, 360, 361, 370, 371, - 375, 376, 380, 386, 398, 402, 408, 415, 426, 427, - 433, 439, 449, 450, 451, 452, 456, 457, 463, 469, - 478, 479, 485, 494, 495, 501, 510, 511, 517, 523, - 529, 538, 539, 545, 554, 555, 564, 565, 574, 575, - 584, 585, 594, 595, 604, 605, 614, 615, 624, 625, - 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, - 644, 648, 652, 668, 672, 676, 680, 694, 698, 699, - 703, 708, 716, 727, 737, 752, 759, 764, 775, 787, - 788, 789, 790, 794, 798, 799, 808, 817, 826, 835, - 844, 857, 868, 877, 886, 895, 904, 913, 922, 936, - 943, 954, 955, 959, 966, 967, 974, 1008, 1009, 1010, - 1014, 1018, 1019, 1023, 1031, 1032, 1033, 1034, 1035, 1036, - 1037, 1038, 1039, 1043, 1044, 1052, 1053, 1059, 1068, 1074, - 1080, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, - 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, - 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, - 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, - 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, - 1138, 1139, 1143, 1154, 1165, 1179, 1185, 1194, 1199, 1207, - 1222, 1227, 1235, 1241, 1250, 1254, 1260, 1261, 1265, 1266, - 1270, 1274, 1275, 1276, 1277, 1278, 1279, 1280, 1284, 1290, - 1299, 1300, 1304, 1310, 1319, 1329, 1341, 1347, 1356, 1365, - 1371, 1377, 1386, 1390, 1404, 1408, 1409, 1413, 1420, 1427, - 1437, 1438, 1442, 1444, 1450, 1455, 1464, 1470, 1476, 1482, - 1488, 1497, 1498, 1502 + 0, 211, 211, 210, 219, 223, 242, 243, 244, 245, + 248, 250, 254, 263, 271, 282, 286, 293, 300, 307, + 314, 321, 328, 329, 335, 339, 346, 352, 361, 365, + 369, 370, 379, 380, 384, 385, 389, 395, 407, 411, + 417, 424, 435, 436, 442, 448, 458, 459, 460, 461, + 465, 466, 472, 478, 487, 488, 494, 503, 504, 510, + 519, 520, 526, 532, 538, 547, 548, 554, 563, 564, + 573, 574, 583, 584, 593, 594, 603, 604, 613, 614, + 623, 624, 633, 634, 643, 644, 645, 646, 647, 648, + 649, 650, 651, 652, 653, 657, 661, 677, 681, 685, + 689, 703, 707, 708, 712, 717, 725, 736, 746, 761, + 768, 773, 784, 796, 797, 798, 799, 803, 807, 808, + 817, 826, 835, 844, 853, 866, 877, 886, 895, 904, + 913, 922, 931, 945, 952, 963, 964, 968, 975, 976, + 983, 1017, 1018, 1019, 1023, 1027, 1028, 1032, 1040, 1041, + 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1052, 1053, 1061, + 1062, 1068, 1077, 1083, 1089, 1098, 1099, 1100, 1101, 1102, + 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, + 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, + 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, + 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, + 1143, 1144, 1145, 1146, 1147, 1148, 1152, 1163, 1174, 1188, + 1194, 1203, 1208, 1216, 1231, 1236, 1244, 1250, 1259, 1263, + 1269, 1270, 1274, 1275, 1279, 1283, 1284, 1285, 1286, 1287, + 1288, 1289, 1293, 1299, 1308, 1309, 1313, 1319, 1328, 1338, + 1350, 1356, 1365, 1374, 1380, 1386, 1395, 1399, 1413, 1417, + 1418, 1422, 1429, 1436, 1446, 1447, 1451, 1453, 1459, 1464, + 1473, 1479, 1485, 1491, 1497, 1506, 1507, 1508, 1512 }; #endif @@ -854,23 +860,25 @@ static const char *const yytname[] = "DIV_ASSIGN", "ADD_ASSIGN", "MOD_ASSIGN", "LEFT_ASSIGN", "RIGHT_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN", "SUB_ASSIGN", "INVARIANT", "LOWP", "MEDIUMP", "HIGHP", "SUPERP", "PRECISION", "VERSION", - "EXTENSION", "LINE", "PRAGMA", "COLON", "EOL", "INTERFACE", "OUTPUT", - "LAYOUT_TOK", "ASM", "CLASS", "UNION", "ENUM", "TYPEDEF", "TEMPLATE", - "THIS", "PACKED_TOK", "GOTO", "INLINE_TOK", "NOINLINE", "VOLATILE", - "PUBLIC_TOK", "STATIC", "EXTERN", "EXTERNAL", "LONG_TOK", "SHORT_TOK", - "DOUBLE_TOK", "HALF", "FIXED_TOK", "UNSIGNED", "INPUT_TOK", "OUPTUT", - "HVEC2", "HVEC3", "HVEC4", "DVEC2", "DVEC3", "DVEC4", "FVEC2", "FVEC3", - "FVEC4", "SAMPLER2DRECT", "SAMPLER3DRECT", "SAMPLER2DRECTSHADOW", - "SIZEOF", "CAST", "NAMESPACE", "USING", "ERROR_TOK", "COMMON", - "PARTITION", "ACTIVE", "SAMPLERBUFFER", "FILTER", "IMAGE1D", "IMAGE2D", - "IMAGE3D", "IMAGECUBE", "IMAGE1DARRAY", "IMAGE2DARRAY", "IIMAGE1D", - "IIMAGE2D", "IIMAGE3D", "IIMAGECUBE", "IIMAGE1DARRAY", "IIMAGE2DARRAY", - "UIMAGE1D", "UIMAGE2D", "UIMAGE3D", "UIMAGECUBE", "UIMAGE1DARRAY", - "UIMAGE2DARRAY", "IMAGE1DSHADOW", "IMAGE2DSHADOW", "IMAGEBUFFER", - "IIMAGEBUFFER", "UIMAGEBUFFER", "ROW_MAJOR", "'('", "')'", "'['", "']'", - "'.'", "','", "'+'", "'-'", "'!'", "'~'", "'*'", "'/'", "'%'", "'<'", - "'>'", "'&'", "'^'", "'|'", "'?'", "':'", "'='", "';'", "'{'", "'}'", - "$accept", "translation_unit", "$@1", "version_statement", + "EXTENSION", "LINE", "COLON", "EOL", "INTERFACE", "OUTPUT", + "PRAGMA_DEBUG_ON", "PRAGMA_DEBUG_OFF", "PRAGMA_OPTIMIZE_ON", + "PRAGMA_OPTIMIZE_OFF", "LAYOUT_TOK", "ASM", "CLASS", "UNION", "ENUM", + "TYPEDEF", "TEMPLATE", "THIS", "PACKED_TOK", "GOTO", "INLINE_TOK", + "NOINLINE", "VOLATILE", "PUBLIC_TOK", "STATIC", "EXTERN", "EXTERNAL", + "LONG_TOK", "SHORT_TOK", "DOUBLE_TOK", "HALF", "FIXED_TOK", "UNSIGNED", + "INPUT_TOK", "OUPTUT", "HVEC2", "HVEC3", "HVEC4", "DVEC2", "DVEC3", + "DVEC4", "FVEC2", "FVEC3", "FVEC4", "SAMPLER2DRECT", "SAMPLER3DRECT", + "SAMPLER2DRECTSHADOW", "SIZEOF", "CAST", "NAMESPACE", "USING", + "ERROR_TOK", "COMMON", "PARTITION", "ACTIVE", "SAMPLERBUFFER", "FILTER", + "IMAGE1D", "IMAGE2D", "IMAGE3D", "IMAGECUBE", "IMAGE1DARRAY", + "IMAGE2DARRAY", "IIMAGE1D", "IIMAGE2D", "IIMAGE3D", "IIMAGECUBE", + "IIMAGE1DARRAY", "IIMAGE2DARRAY", "UIMAGE1D", "UIMAGE2D", "UIMAGE3D", + "UIMAGECUBE", "UIMAGE1DARRAY", "UIMAGE2DARRAY", "IMAGE1DSHADOW", + "IMAGE2DSHADOW", "IMAGEBUFFER", "IIMAGEBUFFER", "UIMAGEBUFFER", + "ROW_MAJOR", "'('", "')'", "'['", "']'", "'.'", "','", "'+'", "'-'", + "'!'", "'~'", "'*'", "'/'", "'%'", "'<'", "'>'", "'&'", "'^'", "'|'", + "'?'", "':'", "'='", "';'", "'{'", "'}'", "$accept", "translation_unit", + "$@1", "version_statement", "pragma_statement", "extension_statement_list", "extension_statement", "external_declaration_list", "variable_identifier", "primary_expression", "postfix_expression", "integer_expression", "function_call", @@ -930,77 +938,77 @@ static const yytype_uint16 yytoknum[] = 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, - 435, 436, 437, 438, 439, 440, 441, 442, 40, 41, - 91, 93, 46, 44, 43, 45, 33, 126, 42, 47, - 37, 60, 62, 38, 94, 124, 63, 58, 61, 59, - 123, 125 + 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, + 445, 40, 41, 91, 93, 46, 44, 43, 45, 33, + 126, 42, 47, 37, 60, 62, 38, 94, 124, 63, + 58, 61, 59, 123, 125 }; # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { - 0, 212, 214, 213, 215, 215, 216, 216, 217, 218, - 218, 219, 220, 220, 220, 220, 220, 220, 221, 221, - 221, 221, 221, 221, 222, 223, 224, 224, 225, 225, - 226, 226, 227, 227, 228, 229, 229, 229, 230, 230, - 230, 230, 231, 231, 231, 231, 232, 232, 232, 232, - 233, 233, 233, 234, 234, 234, 235, 235, 235, 235, - 235, 236, 236, 236, 237, 237, 238, 238, 239, 239, - 240, 240, 241, 241, 242, 242, 243, 243, 244, 244, - 245, 245, 245, 245, 245, 245, 245, 245, 245, 245, - 245, 246, 246, 247, 248, 248, 248, 249, 250, 250, - 251, 251, 252, 253, 253, 254, 254, 254, 254, 255, - 255, 255, 255, 256, 257, 257, 257, 257, 257, 257, - 257, 258, 258, 258, 258, 258, 258, 258, 258, 259, - 259, 260, 260, 261, 262, 262, 263, 264, 264, 264, - 265, 266, 266, 266, 267, 267, 267, 267, 267, 267, - 267, 267, 267, 268, 268, 269, 269, 269, 270, 270, - 270, 271, 271, 271, 271, 271, 271, 271, 271, 271, - 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, - 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, - 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, - 271, 271, 271, 271, 271, 271, 271, 271, 271, 271, - 271, 271, 272, 272, 272, 273, 273, 274, 274, 275, - 276, 276, 277, 277, 278, 279, 280, 280, 281, 281, - 282, 283, 283, 283, 283, 283, 283, 283, 284, 284, - 285, 285, 286, 286, 287, 287, 288, 288, 289, 290, - 290, 290, 291, 291, 292, 293, 293, 294, 294, 294, - 295, 295, 296, 296, 297, 297, 298, 298, 298, 298, - 298, 299, 299, 300 + 0, 215, 217, 216, 218, 218, 219, 219, 219, 219, + 220, 220, 221, 222, 222, 223, 224, 224, 224, 224, + 224, 224, 225, 225, 225, 225, 225, 225, 226, 227, + 228, 228, 229, 229, 230, 230, 231, 231, 232, 233, + 233, 233, 234, 234, 234, 234, 235, 235, 235, 235, + 236, 236, 236, 236, 237, 237, 237, 238, 238, 238, + 239, 239, 239, 239, 239, 240, 240, 240, 241, 241, + 242, 242, 243, 243, 244, 244, 245, 245, 246, 246, + 247, 247, 248, 248, 249, 249, 249, 249, 249, 249, + 249, 249, 249, 249, 249, 250, 250, 251, 252, 252, + 252, 253, 254, 254, 255, 255, 256, 257, 257, 258, + 258, 258, 258, 259, 259, 259, 259, 260, 261, 261, + 261, 261, 261, 261, 261, 262, 262, 262, 262, 262, + 262, 262, 262, 263, 263, 264, 264, 265, 266, 266, + 267, 268, 268, 268, 269, 270, 270, 270, 271, 271, + 271, 271, 271, 271, 271, 271, 271, 272, 272, 273, + 273, 273, 274, 274, 274, 275, 275, 275, 275, 275, + 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, + 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, + 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, + 275, 275, 275, 275, 275, 275, 275, 275, 275, 275, + 275, 275, 275, 275, 275, 275, 276, 276, 276, 277, + 277, 278, 278, 279, 280, 280, 281, 281, 282, 283, + 284, 284, 285, 285, 286, 287, 287, 287, 287, 287, + 287, 287, 288, 288, 289, 289, 290, 290, 291, 291, + 292, 292, 293, 294, 294, 294, 295, 295, 296, 297, + 297, 298, 298, 298, 299, 299, 300, 300, 301, 301, + 302, 302, 302, 302, 302, 303, 303, 303, 304 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ static const yytype_uint8 yyr2[] = { - 0, 2, 0, 4, 0, 3, 0, 2, 5, 1, - 2, 1, 1, 1, 1, 1, 1, 3, 1, 4, - 1, 3, 2, 2, 1, 1, 1, 3, 2, 2, - 2, 1, 2, 3, 2, 1, 1, 1, 1, 2, - 2, 2, 1, 1, 1, 1, 1, 3, 3, 3, - 1, 3, 3, 1, 3, 3, 1, 3, 3, 3, - 3, 1, 3, 3, 1, 3, 1, 3, 1, 3, - 1, 3, 1, 3, 1, 3, 1, 5, 1, 3, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 3, 1, 2, 2, 4, 2, 1, 1, - 2, 3, 3, 2, 5, 3, 2, 3, 2, 0, - 1, 1, 1, 1, 1, 3, 5, 6, 7, 8, - 5, 1, 2, 4, 5, 6, 7, 4, 2, 1, - 2, 0, 1, 4, 1, 3, 1, 1, 1, 1, - 1, 1, 2, 2, 1, 1, 2, 2, 2, 1, - 2, 2, 1, 1, 2, 1, 3, 4, 1, 1, + 0, 2, 0, 4, 0, 3, 2, 2, 2, 2, + 0, 2, 5, 1, 2, 1, 1, 1, 1, 1, + 1, 3, 1, 4, 1, 3, 2, 2, 1, 1, + 1, 3, 2, 2, 2, 1, 2, 3, 2, 1, + 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, + 1, 3, 3, 3, 1, 3, 3, 1, 3, 3, + 1, 3, 3, 3, 3, 1, 3, 3, 1, 3, + 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, + 1, 5, 1, 3, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 3, 1, 2, 2, + 4, 2, 1, 1, 2, 3, 3, 2, 5, 3, + 2, 3, 2, 0, 1, 1, 1, 1, 1, 3, + 5, 6, 7, 8, 5, 1, 2, 4, 5, 6, + 7, 4, 2, 1, 2, 0, 1, 4, 1, 3, + 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, + 2, 2, 2, 1, 2, 2, 1, 1, 2, 1, + 3, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 5, + 4, 1, 2, 3, 1, 3, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 5, 4, 1, 2, 3, - 1, 3, 1, 4, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, - 1, 1, 2, 3, 1, 2, 1, 2, 7, 5, - 5, 7, 1, 4, 5, 3, 2, 5, 7, 6, - 1, 1, 1, 0, 2, 3, 2, 2, 2, 3, - 2, 1, 1, 2 + 1, 1, 2, 3, 1, 1, 2, 3, 1, 2, + 1, 2, 7, 5, 5, 7, 1, 4, 5, 3, + 2, 5, 7, 6, 1, 1, 1, 0, 2, 3, + 2, 2, 2, 3, 2, 1, 1, 1, 2 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state @@ -1008,628 +1016,621 @@ static const yytype_uint8 yyr2[] = means the default is an error. */ static const yytype_uint16 yydefact[] = { - 4, 0, 0, 6, 0, 1, 2, 5, 0, 131, - 7, 0, 145, 144, 165, 162, 163, 164, 169, 170, - 171, 172, 173, 174, 175, 176, 177, 166, 167, 168, - 0, 149, 152, 139, 138, 137, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 190, 191, 192, - 193, 195, 196, 197, 198, 199, 200, 201, 202, 203, - 204, 205, 206, 207, 208, 209, 210, 211, 0, 161, - 160, 131, 214, 213, 212, 0, 0, 189, 194, 131, - 272, 0, 0, 99, 109, 0, 114, 121, 0, 132, - 131, 0, 141, 129, 153, 155, 158, 0, 159, 9, - 271, 0, 150, 151, 147, 0, 0, 128, 131, 143, - 0, 0, 10, 94, 131, 273, 97, 109, 140, 110, - 111, 112, 100, 0, 109, 0, 95, 122, 148, 146, - 142, 130, 0, 154, 0, 0, 0, 0, 217, 0, - 136, 0, 134, 0, 0, 131, 0, 0, 0, 0, - 0, 0, 0, 0, 11, 15, 13, 14, 16, 37, - 0, 0, 0, 42, 43, 44, 45, 246, 131, 242, - 12, 18, 38, 20, 25, 26, 0, 0, 31, 0, - 46, 0, 50, 53, 56, 61, 64, 66, 68, 70, - 72, 74, 76, 78, 91, 0, 225, 0, 129, 231, - 244, 226, 227, 229, 228, 131, 232, 233, 230, 234, - 235, 236, 237, 101, 106, 108, 113, 0, 115, 102, - 0, 0, 156, 46, 93, 0, 35, 8, 0, 222, - 0, 220, 216, 218, 96, 133, 0, 267, 266, 0, - 131, 0, 270, 268, 0, 0, 0, 256, 131, 39, - 40, 0, 238, 131, 22, 23, 0, 0, 29, 28, - 0, 161, 32, 34, 81, 82, 84, 83, 86, 87, - 88, 89, 90, 85, 80, 0, 41, 0, 0, 0, + 4, 0, 0, 10, 0, 1, 2, 5, 0, 135, + 11, 0, 149, 148, 169, 166, 167, 168, 173, 174, + 175, 176, 177, 178, 179, 180, 181, 170, 171, 172, + 0, 153, 156, 143, 142, 141, 182, 183, 184, 185, + 186, 187, 188, 189, 190, 191, 192, 194, 195, 196, + 197, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 214, 215, 0, 165, + 164, 135, 218, 217, 216, 0, 0, 0, 0, 0, + 0, 193, 198, 277, 135, 276, 0, 0, 103, 113, + 0, 118, 125, 0, 136, 135, 0, 145, 133, 157, + 159, 162, 0, 163, 13, 275, 0, 154, 155, 151, + 0, 0, 132, 135, 147, 0, 6, 7, 8, 9, + 0, 14, 98, 135, 278, 101, 113, 144, 114, 115, + 116, 104, 0, 113, 0, 99, 126, 152, 150, 146, + 134, 0, 158, 0, 0, 0, 0, 221, 0, 140, + 0, 138, 0, 0, 135, 0, 0, 0, 0, 0, + 0, 0, 0, 15, 19, 17, 18, 20, 41, 0, + 0, 0, 46, 47, 48, 49, 250, 135, 246, 16, + 22, 42, 24, 29, 30, 0, 0, 35, 0, 50, + 0, 54, 57, 60, 65, 68, 70, 72, 74, 76, + 78, 80, 82, 95, 0, 229, 0, 133, 235, 248, + 230, 231, 233, 232, 135, 236, 237, 234, 238, 239, + 240, 241, 105, 110, 112, 117, 0, 119, 106, 0, + 0, 160, 50, 97, 0, 39, 12, 0, 226, 0, + 224, 220, 222, 100, 137, 0, 271, 270, 0, 135, + 0, 274, 272, 0, 0, 0, 260, 135, 43, 44, + 0, 242, 135, 26, 27, 0, 0, 33, 32, 0, + 165, 36, 38, 85, 86, 88, 87, 90, 91, 92, + 93, 94, 89, 84, 0, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 247, 243, - 245, 103, 105, 107, 0, 0, 123, 0, 224, 127, - 157, 215, 0, 0, 219, 135, 0, 261, 260, 131, - 0, 269, 0, 255, 252, 0, 0, 17, 239, 0, - 24, 21, 27, 33, 79, 47, 48, 49, 51, 52, - 54, 55, 59, 60, 57, 58, 62, 63, 65, 67, - 69, 71, 73, 75, 0, 92, 0, 116, 0, 120, - 0, 124, 0, 221, 0, 262, 0, 0, 131, 0, - 0, 131, 19, 0, 0, 0, 117, 125, 0, 223, - 0, 264, 131, 249, 250, 254, 0, 0, 241, 257, - 240, 77, 104, 118, 0, 126, 0, 265, 259, 131, - 253, 0, 119, 258, 248, 251, 0, 131, 0, 131 + 0, 0, 0, 0, 0, 0, 0, 251, 247, 249, + 107, 109, 111, 0, 0, 127, 0, 228, 131, 161, + 219, 0, 0, 223, 139, 0, 265, 264, 135, 0, + 273, 0, 259, 256, 0, 0, 21, 243, 0, 28, + 25, 31, 37, 83, 51, 52, 53, 55, 56, 58, + 59, 63, 64, 61, 62, 66, 67, 69, 71, 73, + 75, 77, 79, 0, 96, 0, 120, 0, 124, 0, + 128, 0, 225, 0, 266, 0, 0, 135, 0, 0, + 135, 23, 0, 0, 0, 121, 129, 0, 227, 0, + 268, 135, 253, 254, 258, 0, 0, 245, 261, 244, + 81, 108, 122, 0, 130, 0, 269, 263, 135, 257, + 0, 123, 262, 252, 255, 0, 135, 0, 135 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { - -1, 2, 9, 3, 6, 10, 79, 170, 171, 172, - 329, 173, 174, 175, 176, 177, 178, 179, 180, 181, - 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, - 192, 193, 194, 275, 195, 225, 196, 197, 82, 83, - 84, 214, 122, 123, 215, 85, 86, 87, 88, 89, - 141, 142, 90, 124, 91, 92, 226, 94, 95, 96, - 97, 98, 137, 138, 230, 231, 309, 199, 200, 201, - 202, 203, 204, 389, 390, 205, 206, 207, 208, 326, - 209, 210, 211, 319, 366, 367, 212, 99, 100 + -1, 2, 9, 3, 83, 6, 10, 84, 179, 180, + 181, 338, 182, 183, 184, 185, 186, 187, 188, 189, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + 200, 201, 202, 203, 284, 204, 234, 205, 206, 87, + 88, 89, 223, 131, 132, 224, 90, 91, 92, 93, + 94, 150, 151, 95, 133, 96, 97, 235, 99, 100, + 101, 102, 103, 146, 147, 239, 240, 318, 208, 209, + 210, 211, 212, 213, 398, 399, 214, 215, 216, 217, + 335, 218, 219, 220, 328, 375, 376, 221, 104, 105 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -345 +#define YYPACT_NINF -367 static const yytype_int16 yypact[] = { - -30, 29, 120, -345, 15, -345, 22, -345, 59, 3758, - -345, 25, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, - 79, -345, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, -345, -345, -345, -345, -345, -71, -345, - -345, 130, -345, -345, -345, -79, -42, -345, -345, 3642, - -345, -5, -38, -32, 4, -181, -345, 87, 62, -345, - 27, 3871, -345, -345, -345, -25, -345, 3943, -345, -345, - -345, 91, -345, -345, -345, -37, 3871, -345, 27, -345, - 3943, 95, -345, -345, 398, -345, -345, 19, -345, -345, - -345, -345, -345, 3871, 0, 119, -345, -128, -345, -345, - -345, -345, 2752, -345, 86, 3871, 131, 2153, -345, 11, - -345, -87, -345, 21, 23, 1234, 40, 50, 36, 2379, - 63, 3286, 43, 64, -73, -345, -345, -345, -345, -345, - 3286, 3286, 3286, -345, -345, -345, -345, -345, 607, -345, - -345, -345, -67, -345, -345, -345, 78, -62, 3464, 80, - -53, 3286, -1, 20, 140, -80, 136, 66, 67, 65, - 182, 181, -82, -345, -345, -173, -345, 103, 125, -345, - -345, -345, -345, -345, -345, 816, -345, -345, -345, -345, - -345, -345, -345, -345, -345, -345, 198, 3871, -140, -345, - 2930, 3286, -345, -345, -345, 84, -345, -345, 2266, 124, - -137, -345, -345, -345, -345, -345, 95, -345, -345, 240, - 1845, 3286, -345, -345, -118, 3286, -120, -345, 2574, -345, - -345, -48, -345, 1025, -345, -345, 3286, 235, -345, -345, - 3286, 128, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, -345, -345, 3286, -345, 3286, 3286, 3286, - 3286, 3286, 3286, 3286, 3286, 3286, 3286, 3286, 3286, 3286, - 3286, 3286, 3286, 3286, 3286, 3286, 3286, 3286, -345, -345, - -345, 129, -345, -345, 3108, 3286, 110, 132, -345, -345, - -345, -345, 3286, 131, -345, -345, 133, -345, -345, 2040, - -46, -345, -36, -345, 127, 246, 135, -345, -345, 134, - 127, 138, -345, -345, -345, -345, -345, -345, -1, -1, - 20, 20, 140, 140, 140, 140, -80, -80, 136, 66, - 67, 65, 182, 181, -117, -345, 3286, 121, 137, -345, - 3286, 122, 141, -345, 3286, -345, 118, 142, 1234, 123, - 126, 1442, -345, 3286, 144, 3286, 139, -345, 3286, -345, - -35, 3286, 1442, 324, -345, -345, 3286, 149, -345, -345, - -345, -345, -345, -345, 3286, -345, 143, 127, -345, 1234, - -345, 3286, -345, -345, -345, -345, -33, 1650, 326, 1650 + -88, -21, 24, -367, -53, -367, -3, -367, 9, 3699, + -367, 0, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, -367, -367, -367, -367, -367, -367, + 126, -367, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, -367, -367, -367, -367, -75, -367, + -367, 29, -367, -367, -367, 92, 4, 12, 20, 26, + -49, -367, -367, -367, 3580, -367, -197, -45, -46, 3, + -134, -367, 82, 71, -367, 52, 3887, -367, -367, -367, + -29, -367, 3959, -367, -367, -367, 97, -367, -367, -367, + -19, 3887, -367, 52, -367, 3959, -367, -367, -367, -367, + 130, -367, -367, 282, -367, -367, 47, -367, -367, -367, + -367, -367, 3887, 187, 139, -367, -162, -367, -367, -367, + -367, 2675, -367, 105, 3887, 154, 2064, -367, 23, -367, + -62, -367, 27, 31, 1130, 50, 53, 33, 2296, 55, + 3218, 37, 58, -67, -367, -367, -367, -367, -367, 3218, + 3218, 3218, -367, -367, -367, -367, -367, 494, -367, -367, + -367, -66, -367, -367, -367, 60, -56, 3399, 64, -54, + 3218, 22, 6, 118, -84, 120, 51, 54, 56, 168, + 167, -83, -367, -367, -103, -367, 48, 72, -367, -367, + -367, -367, -367, -367, 706, -367, -367, -367, -367, -367, + -367, -367, -367, -367, -367, 186, 3887, -139, -367, 2856, + 3218, -367, -367, -367, 73, -367, -367, 2180, 75, -102, + -367, -367, -367, -367, -367, 130, -367, -367, 190, 1750, + 3218, -367, -367, -90, 3218, -146, -367, 2494, -367, -367, + -48, -367, 918, -367, -367, 3218, 3815, -367, -367, 3218, + 74, -367, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, 3218, -367, 3218, 3218, 3218, 3218, + 3218, 3218, 3218, 3218, 3218, 3218, 3218, 3218, 3218, 3218, + 3218, 3218, 3218, 3218, 3218, 3218, 3218, -367, -367, -367, + 76, -367, -367, 3037, 3218, 59, 77, -367, -367, -367, + -367, 3218, 154, -367, -367, 81, -367, -367, 1948, -40, + -367, -27, -367, 78, 197, 83, -367, -367, 84, 78, + 85, -367, -367, -367, -367, -367, -367, 22, 22, 6, + 6, 118, 118, 118, 118, -84, -84, 120, 51, 54, + 56, 168, 167, -97, -367, 3218, 66, 86, -367, 3218, + 68, 87, -367, 3218, -367, 70, 91, 1130, 102, 106, + 1341, -367, 3218, 90, 3218, 153, -367, 3218, -367, -26, + 3218, 1341, 353, -367, -367, 3218, 103, -367, -367, -367, + -367, -367, -367, 3218, -367, 157, 78, -367, 1130, -367, + 3218, -367, -367, -367, -367, -25, 1552, 358, 1552 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { - -345, -345, -345, -345, -345, -345, -345, -345, -345, -345, - -345, -345, -345, 85, -345, -345, -345, -345, -103, -345, - -54, -47, -74, -40, 53, 54, 52, 55, 56, 51, - -345, -110, -157, -345, -147, -219, 5, 7, -345, -345, - -345, 146, 232, 227, 147, -345, -345, -238, -345, -345, - -345, 117, -345, -345, -39, -345, -9, -14, -345, -345, - 279, -345, 220, -124, -345, 44, -286, 116, -134, -257, - -344, -294, -11, -22, 280, 197, 145, -345, -345, 47, - -345, -345, -345, -345, -345, -345, -345, 288, -345 + -367, -367, -367, -367, -367, -367, -367, -367, -367, -367, + -367, -367, -367, -367, 107, -367, -367, -367, -367, -111, + -367, -63, -59, -82, -60, 79, 80, 88, 89, 69, + 93, -367, -114, -153, -367, -154, -224, 11, 14, -367, + -367, -367, 148, 249, 243, 151, -367, -367, -245, -367, + -367, -367, 134, -367, -367, -43, -367, -9, -89, -367, + -367, 306, -367, 239, -136, -367, 62, -241, 143, -143, + -342, -355, -366, 15, 5, 308, 218, 149, -367, -367, + 94, -367, -367, -367, -367, -367, -367, -367, 316, -367 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If positive, shift that token. If negative, reduce the rule which number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -264 +#define YYTABLE_NINF -268 static const yytype_int16 yytable[] = { - 93, 307, 244, -160, 246, 105, 284, 285, 118, 295, - 325, 239, 125, 233, 80, 251, 81, 254, 255, 359, - 297, 262, 224, 118, 384, 72, 73, 74, 126, 223, - 12, 13, 109, 119, 120, 121, 298, 119, 120, 121, - 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, - 304, 130, 119, 120, 121, 405, 313, 249, 250, 30, - 219, 31, 220, 32, 308, 33, 34, 35, 305, 109, - 93, 300, 314, 297, 377, 297, 297, 388, 276, 1, - 221, 325, 131, 133, 80, 358, 81, 323, 388, 393, - 373, 321, 395, 362, 320, 128, 139, 136, 322, 129, - 400, 324, 235, 333, 233, 198, 236, 4, 402, 330, - 224, 383, 102, 103, 216, -36, 104, 223, 334, 300, - 5, 286, 287, 256, 296, 257, 136, 259, 136, 7, - 108, 260, 8, 12, 13, 11, 198, 374, 101, 106, - 355, 327, 404, 368, 76, 297, 111, 297, 308, 354, - 408, 116, 404, 369, 396, 274, 407, 297, 297, 198, - 297, 117, 30, 127, 31, 132, 32, 134, 33, 34, - 35, 140, 324, 135, 335, 336, 337, 223, 223, 223, - 223, 223, 223, 223, 223, 223, 223, 223, 223, 223, - 223, 223, 223, -98, 224, 218, 198, 277, 278, 279, - 227, 223, 224, 308, 113, 114, 107, 229, 216, 223, - 342, 343, 344, 345, 280, 281, 391, 380, 308, 136, - 234, 308, 282, 283, 288, 289, 338, 339, 240, 308, - 237, 198, 238, 108, 397, 340, 341, 308, 241, 198, - 14, 15, 16, 17, 198, 242, 224, 76, 346, 347, - 247, 245, 248, 223, 406, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 258, 263, 290, - 292, 291, 293, 294, 301, 310, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 198, 331, 113, -35, 312, 316, 159, -30, 360, 356, - 297, 364, 370, 361, 371, 372, -36, 381, 376, 375, - 378, 382, 379, 168, 386, 392, 399, 401, 409, 72, - 73, 74, 332, 348, 350, 349, 353, 394, 351, 213, - 352, 217, 403, 315, 110, 228, 317, 363, 385, 198, - 398, 115, 198, 302, 303, 253, 365, 112, 0, 0, - 0, 0, 0, 198, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 318, 77, 0, 78, 0, - 198, 0, 0, 0, 0, 0, 0, 0, 198, 0, - 198, 12, 13, 14, 15, 16, 17, 143, 144, 145, - 0, 146, 147, 148, 149, 150, 151, 152, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 153, 154, 155, 156, 157, 158, 159, - 0, 0, 160, 161, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 71, 72, 73, 74, 0, 75, 0, 0, 0, - 0, 0, 0, 0, 0, 76, 0, 0, 0, 0, + 98, 110, 293, 294, 253, 316, 255, 127, 304, -164, + 242, 248, 334, 142, 397, 122, 123, 260, 263, 264, + 85, 1, 393, 86, 5, 397, 148, 233, 114, 228, + 232, 229, 12, 13, 271, 392, 128, 129, 130, 273, + 274, 275, 276, 277, 278, 279, 280, 281, 282, 230, + 306, 127, 139, 414, 313, 12, 13, 4, 258, 259, + 7, 30, 134, 31, 332, 32, 413, 33, 34, 35, + 114, 309, 314, 368, 417, 98, 413, 317, 135, 285, + 128, 129, 130, 334, 30, 11, 31, 140, 32, 367, + 33, 34, 35, 306, 322, 85, 329, 371, 86, 306, + 331, 242, 145, 333, 137, 112, 306, 8, 138, 307, + 323, 339, 106, 382, 207, 233, 342, 116, 232, 309, + 295, 296, 330, 225, -40, 117, 305, 265, 386, 266, + 244, 343, 113, 118, 245, 145, 268, 145, 111, 119, + 269, 383, 120, 402, 336, 207, 404, 125, 306, 80, + 126, 363, 377, 364, 409, 113, 306, 283, 136, 107, + 108, 317, 411, 109, 141, 378, 405, 416, 207, 306, + 306, 306, 80, 143, 333, 344, 345, 346, 232, 232, + 232, 232, 232, 232, 232, 232, 232, 232, 232, 232, + 232, 232, 232, 232, 144, -102, 72, 73, 74, 233, + 291, 292, 232, 289, 290, 207, 149, 233, 297, 298, + 232, 351, 352, 353, 354, 227, 317, 225, 236, 389, + 128, 129, 130, 286, 287, 288, 347, 348, 145, 400, + 238, 317, 349, 350, 317, 243, 406, 355, 356, 246, + 207, 249, 317, 247, 250, 251, 254, 256, 207, 257, + 317, 233, 267, 207, 232, 272, 415, 299, 302, 303, + 122, 300, 310, -39, 301, 325, -34, 319, 321, 365, + 369, 370, 373, 379, 306, 380, -40, 384, 381, 387, + 385, 388, 390, 391, 401, 12, 13, 14, 15, 16, + 17, 152, 153, 154, 410, 155, 156, 157, 158, 159, + 160, 161, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 177, 31, 395, 32, 207, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 162, 163, 164, + 165, 166, 167, 168, 403, 408, 169, 170, 207, 412, + 418, 207, 361, 341, 311, 222, 226, 312, 357, 324, + 358, 115, 207, 237, 372, 71, 72, 73, 74, 359, + 75, 360, 326, 394, 124, 262, 407, 362, 327, 207, + 121, 0, 80, 0, 0, 0, 0, 207, 0, 207, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 374, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, - 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 162, 0, 0, 0, - 0, 0, 163, 164, 165, 166, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 167, 168, 169, - 12, 13, 14, 15, 16, 17, 143, 144, 145, 0, - 146, 147, 148, 149, 150, 151, 152, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 0, 31, 0, 32, 0, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 153, 154, 155, 156, 157, 158, 159, 0, - 0, 160, 161, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 171, 0, 0, 0, 0, 0, 172, + 173, 174, 175, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 176, 177, 178, 12, 13, 14, + 15, 16, 17, 152, 153, 154, 0, 155, 156, 157, + 158, 159, 160, 161, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, + 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 162, + 163, 164, 165, 166, 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 71, 72, 73, 74, 0, 75, 0, 0, 0, 0, - 0, 0, 0, 0, 76, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 71, 72, 73, + 74, 0, 75, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, - 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 81, 0, + 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 162, 0, 0, 0, 0, - 0, 163, 164, 165, 166, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 167, 168, 252, 12, - 13, 14, 15, 16, 17, 143, 144, 145, 0, 146, - 147, 148, 149, 150, 151, 152, 18, 19, 20, 21, + 0, 0, 0, 0, 0, 171, 0, 0, 0, 0, + 0, 172, 173, 174, 175, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 176, 177, 261, 12, + 13, 14, 15, 16, 17, 152, 153, 154, 0, 155, + 156, 157, 158, 159, 160, 161, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 153, 154, 155, 156, 157, 158, 159, 0, 0, - 160, 161, 0, 0, 0, 0, 0, 0, 0, 0, + 69, 162, 163, 164, 165, 166, 167, 168, 0, 0, + 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 72, 73, 74, 0, 75, 0, 0, 0, 0, 0, - 0, 0, 0, 76, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 162, 0, 0, 0, 0, 0, - 163, 164, 165, 166, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 167, 168, 299, 12, 13, - 14, 15, 16, 17, 143, 144, 145, 0, 146, 147, - 148, 149, 150, 151, 152, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, - 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 153, 154, 155, 156, 157, 158, 159, 0, 0, 160, - 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 71, 72, - 73, 74, 0, 75, 0, 0, 0, 0, 0, 0, - 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 171, 0, 0, + 0, 0, 0, 172, 173, 174, 175, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 176, 177, + 308, 12, 13, 14, 15, 16, 17, 152, 153, 154, + 0, 155, 156, 157, 158, 159, 160, 161, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 162, 163, 164, 165, 166, 167, 168, + 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 71, 72, 73, 74, 0, 75, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 162, 0, 0, 0, 0, 0, 163, - 164, 165, 166, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 167, 168, 328, 12, 13, 14, - 15, 16, 17, 143, 144, 145, 0, 146, 147, 148, - 149, 150, 151, 152, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, - 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 153, - 154, 155, 156, 157, 158, 159, 0, 0, 160, 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 71, 72, 73, - 74, 0, 75, 0, 0, 0, 0, 0, 0, 0, - 0, 76, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 171, + 0, 0, 0, 0, 0, 172, 173, 174, 175, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 176, 177, 337, 12, 13, 14, 15, 16, 17, 152, + 153, 154, 0, 155, 156, 157, 158, 159, 160, 161, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 162, 163, 164, 165, 166, + 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 71, 72, 73, 74, 0, 75, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 81, 0, 82, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 171, 0, 0, 0, 0, 0, 172, 173, 174, + 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 176, 177, 12, 13, 14, 15, 16, 17, + 152, 153, 154, 0, 155, 396, 157, 158, 159, 160, + 161, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 0, 31, 0, 32, 0, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 162, 163, 164, 165, + 166, 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 71, 72, 73, 74, 0, 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 77, 0, 78, 0, 0, + 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 162, 0, 0, 0, 0, 0, 163, 164, - 165, 166, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 167, 168, 12, 13, 14, 15, 16, - 17, 143, 144, 145, 0, 146, 387, 148, 149, 150, - 151, 152, 18, 19, 20, 21, 22, 23, 24, 25, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 171, 0, 0, 0, 0, 0, 172, 173, + 174, 175, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 176, 123, 12, 13, 14, 15, 16, + 17, 152, 153, 154, 0, 155, 396, 157, 158, 159, + 160, 161, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 153, 154, 155, - 156, 157, 158, 159, 0, 0, 160, 161, 0, 0, + 63, 64, 65, 66, 67, 68, 69, 162, 163, 164, + 165, 166, 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 72, 73, 74, 0, - 75, 0, 0, 0, 0, 0, 0, 0, 0, 76, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 75, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 162, 0, 0, 0, 0, 0, 163, 164, 165, 166, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 167, 114, 12, 13, 14, 15, 16, 17, 143, - 144, 145, 0, 146, 387, 148, 149, 150, 151, 152, + 0, 0, 0, 171, 0, 0, 0, 0, 0, 172, + 173, 174, 175, 12, 13, 14, 15, 16, 17, 0, + 0, 0, 0, 0, 176, 177, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 153, 154, 155, 156, 157, - 158, 159, 0, 0, 160, 161, 0, 0, 0, 0, + 65, 66, 67, 68, 69, 0, 163, 164, 165, 166, + 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 72, 73, 74, 0, 75, 0, - 0, 0, 0, 0, 0, 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 162, 0, - 0, 0, 0, 0, 163, 164, 165, 166, 12, 13, - 14, 15, 16, 17, 0, 0, 0, 0, 0, 167, - 168, 0, 0, 0, 0, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, - 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 0, 154, 155, 156, 157, 158, 159, 0, 0, 160, - 161, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 71, 72, - 73, 74, 0, 75, 0, 0, 0, 0, 0, 0, - 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 77, 0, 78, 0, + 0, 171, 0, 0, 0, 0, 0, 172, 173, 174, + 175, 12, 13, 14, 15, 16, 17, 0, 0, 0, + 0, 0, 176, 0, 0, 0, 0, 0, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 0, 163, 164, 165, 166, 167, 168, + 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 113, 72, 73, 74, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 80, 14, + 15, 16, 17, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 0, 0, 0, 0, + 0, 0, 81, 0, 82, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 171, + 70, 0, 0, 0, 0, 172, 173, 174, 175, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -267, 0, 0, 0, 0, 0, 0, 0, 72, 73, + 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 14, 15, 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 162, 0, 0, 0, 0, 0, 163, - 164, 165, 166, 12, 13, 14, 15, 16, 17, 0, - 0, 0, 0, 0, 167, 0, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, - 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 28, 29, 0, 0, 0, 0, 0, 0, 81, 0, + 82, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 0, 154, 155, 156, 157, - 158, 159, 0, 0, 160, 161, 0, 0, 0, 0, + 65, 66, 67, 68, 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 108, 72, 73, 74, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 76, 14, 15, - 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 0, 0, 0, 0, 0, - 0, 77, 0, 78, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 162, 70, - 0, 0, 0, 0, 163, 164, 165, 166, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, -263, - 0, 0, 0, 0, 0, 0, 0, 72, 73, 74, + 0, 0, 0, 0, 0, 0, 0, 0, 241, 0, + 0, 0, 0, 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 15, 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 0, 0, - 0, 0, 0, 0, 77, 0, 78, 36, 37, 38, + 0, 0, 0, 0, 81, 0, 82, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 232, 0, 0, 0, 0, 0, + 69, 0, 163, 164, 165, 166, 167, 168, 0, 0, + 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 320, 0, 0, 0, 0, 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 14, 15, 16, 17, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, - 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 0, 0, 0, 0, 0, 0, 77, 0, 78, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 0, 154, 155, 156, 157, 158, - 159, 0, 0, 160, 161, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 311, 0, 0, - 0, 0, 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, + 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 162, 0, 0, - 0, 0, 0, 163, 164, 165, 166, 12, 13, 14, - 15, 16, 17, 0, 0, 0, 0, 0, 243, 0, + 0, 0, 0, 0, 0, 0, 0, 171, 0, 0, + 0, 0, 0, 172, 173, 174, 175, 12, 13, 14, + 15, 16, 17, 0, 0, 0, 0, 0, 252, 0, 0, 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 0, - 154, 155, 156, 157, 158, 159, 0, 0, 160, 161, + 163, 164, 165, 166, 167, 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 108, 72, 73, + 0, 0, 0, 0, 0, 0, 0, 113, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 76, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 77, 0, 78, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 81, 0, + 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 15, 16, - 17, 0, 162, 0, 0, 0, 0, 0, 163, 164, - 165, 166, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 0, 154, 155, - 156, 157, 158, 159, 0, 0, 160, 161, 0, 0, + 14, 15, 16, 17, 0, 171, 0, 0, 0, 0, + 0, 172, 173, 174, 175, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 0, 163, 164, 165, 166, 167, 168, 0, 0, 169, + 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, + 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, + 0, 82, 0, 0, 0, 0, 0, 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, 15, 16, 17, 0, 171, 0, 0, 231, + 0, 0, 172, 173, 174, 175, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 0, 163, 164, 165, 166, 167, 168, 0, 0, + 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 72, 73, 74, 0, + 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 77, 0, 78, 0, 0, 0, 0, + 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 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, 15, 16, 17, 0, - 162, 0, 0, 222, 0, 0, 163, 164, 165, 166, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 36, 37, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 0, 154, 155, 156, 157, - 158, 159, 0, 0, 160, 161, 0, 0, 0, 0, + 0, 0, 14, 15, 16, 17, 0, 171, 0, 0, + 315, 0, 0, 172, 173, 174, 175, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 0, 163, 164, 165, 166, 167, 168, 0, + 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 72, 73, 74, 0, 0, 0, + 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, + 0, 81, 0, 82, 0, 0, 0, 0, 0, 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, 15, 16, 17, 0, 162, 0, - 0, 306, 0, 0, 163, 164, 165, 166, 18, 19, + 0, 0, 0, 14, 15, 16, 17, 0, 171, 0, + 0, 366, 0, 0, 172, 173, 174, 175, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 0, 154, 155, 156, 157, 158, 159, - 0, 0, 160, 161, 0, 0, 0, 0, 0, 0, + 67, 68, 69, 0, 163, 164, 165, 166, 167, 168, + 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, - 0, 78, 0, 0, 0, 0, 0, 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, 15, 16, 17, 0, 162, 0, 0, 357, - 0, 0, 163, 164, 165, 166, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 0, 154, 155, 156, 157, 158, 159, 0, 0, - 160, 161, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 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, 15, 16, 17, 0, 171, + 0, 0, 0, 0, 0, 172, 173, 174, 175, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 270, 0, 163, 164, 165, 166, 167, + 168, 0, 0, 169, 170, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 77, 0, 78, - 0, 0, 0, 0, 0, 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, - 15, 16, 17, 0, 162, 0, 0, 0, 0, 0, - 163, 164, 165, 166, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 261, 0, - 154, 155, 156, 157, 158, 159, 0, 0, 160, 161, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 72, 73, - 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 72, 73, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 77, 0, 78, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, -3, 0, 0, 12, 13, 14, 15, 16, - 17, 0, 162, 0, 0, 0, 0, 0, 163, 164, - 165, 166, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 0, 31, 0, 32, 0, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + -3, 0, 0, 12, 13, 14, 15, 16, 17, 0, + 171, 0, 0, 0, 0, 0, 172, 173, 174, 175, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 0, 31, 0, 32, 0, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 71, 72, 73, 74, 0, - 75, 0, 0, 0, 0, 0, 0, 0, 0, 76, - 0, 12, 13, 14, 15, 16, 17, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 0, 31, 77, 32, 78, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 71, 72, 73, 74, 0, 75, 0, + 0, 0, 0, 0, 0, 0, 76, 77, 78, 79, + 80, 0, 12, 13, 14, 15, 16, 17, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 0, 31, 81, 32, 82, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 71, 72, 73, 74, 0, 75, 0, 0, 0, - 0, 0, 0, 0, 0, 76, 14, 15, 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 0, 0, 0, 0, 0, 0, 77, - 0, 78, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 0, 70, 14, 15, - 16, 17, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 72, 73, 74, 0, 0, - 0, 0, 0, 0, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 0, 70, - 0, 0, 77, 0, 78, 0, 0, 0, 0, 0, + 0, 0, 71, 72, 73, 74, 0, 75, 0, 0, + 0, 0, 0, 0, 0, 76, 77, 78, 79, 80, + 14, 15, 16, 17, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 0, 0, 0, + 0, 0, 0, 81, 0, 82, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 0, 340, 14, 15, 16, 17, 168, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 72, + 73, 74, 0, 0, 0, 0, 0, 0, 36, 37, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 0, 70, 14, 15, 16, 17, 0, 81, + 0, 82, 0, 0, 0, 0, 0, 0, 0, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 72, 73, 74, 0, 0, 0, 0, 0, 0, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 0, 70, 0, 0, 0, 0, + 0, 81, 0, 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 77, 0, 78 + 0, 0, 0, 81, 0, 82 }; static const yytype_int16 yycheck[] = { - 9, 220, 149, 76, 151, 76, 86, 87, 4, 91, - 248, 145, 193, 137, 9, 162, 9, 84, 85, 305, - 193, 178, 132, 4, 368, 104, 105, 106, 209, 132, - 3, 4, 71, 33, 34, 35, 209, 33, 34, 35, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 190, 90, 33, 34, 35, 399, 193, 160, 161, 32, - 188, 34, 190, 36, 221, 38, 39, 40, 208, 108, - 79, 205, 209, 193, 360, 193, 193, 371, 181, 109, - 208, 319, 91, 97, 79, 304, 79, 207, 382, 375, - 207, 209, 378, 312, 241, 33, 110, 106, 245, 37, - 386, 248, 189, 260, 228, 114, 193, 78, 394, 256, - 220, 368, 33, 34, 123, 188, 37, 220, 275, 253, - 0, 201, 202, 190, 206, 192, 135, 189, 137, 114, - 103, 193, 110, 3, 4, 76, 145, 356, 113, 210, - 297, 189, 399, 189, 117, 193, 188, 193, 305, 296, - 407, 189, 409, 189, 189, 208, 189, 193, 193, 168, - 193, 193, 32, 76, 34, 190, 36, 76, 38, 39, - 40, 76, 319, 210, 277, 278, 279, 280, 281, 282, - 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, - 293, 294, 295, 189, 304, 76, 205, 198, 199, 200, - 114, 304, 312, 360, 209, 210, 76, 76, 217, 312, - 284, 285, 286, 287, 194, 195, 373, 364, 375, 228, - 209, 378, 82, 83, 88, 89, 280, 281, 188, 386, - 209, 240, 209, 103, 381, 282, 283, 394, 188, 248, - 5, 6, 7, 8, 253, 209, 356, 117, 288, 289, - 207, 188, 188, 356, 401, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 189, 188, 203, - 205, 204, 90, 92, 76, 191, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 319, 76, 209, 188, 190, 75, 81, 189, 208, 190, - 193, 188, 76, 191, 189, 191, 188, 209, 191, 208, - 208, 189, 191, 210, 208, 191, 12, 188, 12, 104, - 105, 106, 257, 290, 292, 291, 295, 208, 293, 117, - 294, 124, 209, 236, 75, 135, 240, 313, 369, 368, - 382, 81, 371, 217, 217, 168, 319, 79, -1, -1, - -1, -1, -1, 382, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 240, 151, -1, 153, -1, - 399, -1, -1, -1, -1, -1, -1, -1, 407, -1, - 409, 3, 4, 5, 6, 7, 8, 9, 10, 11, - -1, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, -1, 34, -1, 36, -1, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 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, - -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 103, 104, 105, 106, -1, 108, -1, -1, -1, - -1, -1, -1, -1, -1, 117, -1, -1, -1, -1, + 9, 76, 86, 87, 158, 229, 160, 4, 91, 76, + 146, 154, 257, 102, 380, 212, 213, 171, 84, 85, + 9, 109, 377, 9, 0, 391, 115, 141, 71, 191, + 141, 193, 3, 4, 187, 377, 33, 34, 35, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 211, + 196, 4, 95, 408, 193, 3, 4, 78, 169, 170, + 113, 32, 196, 34, 210, 36, 408, 38, 39, 40, + 113, 214, 211, 314, 416, 84, 418, 230, 212, 190, + 33, 34, 35, 328, 32, 76, 34, 96, 36, 313, + 38, 39, 40, 196, 196, 84, 250, 321, 84, 196, + 254, 237, 111, 257, 33, 76, 196, 110, 37, 212, + 212, 265, 112, 210, 123, 229, 269, 113, 229, 262, + 204, 205, 212, 132, 191, 113, 209, 193, 369, 195, + 192, 284, 103, 113, 196, 144, 192, 146, 213, 113, + 196, 365, 191, 384, 192, 154, 387, 192, 196, 120, + 196, 305, 192, 306, 395, 103, 196, 211, 76, 33, + 34, 314, 403, 37, 193, 192, 192, 192, 177, 196, + 196, 196, 120, 76, 328, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, + 301, 302, 303, 304, 213, 192, 104, 105, 106, 313, + 82, 83, 313, 197, 198, 214, 76, 321, 88, 89, + 321, 293, 294, 295, 296, 76, 369, 226, 113, 373, + 33, 34, 35, 201, 202, 203, 289, 290, 237, 382, + 76, 384, 291, 292, 387, 212, 390, 297, 298, 212, + 249, 191, 395, 212, 191, 212, 191, 210, 257, 191, + 403, 365, 192, 262, 365, 191, 410, 206, 90, 92, + 212, 207, 76, 191, 208, 75, 192, 194, 193, 193, + 211, 194, 191, 76, 196, 192, 191, 211, 194, 211, + 194, 194, 212, 192, 194, 3, 4, 5, 6, 7, + 8, 9, 10, 11, 191, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 213, 34, 211, 36, 328, + 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, + 48, 49, 50, 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, 211, 12, 84, 85, 377, 212, + 12, 380, 303, 266, 226, 126, 133, 226, 299, 245, + 300, 75, 391, 144, 322, 103, 104, 105, 106, 301, + 108, 302, 249, 378, 86, 177, 391, 304, 249, 408, + 84, -1, 120, -1, -1, -1, -1, 416, -1, 418, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 328, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 151, - -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 188, -1, -1, -1, - -1, -1, 194, 195, 196, 197, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 209, 210, 211, - 3, 4, 5, 6, 7, 8, 9, 10, 11, -1, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - -1, 34, -1, 36, -1, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 47, 48, 49, 50, 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, -1, - -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 191, -1, -1, -1, -1, -1, 197, + 198, 199, 200, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 212, 213, 214, 3, 4, 5, + 6, 7, 8, 9, 10, 11, -1, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, -1, 34, -1, + 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 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, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 103, 104, 105, 106, -1, 108, -1, -1, -1, -1, - -1, -1, -1, -1, 117, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, + 106, -1, 108, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 151, -1, - 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 154, -1, + 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 188, -1, -1, -1, -1, - -1, 194, 195, 196, 197, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 209, 210, 211, 3, + -1, -1, -1, -1, -1, 191, -1, -1, -1, -1, + -1, 197, 198, 199, 200, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 212, 213, 214, 3, 4, 5, 6, 7, 8, 9, 10, 11, -1, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, @@ -1641,58 +1642,80 @@ static const yytype_int16 yycheck[] = 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, 106, -1, 108, -1, -1, -1, -1, -1, - -1, -1, -1, 117, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 188, -1, -1, -1, -1, -1, - 194, 195, 196, 197, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 209, 210, 211, 3, 4, - 5, 6, 7, 8, 9, 10, 11, -1, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, - -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 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, -1, -1, 84, - 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, - 105, 106, -1, 108, -1, -1, -1, -1, -1, -1, - -1, -1, 117, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 191, -1, -1, + -1, -1, -1, 197, 198, 199, 200, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 212, 213, + 214, 3, 4, 5, 6, 7, 8, 9, 10, 11, + -1, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, -1, 34, -1, 36, -1, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 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, + -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 103, 104, 105, 106, -1, 108, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 188, -1, -1, -1, -1, -1, 194, - 195, 196, 197, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 209, 210, 211, 3, 4, 5, - 6, 7, 8, 9, 10, 11, -1, 13, 14, 15, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, -1, 34, -1, - 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 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, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, - 106, -1, 108, -1, -1, -1, -1, -1, -1, -1, - -1, 117, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 191, + -1, -1, -1, -1, -1, 197, 198, 199, 200, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 212, 213, 214, 3, 4, 5, 6, 7, 8, 9, + 10, 11, -1, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, -1, 34, -1, 36, -1, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 50, 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, -1, -1, 84, 85, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 103, 104, 105, 106, -1, 108, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 154, -1, 156, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 151, -1, 153, -1, -1, + -1, 191, -1, -1, -1, -1, -1, 197, 198, 199, + 200, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 212, 213, 3, 4, 5, 6, 7, 8, + 9, 10, 11, -1, 13, 14, 15, 16, 17, 18, + 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, -1, 34, -1, 36, -1, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 49, 50, 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, -1, -1, 84, 85, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 103, 104, 105, 106, -1, 108, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 188, -1, -1, -1, -1, -1, 194, 195, - 196, 197, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 209, 210, 3, 4, 5, 6, 7, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 191, -1, -1, -1, -1, -1, 197, 198, + 199, 200, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 212, 213, 3, 4, 5, 6, 7, 8, 9, 10, 11, -1, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, -1, 36, -1, @@ -1703,110 +1726,91 @@ static const yytype_int16 yycheck[] = 78, 79, 80, 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, 106, -1, - 108, -1, -1, -1, -1, -1, -1, -1, -1, 117, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 108, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 151, -1, 153, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 188, -1, -1, -1, -1, -1, 194, 195, 196, 197, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 209, 210, 3, 4, 5, 6, 7, 8, 9, - 10, 11, -1, 13, 14, 15, 16, 17, 18, 19, + -1, -1, -1, 191, -1, -1, -1, -1, -1, 197, + 198, 199, 200, 3, 4, 5, 6, 7, 8, -1, + -1, -1, -1, -1, 212, 213, -1, -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 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, + 70, 71, 72, 73, 74, -1, 76, 77, 78, 79, 80, 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, 106, -1, 108, -1, - -1, -1, -1, -1, -1, -1, -1, 117, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 188, -1, - -1, -1, -1, -1, 194, 195, 196, 197, 3, 4, - 5, 6, 7, 8, -1, -1, -1, -1, -1, 209, - 210, -1, -1, -1, -1, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, - -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, - 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - -1, 76, 77, 78, 79, 80, 81, -1, -1, 84, - 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, - 105, 106, -1, 108, -1, -1, -1, -1, -1, -1, - -1, -1, 117, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 151, -1, 153, -1, + -1, 191, -1, -1, -1, -1, -1, 197, 198, 199, + 200, 3, 4, 5, 6, 7, 8, -1, -1, -1, + -1, -1, 212, -1, -1, -1, -1, -1, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, -1, 34, -1, 36, -1, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, 73, 74, -1, 76, 77, 78, 79, 80, 81, + -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 103, 104, 105, 106, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 120, 5, + 6, 7, 8, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, -1, -1, -1, -1, + -1, -1, 154, -1, 156, 41, 42, 43, 44, 45, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 191, + 76, -1, -1, -1, -1, 197, 198, 199, 200, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 212, -1, -1, -1, -1, -1, -1, -1, 104, 105, + 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 5, 6, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 188, -1, -1, -1, -1, -1, 194, - 195, 196, 197, 3, 4, 5, 6, 7, 8, -1, - -1, -1, -1, -1, 209, -1, -1, -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, -1, 34, -1, 36, -1, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 30, 31, -1, -1, -1, -1, -1, -1, 154, -1, + 156, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, -1, 76, 77, 78, 79, - 80, 81, -1, -1, 84, 85, -1, -1, -1, -1, + 70, 71, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 103, 104, 105, 106, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 117, 5, 6, - 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, -1, -1, -1, -1, -1, - -1, 151, -1, 153, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, 73, 74, 188, 76, - -1, -1, -1, -1, 194, 195, 196, 197, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 209, - -1, -1, -1, -1, -1, -1, -1, 104, 105, 106, + -1, -1, -1, -1, -1, -1, -1, -1, 214, -1, + -1, -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5, 6, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, -1, -1, - -1, -1, -1, -1, 151, -1, 153, 41, 42, 43, + -1, -1, -1, -1, 154, -1, 156, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 211, -1, -1, -1, -1, -1, + 74, -1, 76, 77, 78, 79, 80, 81, -1, -1, + 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 214, -1, -1, -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 5, 6, 7, 8, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, -1, -1, -1, -1, -1, -1, 151, -1, 153, - 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 73, 74, -1, 76, 77, 78, 79, 80, - 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 211, -1, -1, - -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, + 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 188, -1, -1, - -1, -1, -1, 194, 195, 196, 197, 3, 4, 5, - 6, 7, 8, -1, -1, -1, -1, -1, 209, -1, + -1, -1, -1, -1, -1, -1, -1, 191, -1, -1, + -1, -1, -1, 197, 198, 199, 200, 3, 4, 5, + 6, 7, 8, -1, -1, -1, -1, -1, 212, -1, -1, -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, -1, 34, -1, 36, -1, 38, 39, 40, 41, 42, 43, 44, 45, @@ -1817,50 +1821,69 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 103, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 117, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 151, -1, 153, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 154, -1, + 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 5, 6, 7, - 8, -1, 188, -1, -1, -1, -1, -1, 194, 195, - 196, 197, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, -1, 76, 77, - 78, 79, 80, 81, -1, -1, 84, 85, -1, -1, + 5, 6, 7, 8, -1, 191, -1, -1, -1, -1, + -1, 197, 198, 199, 200, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + -1, 76, 77, 78, 79, 80, 81, -1, -1, 84, + 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 104, + 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 154, + -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 151, -1, 153, -1, -1, -1, -1, + -1, 5, 6, 7, 8, -1, 191, -1, -1, 194, + -1, -1, 197, 198, 199, 200, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, + 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, + 74, -1, 76, 77, 78, 79, 80, 81, -1, -1, + 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 5, 6, 7, 8, -1, - 188, -1, -1, 191, -1, -1, 194, 195, 196, 197, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 41, 42, 43, 44, 45, 46, 47, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, -1, 76, 77, 78, 79, - 80, 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 5, 6, 7, 8, -1, 191, -1, -1, + 194, -1, -1, 197, 198, 199, 200, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 41, 42, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, -1, 76, 77, 78, 79, 80, 81, -1, + -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 5, 6, 7, 8, -1, 188, -1, - -1, 191, -1, -1, 194, 195, 196, 197, 20, 21, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 5, 6, 7, 8, -1, 191, -1, + -1, 194, -1, -1, 197, 198, 199, 200, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, -1, -1, -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, @@ -1873,138 +1896,130 @@ static const yytype_int16 yycheck[] = -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 151, - -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 5, 6, 7, 8, -1, 188, -1, -1, 191, - -1, -1, 194, 195, 196, 197, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, -1, 76, 77, 78, 79, 80, 81, -1, -1, - 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 151, -1, 153, + -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 5, - 6, 7, 8, -1, 188, -1, -1, -1, -1, -1, - 194, 195, 196, 197, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, -1, - 76, 77, 78, 79, 80, 81, -1, -1, 84, 85, + -1, -1, -1, -1, 5, 6, 7, 8, -1, 191, + -1, -1, -1, -1, -1, 197, 198, 199, 200, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, -1, 76, 77, 78, 79, 80, + 81, -1, -1, 84, 85, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 104, 105, - 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 104, 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 151, -1, 153, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 0, -1, -1, 3, 4, 5, 6, 7, - 8, -1, 188, -1, -1, -1, -1, -1, 194, 195, - 196, 197, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, -1, 34, -1, 36, -1, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 0, -1, -1, 3, 4, 5, 6, 7, 8, -1, + 191, -1, -1, -1, -1, -1, 197, 198, 199, 200, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, -1, 34, -1, 36, -1, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 103, 104, 105, 106, -1, - 108, -1, -1, -1, -1, -1, -1, -1, -1, 117, - -1, 3, 4, 5, 6, 7, 8, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, -1, 34, 151, 36, 153, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 103, 104, 105, 106, -1, 108, -1, + -1, -1, -1, -1, -1, -1, 116, 117, 118, 119, + 120, -1, 3, 4, 5, 6, 7, 8, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, -1, 34, 154, 36, 156, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, -1, 76, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 103, 104, 105, 106, -1, 108, -1, -1, -1, - -1, -1, -1, -1, -1, 117, 5, 6, 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 20, 21, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, -1, -1, -1, -1, -1, -1, 151, - -1, 153, 41, 42, 43, 44, 45, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, 73, 74, -1, 76, 5, 6, - 7, 8, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 104, 105, 106, -1, -1, - -1, -1, -1, -1, 41, 42, 43, 44, 45, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, 73, 74, -1, 76, - -1, -1, 151, -1, 153, -1, -1, -1, -1, -1, + -1, -1, 103, 104, 105, 106, -1, 108, -1, -1, + -1, -1, -1, -1, -1, 116, 117, 118, 119, 120, + 5, 6, 7, 8, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, -1, -1, -1, + -1, -1, -1, 154, -1, 156, 41, 42, 43, 44, + 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + -1, 76, 5, 6, 7, 8, 81, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 104, + 105, 106, -1, -1, -1, -1, -1, -1, 41, 42, + 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, -1, 76, 5, 6, 7, 8, -1, 154, + -1, 156, -1, -1, -1, -1, -1, -1, -1, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 104, 105, 106, -1, -1, -1, -1, -1, -1, + 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, -1, 76, -1, -1, -1, -1, + -1, 154, -1, 156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 151, -1, 153 + -1, -1, -1, 154, -1, 156 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint16 yystos[] = { - 0, 109, 213, 215, 78, 0, 216, 114, 110, 214, - 217, 76, 3, 4, 5, 6, 7, 8, 20, 21, + 0, 109, 216, 218, 78, 0, 220, 113, 110, 217, + 221, 76, 3, 4, 5, 6, 7, 8, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 34, 36, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 76, 103, 104, 105, 106, 108, 117, 151, 153, 218, - 248, 249, 250, 251, 252, 257, 258, 259, 260, 261, - 264, 266, 267, 268, 269, 270, 271, 272, 273, 299, - 300, 113, 33, 34, 37, 76, 210, 76, 103, 266, - 272, 188, 299, 209, 210, 286, 189, 193, 4, 33, - 34, 35, 254, 255, 265, 193, 209, 76, 33, 37, - 266, 268, 190, 269, 76, 210, 268, 274, 275, 269, - 76, 262, 263, 9, 10, 11, 13, 14, 15, 16, - 17, 18, 19, 75, 76, 77, 78, 79, 80, 81, - 84, 85, 188, 194, 195, 196, 197, 209, 210, 211, - 219, 220, 221, 223, 224, 225, 226, 227, 228, 229, - 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, - 240, 241, 242, 243, 244, 246, 248, 249, 268, 279, - 280, 281, 282, 283, 284, 287, 288, 289, 290, 292, - 293, 294, 298, 254, 253, 256, 268, 255, 76, 188, - 190, 208, 191, 230, 243, 247, 268, 114, 274, 76, - 276, 277, 211, 275, 209, 189, 193, 209, 209, 280, - 188, 188, 209, 209, 246, 188, 246, 207, 188, 230, - 230, 246, 211, 287, 84, 85, 190, 192, 189, 189, - 193, 74, 244, 188, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 208, 245, 230, 198, 199, 200, - 194, 195, 82, 83, 86, 87, 201, 202, 88, 89, - 203, 204, 205, 90, 92, 91, 206, 193, 209, 211, - 280, 76, 253, 256, 190, 208, 191, 247, 244, 278, - 191, 211, 190, 193, 209, 263, 75, 279, 288, 295, - 246, 209, 246, 207, 246, 259, 291, 189, 211, 222, - 246, 76, 225, 244, 244, 230, 230, 230, 232, 232, - 233, 233, 234, 234, 234, 234, 235, 235, 236, 237, - 238, 239, 240, 241, 246, 244, 190, 191, 247, 278, - 208, 191, 247, 277, 188, 291, 296, 297, 189, 189, - 76, 189, 191, 207, 247, 208, 191, 278, 208, 191, - 246, 209, 189, 281, 282, 284, 208, 14, 283, 285, - 286, 244, 191, 278, 208, 278, 189, 246, 285, 12, - 278, 188, 278, 209, 281, 282, 246, 189, 281, 12 + 76, 103, 104, 105, 106, 108, 116, 117, 118, 119, + 120, 154, 156, 219, 222, 252, 253, 254, 255, 256, + 261, 262, 263, 264, 265, 268, 270, 271, 272, 273, + 274, 275, 276, 277, 303, 304, 112, 33, 34, 37, + 76, 213, 76, 103, 270, 276, 113, 113, 113, 113, + 191, 303, 212, 213, 290, 192, 196, 4, 33, 34, + 35, 258, 259, 269, 196, 212, 76, 33, 37, 270, + 272, 193, 273, 76, 213, 272, 278, 279, 273, 76, + 266, 267, 9, 10, 11, 13, 14, 15, 16, 17, + 18, 19, 75, 76, 77, 78, 79, 80, 81, 84, + 85, 191, 197, 198, 199, 200, 212, 213, 214, 223, + 224, 225, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, + 245, 246, 247, 248, 250, 252, 253, 272, 283, 284, + 285, 286, 287, 288, 291, 292, 293, 294, 296, 297, + 298, 302, 258, 257, 260, 272, 259, 76, 191, 193, + 211, 194, 234, 247, 251, 272, 113, 278, 76, 280, + 281, 214, 279, 212, 192, 196, 212, 212, 284, 191, + 191, 212, 212, 250, 191, 250, 210, 191, 234, 234, + 250, 214, 291, 84, 85, 193, 195, 192, 192, 196, + 74, 248, 191, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 211, 249, 234, 201, 202, 203, 197, + 198, 82, 83, 86, 87, 204, 205, 88, 89, 206, + 207, 208, 90, 92, 91, 209, 196, 212, 214, 284, + 76, 257, 260, 193, 211, 194, 251, 248, 282, 194, + 214, 193, 196, 212, 267, 75, 283, 292, 299, 250, + 212, 250, 210, 250, 263, 295, 192, 214, 226, 250, + 76, 229, 248, 248, 234, 234, 234, 236, 236, 237, + 237, 238, 238, 238, 238, 239, 239, 240, 241, 242, + 243, 244, 245, 250, 248, 193, 194, 251, 282, 211, + 194, 251, 281, 191, 295, 300, 301, 192, 192, 76, + 192, 194, 210, 251, 211, 194, 282, 211, 194, 250, + 212, 192, 285, 286, 288, 211, 14, 287, 289, 290, + 248, 194, 282, 211, 282, 192, 250, 289, 12, 282, + 191, 282, 212, 285, 286, 250, 192, 285, 12 }; #define yyerrok (yyerrstatus = 0) @@ -2019,18 +2034,9 @@ static const yytype_uint16 yystos[] = /* Like YYERROR except do call yyerror. This remains here temporarily to ease the transition to the new meaning of YYERROR, for GCC. - Once GCC version 2 has supplanted version 1, this can go. However, - YYFAIL appears to be in use. Nevertheless, it is formally deprecated - in Bison 2.4.2's NEWS entry, where a plan to phase it out is - discussed. */ + Once GCC version 2 has supplanted version 1, this can go. */ #define YYFAIL goto yyerrlab -#if defined YYFAIL - /* This is here to suppress warnings from the GCC cpp's - -Wunused-macros. Normally we don't worry about that warning, but - some users do, and we want to make it easy for users to remove - YYFAIL uses, which will produce warnings from Bison 2.5. */ -#endif #define YYRECOVERING() (!!yyerrstatus) @@ -2087,7 +2093,7 @@ while (YYID (0)) we won't break user code: when these are the locations we know. */ #ifndef YY_LOCATION_PRINT -# if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +# if YYLTYPE_IS_TRIVIAL # define YY_LOCATION_PRINT(File, Loc) \ fprintf (File, "%d.%d-%d.%d", \ (Loc).first_line, (Loc).first_column, \ @@ -2629,7 +2635,7 @@ YYLTYPE yylloc; YYLTYPE *yylsp; /* The locations where the error started and ended. */ - YYLTYPE yyerror_range[3]; + YYLTYPE yyerror_range[2]; YYSIZE_T yystacksize; @@ -2676,7 +2682,7 @@ YYLTYPE yylloc; yyvsp = yyvs; yylsp = yyls; -#if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL +#if YYLTYPE_IS_TRIVIAL /* Initialize the default location before parsing starts. */ yylloc.first_line = yylloc.last_line = 1; yylloc.first_column = yylloc.last_column = 1; @@ -2684,7 +2690,7 @@ YYLTYPE yylloc; /* User initialization code. */ -/* Line 1251 of yacc.c */ +/* Line 1242 of yacc.c */ #line 41 "glsl_parser.ypp" { yylloc.first_line = 1; @@ -2694,8 +2700,8 @@ YYLTYPE yylloc; yylloc.source = 0; } -/* Line 1251 of yacc.c */ -#line 2699 "glsl_parser.cpp" +/* Line 1242 of yacc.c */ +#line 2705 "glsl_parser.cpp" yylsp[0] = yylloc; goto yysetstate; @@ -2882,8 +2888,8 @@ yyreduce: { case 2: -/* Line 1464 of yacc.c */ -#line 209 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 211 "glsl_parser.ypp" { _mesa_glsl_initialize_types(state); ;} @@ -2891,8 +2897,8 @@ yyreduce: case 4: -/* Line 1464 of yacc.c */ -#line 217 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 219 "glsl_parser.ypp" { state->language_version = 110; state->symbols->language_version = 110; @@ -2901,8 +2907,8 @@ yyreduce: case 5: -/* Line 1464 of yacc.c */ -#line 222 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 224 "glsl_parser.ypp" { switch ((yyvsp[(2) - (3)].n)) { case 110: @@ -2920,10 +2926,10 @@ yyreduce: ;} break; - case 8: + case 12: -/* Line 1464 of yacc.c */ -#line 246 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 255 "glsl_parser.ypp" { if (!_mesa_glsl_process_extension((yyvsp[(2) - (5)].identifier), & (yylsp[(2) - (5)]), (yyvsp[(4) - (5)].identifier), & (yylsp[(4) - (5)]), state)) { YYERROR; @@ -2931,10 +2937,10 @@ yyreduce: ;} break; - case 9: + case 13: -/* Line 1464 of yacc.c */ -#line 255 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 264 "glsl_parser.ypp" { /* FINISHME: The NULL test is only required because 'precision' * FINISHME: statements are not yet supported. @@ -2944,10 +2950,10 @@ yyreduce: ;} break; - case 10: + case 14: -/* Line 1464 of yacc.c */ -#line 263 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 272 "glsl_parser.ypp" { /* FINISHME: The NULL test is only required because 'precision' * FINISHME: statements are not yet supported. @@ -2957,10 +2963,10 @@ yyreduce: ;} break; - case 12: + case 16: -/* Line 1464 of yacc.c */ -#line 278 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 287 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_identifier, NULL, NULL, NULL); @@ -2969,10 +2975,10 @@ yyreduce: ;} break; - case 13: + case 17: -/* Line 1464 of yacc.c */ -#line 285 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 294 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_int_constant, NULL, NULL, NULL); @@ -2981,10 +2987,10 @@ yyreduce: ;} break; - case 14: + case 18: -/* Line 1464 of yacc.c */ -#line 292 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 301 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_uint_constant, NULL, NULL, NULL); @@ -2993,10 +2999,10 @@ yyreduce: ;} break; - case 15: + case 19: -/* Line 1464 of yacc.c */ -#line 299 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 308 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_float_constant, NULL, NULL, NULL); @@ -3005,10 +3011,10 @@ yyreduce: ;} break; - case 16: + case 20: -/* Line 1464 of yacc.c */ -#line 306 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 315 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_bool_constant, NULL, NULL, NULL); @@ -3017,19 +3023,19 @@ yyreduce: ;} break; - case 17: + case 21: -/* Line 1464 of yacc.c */ -#line 313 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 322 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(2) - (3)].expression); ;} break; - case 19: + case 23: -/* Line 1464 of yacc.c */ -#line 321 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 330 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_array_index, (yyvsp[(1) - (4)].expression), (yyvsp[(3) - (4)].expression), NULL); @@ -3037,19 +3043,19 @@ yyreduce: ;} break; - case 20: + case 24: -/* Line 1464 of yacc.c */ -#line 327 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 336 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (1)].expression); ;} break; - case 21: + case 25: -/* Line 1464 of yacc.c */ -#line 331 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 340 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_field_selection, (yyvsp[(1) - (3)].expression), NULL, NULL); @@ -3058,10 +3064,10 @@ yyreduce: ;} break; - case 22: + case 26: -/* Line 1464 of yacc.c */ -#line 338 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 347 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_post_inc, (yyvsp[(1) - (2)].expression), NULL, NULL); @@ -3069,10 +3075,10 @@ yyreduce: ;} break; - case 23: + case 27: -/* Line 1464 of yacc.c */ -#line 344 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 353 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_post_dec, (yyvsp[(1) - (2)].expression), NULL, NULL); @@ -3080,10 +3086,10 @@ yyreduce: ;} break; - case 27: + case 31: -/* Line 1464 of yacc.c */ -#line 362 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 371 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_field_selection, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression), NULL); @@ -3091,10 +3097,10 @@ yyreduce: ;} break; - case 32: + case 36: -/* Line 1464 of yacc.c */ -#line 381 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 390 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (2)].expression); (yyval.expression)->set_location(yylloc); @@ -3102,10 +3108,10 @@ yyreduce: ;} break; - case 33: + case 37: -/* Line 1464 of yacc.c */ -#line 387 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 396 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (3)].expression); (yyval.expression)->set_location(yylloc); @@ -3113,10 +3119,10 @@ yyreduce: ;} break; - case 35: + case 39: -/* Line 1464 of yacc.c */ -#line 403 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 412 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_function_expression((yyvsp[(1) - (1)].type_specifier)); @@ -3124,10 +3130,10 @@ yyreduce: ;} break; - case 36: + case 40: -/* Line 1464 of yacc.c */ -#line 409 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 418 "glsl_parser.ypp" { void *ctx = state; ast_expression *callee = new(ctx) ast_expression((yyvsp[(1) - (1)].identifier)); @@ -3136,10 +3142,10 @@ yyreduce: ;} break; - case 37: + case 41: -/* Line 1464 of yacc.c */ -#line 416 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 425 "glsl_parser.ypp" { void *ctx = state; ast_expression *callee = new(ctx) ast_expression((yyvsp[(1) - (1)].identifier)); @@ -3148,10 +3154,10 @@ yyreduce: ;} break; - case 39: + case 43: -/* Line 1464 of yacc.c */ -#line 428 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 437 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_pre_inc, (yyvsp[(2) - (2)].expression), NULL, NULL); @@ -3159,10 +3165,10 @@ yyreduce: ;} break; - case 40: + case 44: -/* Line 1464 of yacc.c */ -#line 434 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 443 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_pre_dec, (yyvsp[(2) - (2)].expression), NULL, NULL); @@ -3170,10 +3176,10 @@ yyreduce: ;} break; - case 41: + case 45: -/* Line 1464 of yacc.c */ -#line 440 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 449 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression((yyvsp[(1) - (2)].n), (yyvsp[(2) - (2)].expression), NULL, NULL); @@ -3181,38 +3187,38 @@ yyreduce: ;} break; - case 42: + case 46: -/* Line 1464 of yacc.c */ -#line 449 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 458 "glsl_parser.ypp" { (yyval.n) = ast_plus; ;} break; - case 43: + case 47: -/* Line 1464 of yacc.c */ -#line 450 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 459 "glsl_parser.ypp" { (yyval.n) = ast_neg; ;} break; - case 44: + case 48: -/* Line 1464 of yacc.c */ -#line 451 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 460 "glsl_parser.ypp" { (yyval.n) = ast_logic_not; ;} break; - case 45: + case 49: -/* Line 1464 of yacc.c */ -#line 452 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 461 "glsl_parser.ypp" { (yyval.n) = ast_bit_not; ;} break; - case 47: + case 51: -/* Line 1464 of yacc.c */ -#line 458 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 467 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_mul, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3220,10 +3226,10 @@ yyreduce: ;} break; - case 48: + case 52: -/* Line 1464 of yacc.c */ -#line 464 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 473 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_div, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3231,10 +3237,10 @@ yyreduce: ;} break; - case 49: + case 53: -/* Line 1464 of yacc.c */ -#line 470 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 479 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_mod, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3242,10 +3248,10 @@ yyreduce: ;} break; - case 51: + case 55: -/* Line 1464 of yacc.c */ -#line 480 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 489 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_add, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3253,10 +3259,10 @@ yyreduce: ;} break; - case 52: + case 56: -/* Line 1464 of yacc.c */ -#line 486 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 495 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_sub, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3264,10 +3270,10 @@ yyreduce: ;} break; - case 54: + case 58: -/* Line 1464 of yacc.c */ -#line 496 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 505 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_lshift, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3275,10 +3281,10 @@ yyreduce: ;} break; - case 55: + case 59: -/* Line 1464 of yacc.c */ -#line 502 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 511 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_rshift, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3286,10 +3292,10 @@ yyreduce: ;} break; - case 57: + case 61: -/* Line 1464 of yacc.c */ -#line 512 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 521 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_less, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3297,10 +3303,10 @@ yyreduce: ;} break; - case 58: + case 62: -/* Line 1464 of yacc.c */ -#line 518 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 527 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_greater, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3308,10 +3314,10 @@ yyreduce: ;} break; - case 59: + case 63: -/* Line 1464 of yacc.c */ -#line 524 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 533 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_lequal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3319,10 +3325,10 @@ yyreduce: ;} break; - case 60: + case 64: -/* Line 1464 of yacc.c */ -#line 530 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 539 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_gequal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3330,10 +3336,10 @@ yyreduce: ;} break; - case 62: + case 66: -/* Line 1464 of yacc.c */ -#line 540 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 549 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_equal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3341,10 +3347,10 @@ yyreduce: ;} break; - case 63: + case 67: -/* Line 1464 of yacc.c */ -#line 546 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 555 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_nequal, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3352,10 +3358,10 @@ yyreduce: ;} break; - case 65: + case 69: -/* Line 1464 of yacc.c */ -#line 556 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 565 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_bit_or, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3363,10 +3369,10 @@ yyreduce: ;} break; - case 67: + case 71: -/* Line 1464 of yacc.c */ -#line 566 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 575 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_bit_xor, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3374,10 +3380,10 @@ yyreduce: ;} break; - case 69: + case 73: -/* Line 1464 of yacc.c */ -#line 576 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 585 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_bit_or, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3385,10 +3391,10 @@ yyreduce: ;} break; - case 71: + case 75: -/* Line 1464 of yacc.c */ -#line 586 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 595 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_logic_and, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3396,10 +3402,10 @@ yyreduce: ;} break; - case 73: + case 77: -/* Line 1464 of yacc.c */ -#line 596 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 605 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_logic_xor, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3407,10 +3413,10 @@ yyreduce: ;} break; - case 75: + case 79: -/* Line 1464 of yacc.c */ -#line 606 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 615 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression_bin(ast_logic_or, (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression)); @@ -3418,10 +3424,10 @@ yyreduce: ;} break; - case 77: + case 81: -/* Line 1464 of yacc.c */ -#line 616 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 625 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression(ast_conditional, (yyvsp[(1) - (5)].expression), (yyvsp[(3) - (5)].expression), (yyvsp[(5) - (5)].expression)); @@ -3429,10 +3435,10 @@ yyreduce: ;} break; - case 79: + case 83: -/* Line 1464 of yacc.c */ -#line 626 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 635 "glsl_parser.ypp" { void *ctx = state; (yyval.expression) = new(ctx) ast_expression((yyvsp[(2) - (3)].n), (yyvsp[(1) - (3)].expression), (yyvsp[(3) - (3)].expression), NULL); @@ -3440,96 +3446,96 @@ yyreduce: ;} break; - case 80: + case 84: -/* Line 1464 of yacc.c */ -#line 634 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 643 "glsl_parser.ypp" { (yyval.n) = ast_assign; ;} break; - case 81: + case 85: -/* Line 1464 of yacc.c */ -#line 635 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 644 "glsl_parser.ypp" { (yyval.n) = ast_mul_assign; ;} break; - case 82: + case 86: -/* Line 1464 of yacc.c */ -#line 636 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 645 "glsl_parser.ypp" { (yyval.n) = ast_div_assign; ;} break; - case 83: + case 87: -/* Line 1464 of yacc.c */ -#line 637 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 646 "glsl_parser.ypp" { (yyval.n) = ast_mod_assign; ;} break; - case 84: + case 88: -/* Line 1464 of yacc.c */ -#line 638 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 647 "glsl_parser.ypp" { (yyval.n) = ast_add_assign; ;} break; - case 85: + case 89: -/* Line 1464 of yacc.c */ -#line 639 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 648 "glsl_parser.ypp" { (yyval.n) = ast_sub_assign; ;} break; - case 86: + case 90: -/* Line 1464 of yacc.c */ -#line 640 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 649 "glsl_parser.ypp" { (yyval.n) = ast_ls_assign; ;} break; - case 87: + case 91: -/* Line 1464 of yacc.c */ -#line 641 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 650 "glsl_parser.ypp" { (yyval.n) = ast_rs_assign; ;} break; - case 88: + case 92: -/* Line 1464 of yacc.c */ -#line 642 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 651 "glsl_parser.ypp" { (yyval.n) = ast_and_assign; ;} break; - case 89: + case 93: -/* Line 1464 of yacc.c */ -#line 643 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 652 "glsl_parser.ypp" { (yyval.n) = ast_xor_assign; ;} break; - case 90: + case 94: -/* Line 1464 of yacc.c */ -#line 644 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 653 "glsl_parser.ypp" { (yyval.n) = ast_or_assign; ;} break; - case 91: + case 95: -/* Line 1464 of yacc.c */ -#line 649 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 658 "glsl_parser.ypp" { (yyval.expression) = (yyvsp[(1) - (1)].expression); ;} break; - case 92: + case 96: -/* Line 1464 of yacc.c */ -#line 653 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 662 "glsl_parser.ypp" { void *ctx = state; if ((yyvsp[(1) - (3)].expression)->oper != ast_sequence) { @@ -3544,28 +3550,28 @@ yyreduce: ;} break; - case 94: + case 98: -/* Line 1464 of yacc.c */ -#line 673 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 682 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (2)].function); ;} break; - case 95: + case 99: -/* Line 1464 of yacc.c */ -#line 677 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 686 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (2)].declarator_list); ;} break; - case 96: + case 100: -/* Line 1464 of yacc.c */ -#line 681 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 690 "glsl_parser.ypp" { if (((yyvsp[(3) - (4)].type_specifier)->type_specifier != ast_float) && ((yyvsp[(3) - (4)].type_specifier)->type_specifier != ast_int)) { @@ -3578,30 +3584,30 @@ yyreduce: ;} break; - case 100: + case 104: -/* Line 1464 of yacc.c */ -#line 704 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 713 "glsl_parser.ypp" { (yyval.function) = (yyvsp[(1) - (2)].function); (yyval.function)->parameters.push_tail(& (yyvsp[(2) - (2)].parameter_declarator)->link); ;} break; - case 101: + case 105: -/* Line 1464 of yacc.c */ -#line 709 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 718 "glsl_parser.ypp" { (yyval.function) = (yyvsp[(1) - (3)].function); (yyval.function)->parameters.push_tail(& (yyvsp[(3) - (3)].parameter_declarator)->link); ;} break; - case 102: + case 106: -/* Line 1464 of yacc.c */ -#line 717 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 726 "glsl_parser.ypp" { void *ctx = state; (yyval.function) = new(ctx) ast_function(); @@ -3611,10 +3617,10 @@ yyreduce: ;} break; - case 103: + case 107: -/* Line 1464 of yacc.c */ -#line 728 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 737 "glsl_parser.ypp" { void *ctx = state; (yyval.parameter_declarator) = new(ctx) ast_parameter_declarator(); @@ -3626,10 +3632,10 @@ yyreduce: ;} break; - case 104: + case 108: -/* Line 1464 of yacc.c */ -#line 738 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 747 "glsl_parser.ypp" { void *ctx = state; (yyval.parameter_declarator) = new(ctx) ast_parameter_declarator(); @@ -3643,10 +3649,10 @@ yyreduce: ;} break; - case 105: + case 109: -/* Line 1464 of yacc.c */ -#line 753 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 762 "glsl_parser.ypp" { (yyvsp[(1) - (3)].type_qualifier).i |= (yyvsp[(2) - (3)].type_qualifier).i; @@ -3655,20 +3661,20 @@ yyreduce: ;} break; - case 106: + case 110: -/* Line 1464 of yacc.c */ -#line 760 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 769 "glsl_parser.ypp" { (yyval.parameter_declarator) = (yyvsp[(2) - (2)].parameter_declarator); (yyval.parameter_declarator)->type->qualifier = (yyvsp[(1) - (2)].type_qualifier).q; ;} break; - case 107: + case 111: -/* Line 1464 of yacc.c */ -#line 765 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 774 "glsl_parser.ypp" { void *ctx = state; (yyvsp[(1) - (3)].type_qualifier).i |= (yyvsp[(2) - (3)].type_qualifier).i; @@ -3681,10 +3687,10 @@ yyreduce: ;} break; - case 108: + case 112: -/* Line 1464 of yacc.c */ -#line 776 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 785 "glsl_parser.ypp" { void *ctx = state; (yyval.parameter_declarator) = new(ctx) ast_parameter_declarator(); @@ -3695,38 +3701,38 @@ yyreduce: ;} break; - case 109: + case 113: -/* Line 1464 of yacc.c */ -#line 787 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 796 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; ;} break; - case 110: + case 114: -/* Line 1464 of yacc.c */ -#line 788 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 797 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.in = 1; ;} break; - case 111: + case 115: -/* Line 1464 of yacc.c */ -#line 789 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 798 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.out = 1; ;} break; - case 112: + case 116: -/* Line 1464 of yacc.c */ -#line 790 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 799 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.in = 1; (yyval.type_qualifier).q.out = 1; ;} break; - case 115: + case 119: -/* Line 1464 of yacc.c */ -#line 800 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 809 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (3)].identifier), false, NULL, NULL); @@ -3737,10 +3743,10 @@ yyreduce: ;} break; - case 116: + case 120: -/* Line 1464 of yacc.c */ -#line 809 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 818 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (5)].identifier), true, NULL, NULL); @@ -3751,10 +3757,10 @@ yyreduce: ;} break; - case 117: + case 121: -/* Line 1464 of yacc.c */ -#line 818 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 827 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (6)].identifier), true, (yyvsp[(5) - (6)].expression), NULL); @@ -3765,10 +3771,10 @@ yyreduce: ;} break; - case 118: + case 122: -/* Line 1464 of yacc.c */ -#line 827 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 836 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (7)].identifier), true, NULL, (yyvsp[(7) - (7)].expression)); @@ -3779,10 +3785,10 @@ yyreduce: ;} break; - case 119: + case 123: -/* Line 1464 of yacc.c */ -#line 836 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 845 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (8)].identifier), true, (yyvsp[(5) - (8)].expression), (yyvsp[(8) - (8)].expression)); @@ -3793,10 +3799,10 @@ yyreduce: ;} break; - case 120: + case 124: -/* Line 1464 of yacc.c */ -#line 845 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 854 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(3) - (5)].identifier), false, NULL, (yyvsp[(5) - (5)].expression)); @@ -3807,10 +3813,10 @@ yyreduce: ;} break; - case 121: + case 125: -/* Line 1464 of yacc.c */ -#line 858 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 867 "glsl_parser.ypp" { void *ctx = state; if ((yyvsp[(1) - (1)].fully_specified_type)->specifier->type_specifier != ast_struct) { @@ -3823,10 +3829,10 @@ yyreduce: ;} break; - case 122: + case 126: -/* Line 1464 of yacc.c */ -#line 869 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 878 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (2)].identifier), false, NULL, NULL); @@ -3837,10 +3843,10 @@ yyreduce: ;} break; - case 123: + case 127: -/* Line 1464 of yacc.c */ -#line 878 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 887 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (4)].identifier), true, NULL, NULL); @@ -3851,10 +3857,10 @@ yyreduce: ;} break; - case 124: + case 128: -/* Line 1464 of yacc.c */ -#line 887 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 896 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (5)].identifier), true, (yyvsp[(4) - (5)].expression), NULL); @@ -3865,10 +3871,10 @@ yyreduce: ;} break; - case 125: + case 129: -/* Line 1464 of yacc.c */ -#line 896 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 905 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (6)].identifier), true, NULL, (yyvsp[(6) - (6)].expression)); @@ -3879,10 +3885,10 @@ yyreduce: ;} break; - case 126: + case 130: -/* Line 1464 of yacc.c */ -#line 905 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 914 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (7)].identifier), true, (yyvsp[(4) - (7)].expression), (yyvsp[(7) - (7)].expression)); @@ -3893,10 +3899,10 @@ yyreduce: ;} break; - case 127: + case 131: -/* Line 1464 of yacc.c */ -#line 914 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 923 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (4)].identifier), false, NULL, (yyvsp[(4) - (4)].expression)); @@ -3907,10 +3913,10 @@ yyreduce: ;} break; - case 128: + case 132: -/* Line 1464 of yacc.c */ -#line 923 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 932 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (2)].identifier), false, NULL, NULL); @@ -3923,10 +3929,10 @@ yyreduce: ;} break; - case 129: + case 133: -/* Line 1464 of yacc.c */ -#line 937 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 946 "glsl_parser.ypp" { void *ctx = state; (yyval.fully_specified_type) = new(ctx) ast_fully_specified_type(); @@ -3935,10 +3941,10 @@ yyreduce: ;} break; - case 130: + case 134: -/* Line 1464 of yacc.c */ -#line 944 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 953 "glsl_parser.ypp" { void *ctx = state; (yyval.fully_specified_type) = new(ctx) ast_fully_specified_type(); @@ -3948,35 +3954,35 @@ yyreduce: ;} break; - case 131: + case 135: -/* Line 1464 of yacc.c */ -#line 954 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 963 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; ;} break; - case 133: + case 137: -/* Line 1464 of yacc.c */ -#line 960 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 969 "glsl_parser.ypp" { (yyval.type_qualifier) = (yyvsp[(3) - (4)].type_qualifier); ;} break; - case 135: + case 139: -/* Line 1464 of yacc.c */ -#line 968 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 977 "glsl_parser.ypp" { (yyval.type_qualifier).i = (yyvsp[(1) - (3)].type_qualifier).i | (yyvsp[(3) - (3)].type_qualifier).i; ;} break; - case 136: + case 140: -/* Line 1464 of yacc.c */ -#line 975 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 984 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; @@ -4009,130 +4015,130 @@ yyreduce: ;} break; - case 137: + case 141: -/* Line 1464 of yacc.c */ -#line 1008 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1017 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.smooth = 1; ;} break; - case 138: + case 142: -/* Line 1464 of yacc.c */ -#line 1009 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1018 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.flat = 1; ;} break; - case 139: + case 143: -/* Line 1464 of yacc.c */ -#line 1010 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1019 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.noperspective = 1; ;} break; - case 140: + case 144: -/* Line 1464 of yacc.c */ -#line 1014 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1023 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.constant = 1; ;} break; - case 142: + case 146: -/* Line 1464 of yacc.c */ -#line 1020 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1029 "glsl_parser.ypp" { (yyval.type_qualifier).i = (yyvsp[(1) - (2)].type_qualifier).i | (yyvsp[(2) - (2)].type_qualifier).i; ;} break; - case 143: + case 147: -/* Line 1464 of yacc.c */ -#line 1024 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1033 "glsl_parser.ypp" { (yyval.type_qualifier) = (yyvsp[(2) - (2)].type_qualifier); (yyval.type_qualifier).q.invariant = 1; ;} break; - case 144: + case 148: -/* Line 1464 of yacc.c */ -#line 1031 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1040 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.constant = 1; ;} break; - case 145: + case 149: -/* Line 1464 of yacc.c */ -#line 1032 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1041 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.attribute = 1; ;} break; - case 146: + case 150: -/* Line 1464 of yacc.c */ -#line 1033 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1042 "glsl_parser.ypp" { (yyval.type_qualifier).i = (yyvsp[(1) - (2)].type_qualifier).i; (yyval.type_qualifier).q.varying = 1; ;} break; - case 147: + case 151: -/* Line 1464 of yacc.c */ -#line 1034 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1043 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.centroid = 1; (yyval.type_qualifier).q.varying = 1; ;} break; - case 148: + case 152: -/* Line 1464 of yacc.c */ -#line 1035 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1044 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.in = 1; ;} break; - case 149: + case 153: -/* Line 1464 of yacc.c */ -#line 1036 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1045 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.out = 1; ;} break; - case 150: + case 154: -/* Line 1464 of yacc.c */ -#line 1037 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1046 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.centroid = 1; (yyval.type_qualifier).q.in = 1; ;} break; - case 151: + case 155: -/* Line 1464 of yacc.c */ -#line 1038 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1047 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.centroid = 1; (yyval.type_qualifier).q.out = 1; ;} break; - case 152: + case 156: -/* Line 1464 of yacc.c */ -#line 1039 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1048 "glsl_parser.ypp" { (yyval.type_qualifier).i = 0; (yyval.type_qualifier).q.uniform = 1; ;} break; - case 154: + case 158: -/* Line 1464 of yacc.c */ -#line 1045 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1054 "glsl_parser.ypp" { (yyval.type_specifier) = (yyvsp[(2) - (2)].type_specifier); (yyval.type_specifier)->precision = (yyvsp[(1) - (2)].n); ;} break; - case 156: + case 160: -/* Line 1464 of yacc.c */ -#line 1054 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1063 "glsl_parser.ypp" { (yyval.type_specifier) = (yyvsp[(1) - (3)].type_specifier); (yyval.type_specifier)->is_array = true; @@ -4140,10 +4146,10 @@ yyreduce: ;} break; - case 157: + case 161: -/* Line 1464 of yacc.c */ -#line 1060 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1069 "glsl_parser.ypp" { (yyval.type_specifier) = (yyvsp[(1) - (4)].type_specifier); (yyval.type_specifier)->is_array = true; @@ -4151,10 +4157,10 @@ yyreduce: ;} break; - case 158: + case 162: -/* Line 1464 of yacc.c */ -#line 1069 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1078 "glsl_parser.ypp" { void *ctx = state; (yyval.type_specifier) = new(ctx) ast_type_specifier((yyvsp[(1) - (1)].n)); @@ -4162,10 +4168,10 @@ yyreduce: ;} break; - case 159: + case 163: -/* Line 1464 of yacc.c */ -#line 1075 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1084 "glsl_parser.ypp" { void *ctx = state; (yyval.type_specifier) = new(ctx) ast_type_specifier((yyvsp[(1) - (1)].struct_specifier)); @@ -4173,10 +4179,10 @@ yyreduce: ;} break; - case 160: + case 164: -/* Line 1464 of yacc.c */ -#line 1081 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1090 "glsl_parser.ypp" { void *ctx = state; (yyval.type_specifier) = new(ctx) ast_type_specifier((yyvsp[(1) - (1)].identifier)); @@ -4184,367 +4190,367 @@ yyreduce: ;} break; - case 161: + case 165: -/* Line 1464 of yacc.c */ -#line 1089 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1098 "glsl_parser.ypp" { (yyval.n) = ast_void; ;} break; - case 162: + case 166: -/* Line 1464 of yacc.c */ -#line 1090 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1099 "glsl_parser.ypp" { (yyval.n) = ast_float; ;} break; - case 163: + case 167: -/* Line 1464 of yacc.c */ -#line 1091 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1100 "glsl_parser.ypp" { (yyval.n) = ast_int; ;} break; - case 164: + case 168: -/* Line 1464 of yacc.c */ -#line 1092 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1101 "glsl_parser.ypp" { (yyval.n) = ast_uint; ;} break; - case 165: + case 169: -/* Line 1464 of yacc.c */ -#line 1093 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1102 "glsl_parser.ypp" { (yyval.n) = ast_bool; ;} break; - case 166: + case 170: -/* Line 1464 of yacc.c */ -#line 1094 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1103 "glsl_parser.ypp" { (yyval.n) = ast_vec2; ;} break; - case 167: + case 171: -/* Line 1464 of yacc.c */ -#line 1095 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1104 "glsl_parser.ypp" { (yyval.n) = ast_vec3; ;} break; - case 168: + case 172: -/* Line 1464 of yacc.c */ -#line 1096 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1105 "glsl_parser.ypp" { (yyval.n) = ast_vec4; ;} break; - case 169: + case 173: -/* Line 1464 of yacc.c */ -#line 1097 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1106 "glsl_parser.ypp" { (yyval.n) = ast_bvec2; ;} break; - case 170: + case 174: -/* Line 1464 of yacc.c */ -#line 1098 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1107 "glsl_parser.ypp" { (yyval.n) = ast_bvec3; ;} break; - case 171: + case 175: -/* Line 1464 of yacc.c */ -#line 1099 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1108 "glsl_parser.ypp" { (yyval.n) = ast_bvec4; ;} break; - case 172: + case 176: -/* Line 1464 of yacc.c */ -#line 1100 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1109 "glsl_parser.ypp" { (yyval.n) = ast_ivec2; ;} break; - case 173: + case 177: -/* Line 1464 of yacc.c */ -#line 1101 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1110 "glsl_parser.ypp" { (yyval.n) = ast_ivec3; ;} break; - case 174: + case 178: -/* Line 1464 of yacc.c */ -#line 1102 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1111 "glsl_parser.ypp" { (yyval.n) = ast_ivec4; ;} break; - case 175: + case 179: -/* Line 1464 of yacc.c */ -#line 1103 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1112 "glsl_parser.ypp" { (yyval.n) = ast_uvec2; ;} break; - case 176: + case 180: -/* Line 1464 of yacc.c */ -#line 1104 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1113 "glsl_parser.ypp" { (yyval.n) = ast_uvec3; ;} break; - case 177: + case 181: -/* Line 1464 of yacc.c */ -#line 1105 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1114 "glsl_parser.ypp" { (yyval.n) = ast_uvec4; ;} break; - case 178: + case 182: -/* Line 1464 of yacc.c */ -#line 1106 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1115 "glsl_parser.ypp" { (yyval.n) = ast_mat2; ;} break; - case 179: + case 183: -/* Line 1464 of yacc.c */ -#line 1107 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1116 "glsl_parser.ypp" { (yyval.n) = ast_mat2x3; ;} break; - case 180: + case 184: -/* Line 1464 of yacc.c */ -#line 1108 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1117 "glsl_parser.ypp" { (yyval.n) = ast_mat2x4; ;} break; - case 181: + case 185: -/* Line 1464 of yacc.c */ -#line 1109 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1118 "glsl_parser.ypp" { (yyval.n) = ast_mat3x2; ;} break; - case 182: + case 186: -/* Line 1464 of yacc.c */ -#line 1110 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1119 "glsl_parser.ypp" { (yyval.n) = ast_mat3; ;} break; - case 183: + case 187: -/* Line 1464 of yacc.c */ -#line 1111 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1120 "glsl_parser.ypp" { (yyval.n) = ast_mat3x4; ;} break; - case 184: + case 188: -/* Line 1464 of yacc.c */ -#line 1112 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1121 "glsl_parser.ypp" { (yyval.n) = ast_mat4x2; ;} break; - case 185: + case 189: -/* Line 1464 of yacc.c */ -#line 1113 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1122 "glsl_parser.ypp" { (yyval.n) = ast_mat4x3; ;} break; - case 186: + case 190: -/* Line 1464 of yacc.c */ -#line 1114 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1123 "glsl_parser.ypp" { (yyval.n) = ast_mat4; ;} break; - case 187: + case 191: -/* Line 1464 of yacc.c */ -#line 1115 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1124 "glsl_parser.ypp" { (yyval.n) = ast_sampler1d; ;} break; - case 188: + case 192: -/* Line 1464 of yacc.c */ -#line 1116 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1125 "glsl_parser.ypp" { (yyval.n) = ast_sampler2d; ;} break; - case 189: + case 193: -/* Line 1464 of yacc.c */ -#line 1117 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1126 "glsl_parser.ypp" { (yyval.n) = ast_sampler2drect; ;} break; - case 190: + case 194: -/* Line 1464 of yacc.c */ -#line 1118 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1127 "glsl_parser.ypp" { (yyval.n) = ast_sampler3d; ;} break; - case 191: + case 195: -/* Line 1464 of yacc.c */ -#line 1119 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1128 "glsl_parser.ypp" { (yyval.n) = ast_samplercube; ;} break; - case 192: + case 196: -/* Line 1464 of yacc.c */ -#line 1120 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1129 "glsl_parser.ypp" { (yyval.n) = ast_sampler1dshadow; ;} break; - case 193: + case 197: -/* Line 1464 of yacc.c */ -#line 1121 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1130 "glsl_parser.ypp" { (yyval.n) = ast_sampler2dshadow; ;} break; - case 194: + case 198: -/* Line 1464 of yacc.c */ -#line 1122 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1131 "glsl_parser.ypp" { (yyval.n) = ast_sampler2drectshadow; ;} break; - case 195: + case 199: -/* Line 1464 of yacc.c */ -#line 1123 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1132 "glsl_parser.ypp" { (yyval.n) = ast_samplercubeshadow; ;} break; - case 196: + case 200: -/* Line 1464 of yacc.c */ -#line 1124 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1133 "glsl_parser.ypp" { (yyval.n) = ast_sampler1darray; ;} break; - case 197: + case 201: -/* Line 1464 of yacc.c */ -#line 1125 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1134 "glsl_parser.ypp" { (yyval.n) = ast_sampler2darray; ;} break; - case 198: + case 202: -/* Line 1464 of yacc.c */ -#line 1126 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1135 "glsl_parser.ypp" { (yyval.n) = ast_sampler1darrayshadow; ;} break; - case 199: + case 203: -/* Line 1464 of yacc.c */ -#line 1127 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1136 "glsl_parser.ypp" { (yyval.n) = ast_sampler2darrayshadow; ;} break; - case 200: + case 204: -/* Line 1464 of yacc.c */ -#line 1128 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1137 "glsl_parser.ypp" { (yyval.n) = ast_isampler1d; ;} break; - case 201: + case 205: -/* Line 1464 of yacc.c */ -#line 1129 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1138 "glsl_parser.ypp" { (yyval.n) = ast_isampler2d; ;} break; - case 202: + case 206: -/* Line 1464 of yacc.c */ -#line 1130 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1139 "glsl_parser.ypp" { (yyval.n) = ast_isampler3d; ;} break; - case 203: + case 207: -/* Line 1464 of yacc.c */ -#line 1131 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1140 "glsl_parser.ypp" { (yyval.n) = ast_isamplercube; ;} break; - case 204: + case 208: -/* Line 1464 of yacc.c */ -#line 1132 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1141 "glsl_parser.ypp" { (yyval.n) = ast_isampler1darray; ;} break; - case 205: + case 209: -/* Line 1464 of yacc.c */ -#line 1133 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1142 "glsl_parser.ypp" { (yyval.n) = ast_isampler2darray; ;} break; - case 206: + case 210: -/* Line 1464 of yacc.c */ -#line 1134 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1143 "glsl_parser.ypp" { (yyval.n) = ast_usampler1d; ;} break; - case 207: + case 211: -/* Line 1464 of yacc.c */ -#line 1135 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1144 "glsl_parser.ypp" { (yyval.n) = ast_usampler2d; ;} break; - case 208: + case 212: -/* Line 1464 of yacc.c */ -#line 1136 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1145 "glsl_parser.ypp" { (yyval.n) = ast_usampler3d; ;} break; - case 209: + case 213: -/* Line 1464 of yacc.c */ -#line 1137 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1146 "glsl_parser.ypp" { (yyval.n) = ast_usamplercube; ;} break; - case 210: + case 214: -/* Line 1464 of yacc.c */ -#line 1138 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1147 "glsl_parser.ypp" { (yyval.n) = ast_usampler1darray; ;} break; - case 211: + case 215: -/* Line 1464 of yacc.c */ -#line 1139 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1148 "glsl_parser.ypp" { (yyval.n) = ast_usampler2darray; ;} break; - case 212: + case 216: -/* Line 1464 of yacc.c */ -#line 1143 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1152 "glsl_parser.ypp" { if (state->language_version < 130) _mesa_glsl_error(& (yylsp[(1) - (1)]), state, @@ -4558,10 +4564,10 @@ yyreduce: ;} break; - case 213: + case 217: -/* Line 1464 of yacc.c */ -#line 1154 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1163 "glsl_parser.ypp" { if (state->language_version < 130) _mesa_glsl_error(& (yylsp[(1) - (1)]), state, @@ -4575,10 +4581,10 @@ yyreduce: ;} break; - case 214: + case 218: -/* Line 1464 of yacc.c */ -#line 1165 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1174 "glsl_parser.ypp" { if (state->language_version < 130) _mesa_glsl_error(& (yylsp[(1) - (1)]), state, @@ -4592,10 +4598,10 @@ yyreduce: ;} break; - case 215: + case 219: -/* Line 1464 of yacc.c */ -#line 1180 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1189 "glsl_parser.ypp" { void *ctx = state; (yyval.struct_specifier) = new(ctx) ast_struct_specifier((yyvsp[(2) - (5)].identifier), (yyvsp[(4) - (5)].node)); @@ -4603,10 +4609,10 @@ yyreduce: ;} break; - case 216: + case 220: -/* Line 1464 of yacc.c */ -#line 1186 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1195 "glsl_parser.ypp" { void *ctx = state; (yyval.struct_specifier) = new(ctx) ast_struct_specifier(NULL, (yyvsp[(3) - (4)].node)); @@ -4614,30 +4620,30 @@ yyreduce: ;} break; - case 217: + case 221: -/* Line 1464 of yacc.c */ -#line 1195 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1204 "glsl_parser.ypp" { (yyval.node) = (ast_node *) (yyvsp[(1) - (1)].declarator_list); (yyvsp[(1) - (1)].declarator_list)->link.self_link(); ;} break; - case 218: + case 222: -/* Line 1464 of yacc.c */ -#line 1200 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1209 "glsl_parser.ypp" { (yyval.node) = (ast_node *) (yyvsp[(1) - (2)].node); (yyval.node)->link.insert_before(& (yyvsp[(2) - (2)].declarator_list)->link); ;} break; - case 219: + case 223: -/* Line 1464 of yacc.c */ -#line 1208 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1217 "glsl_parser.ypp" { void *ctx = state; ast_fully_specified_type *type = new(ctx) ast_fully_specified_type(); @@ -4651,30 +4657,30 @@ yyreduce: ;} break; - case 220: + case 224: -/* Line 1464 of yacc.c */ -#line 1223 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1232 "glsl_parser.ypp" { (yyval.declaration) = (yyvsp[(1) - (1)].declaration); (yyvsp[(1) - (1)].declaration)->link.self_link(); ;} break; - case 221: + case 225: -/* Line 1464 of yacc.c */ -#line 1228 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1237 "glsl_parser.ypp" { (yyval.declaration) = (yyvsp[(1) - (3)].declaration); (yyval.declaration)->link.insert_before(& (yyvsp[(3) - (3)].declaration)->link); ;} break; - case 222: + case 226: -/* Line 1464 of yacc.c */ -#line 1236 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1245 "glsl_parser.ypp" { void *ctx = state; (yyval.declaration) = new(ctx) ast_declaration((yyvsp[(1) - (1)].identifier), false, NULL, NULL); @@ -4682,10 +4688,10 @@ yyreduce: ;} break; - case 223: + case 227: -/* Line 1464 of yacc.c */ -#line 1242 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1251 "glsl_parser.ypp" { void *ctx = state; (yyval.declaration) = new(ctx) ast_declaration((yyvsp[(1) - (4)].identifier), true, (yyvsp[(3) - (4)].expression), NULL); @@ -4693,31 +4699,31 @@ yyreduce: ;} break; - case 228: + case 232: -/* Line 1464 of yacc.c */ -#line 1265 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1274 "glsl_parser.ypp" { (yyval.node) = (ast_node *) (yyvsp[(1) - (1)].compound_statement); ;} break; - case 234: + case 238: -/* Line 1464 of yacc.c */ -#line 1277 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1286 "glsl_parser.ypp" { (yyval.node) = NULL; ;} break; - case 235: + case 239: -/* Line 1464 of yacc.c */ -#line 1278 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1287 "glsl_parser.ypp" { (yyval.node) = NULL; ;} break; - case 238: + case 242: -/* Line 1464 of yacc.c */ -#line 1285 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1294 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(true, NULL); @@ -4725,10 +4731,10 @@ yyreduce: ;} break; - case 239: + case 243: -/* Line 1464 of yacc.c */ -#line 1291 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1300 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(true, (yyvsp[(2) - (3)].node)); @@ -4736,17 +4742,17 @@ yyreduce: ;} break; - case 240: + case 244: -/* Line 1464 of yacc.c */ -#line 1299 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1308 "glsl_parser.ypp" { (yyval.node) = (ast_node *) (yyvsp[(1) - (1)].compound_statement); ;} break; - case 242: + case 246: -/* Line 1464 of yacc.c */ -#line 1305 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1314 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(false, NULL); @@ -4754,10 +4760,10 @@ yyreduce: ;} break; - case 243: + case 247: -/* Line 1464 of yacc.c */ -#line 1311 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1320 "glsl_parser.ypp" { void *ctx = state; (yyval.compound_statement) = new(ctx) ast_compound_statement(false, (yyvsp[(2) - (3)].node)); @@ -4765,10 +4771,10 @@ yyreduce: ;} break; - case 244: + case 248: -/* Line 1464 of yacc.c */ -#line 1320 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1329 "glsl_parser.ypp" { if ((yyvsp[(1) - (1)].node) == NULL) { _mesa_glsl_error(& (yylsp[(1) - (1)]), state, "<nil> statement\n"); @@ -4780,10 +4786,10 @@ yyreduce: ;} break; - case 245: + case 249: -/* Line 1464 of yacc.c */ -#line 1330 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1339 "glsl_parser.ypp" { if ((yyvsp[(2) - (2)].node) == NULL) { _mesa_glsl_error(& (yylsp[(2) - (2)]), state, "<nil> statement\n"); @@ -4794,10 +4800,10 @@ yyreduce: ;} break; - case 246: + case 250: -/* Line 1464 of yacc.c */ -#line 1342 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1351 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_expression_statement(NULL); @@ -4805,10 +4811,10 @@ yyreduce: ;} break; - case 247: + case 251: -/* Line 1464 of yacc.c */ -#line 1348 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1357 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_expression_statement((yyvsp[(1) - (2)].expression)); @@ -4816,10 +4822,10 @@ yyreduce: ;} break; - case 248: + case 252: -/* Line 1464 of yacc.c */ -#line 1357 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1366 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_selection_statement((yyvsp[(3) - (7)].expression), (yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].node)); @@ -4827,10 +4833,10 @@ yyreduce: ;} break; - case 249: + case 253: -/* Line 1464 of yacc.c */ -#line 1366 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1375 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_selection_statement((yyvsp[(3) - (5)].expression), (yyvsp[(5) - (5)].node), NULL); @@ -4838,10 +4844,10 @@ yyreduce: ;} break; - case 250: + case 254: -/* Line 1464 of yacc.c */ -#line 1372 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1381 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_selection_statement((yyvsp[(3) - (5)].expression), (yyvsp[(5) - (5)].node), NULL); @@ -4849,10 +4855,10 @@ yyreduce: ;} break; - case 251: + case 255: -/* Line 1464 of yacc.c */ -#line 1378 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1387 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_selection_statement((yyvsp[(3) - (7)].expression), (yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].node)); @@ -4860,19 +4866,19 @@ yyreduce: ;} break; - case 252: + case 256: -/* Line 1464 of yacc.c */ -#line 1387 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1396 "glsl_parser.ypp" { (yyval.node) = (ast_node *) (yyvsp[(1) - (1)].expression); ;} break; - case 253: + case 257: -/* Line 1464 of yacc.c */ -#line 1391 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1400 "glsl_parser.ypp" { void *ctx = state; ast_declaration *decl = new(ctx) ast_declaration((yyvsp[(2) - (4)].identifier), false, NULL, (yyvsp[(4) - (4)].expression)); @@ -4885,10 +4891,10 @@ yyreduce: ;} break; - case 257: + case 261: -/* Line 1464 of yacc.c */ -#line 1414 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1423 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_iteration_statement(ast_iteration_statement::ast_while, @@ -4897,10 +4903,10 @@ yyreduce: ;} break; - case 258: + case 262: -/* Line 1464 of yacc.c */ -#line 1421 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1430 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_iteration_statement(ast_iteration_statement::ast_do_while, @@ -4909,10 +4915,10 @@ yyreduce: ;} break; - case 259: + case 263: -/* Line 1464 of yacc.c */ -#line 1428 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1437 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_iteration_statement(ast_iteration_statement::ast_for, @@ -4921,39 +4927,39 @@ yyreduce: ;} break; - case 263: + case 267: -/* Line 1464 of yacc.c */ -#line 1444 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1453 "glsl_parser.ypp" { (yyval.node) = NULL; ;} break; - case 264: + case 268: -/* Line 1464 of yacc.c */ -#line 1451 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1460 "glsl_parser.ypp" { (yyval.for_rest_statement).cond = (yyvsp[(1) - (2)].node); (yyval.for_rest_statement).rest = NULL; ;} break; - case 265: + case 269: -/* Line 1464 of yacc.c */ -#line 1456 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1465 "glsl_parser.ypp" { (yyval.for_rest_statement).cond = (yyvsp[(1) - (3)].node); (yyval.for_rest_statement).rest = (yyvsp[(3) - (3)].expression); ;} break; - case 266: + case 270: -/* Line 1464 of yacc.c */ -#line 1465 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1474 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_continue, NULL); @@ -4961,10 +4967,10 @@ yyreduce: ;} break; - case 267: + case 271: -/* Line 1464 of yacc.c */ -#line 1471 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1480 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_break, NULL); @@ -4972,10 +4978,10 @@ yyreduce: ;} break; - case 268: + case 272: -/* Line 1464 of yacc.c */ -#line 1477 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1486 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_return, NULL); @@ -4983,10 +4989,10 @@ yyreduce: ;} break; - case 269: + case 273: -/* Line 1464 of yacc.c */ -#line 1483 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1492 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_return, (yyvsp[(2) - (3)].expression)); @@ -4994,10 +5000,10 @@ yyreduce: ;} break; - case 270: + case 274: -/* Line 1464 of yacc.c */ -#line 1489 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1498 "glsl_parser.ypp" { void *ctx = state; (yyval.node) = new(ctx) ast_jump_statement(ast_jump_statement::ast_discard, NULL); @@ -5005,24 +5011,31 @@ yyreduce: ;} break; - case 271: + case 275: -/* Line 1464 of yacc.c */ -#line 1497 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1506 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (1)].function_definition); ;} break; - case 272: + case 276: -/* Line 1464 of yacc.c */ -#line 1498 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1507 "glsl_parser.ypp" { (yyval.node) = (yyvsp[(1) - (1)].node); ;} break; - case 273: + case 277: -/* Line 1464 of yacc.c */ -#line 1503 "glsl_parser.ypp" +/* Line 1455 of yacc.c */ +#line 1508 "glsl_parser.ypp" + { (yyval.node) = NULL; ;} + break; + + case 278: + +/* Line 1455 of yacc.c */ +#line 1513 "glsl_parser.ypp" { void *ctx = state; (yyval.function_definition) = new(ctx) ast_function_definition(); @@ -5034,8 +5047,8 @@ yyreduce: -/* Line 1464 of yacc.c */ -#line 5039 "glsl_parser.cpp" +/* Line 1455 of yacc.c */ +#line 5052 "glsl_parser.cpp" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -5107,7 +5120,7 @@ yyerrlab: #endif } - yyerror_range[1] = yylloc; + yyerror_range[0] = yylloc; if (yyerrstatus == 3) { @@ -5144,7 +5157,7 @@ yyerrorlab: if (/*CONSTCOND*/ 0) goto yyerrorlab; - yyerror_range[1] = yylsp[1-yylen]; + yyerror_range[0] = yylsp[1-yylen]; /* Do not reclaim the symbols of the rule which action triggered this YYERROR. */ YYPOPSTACK (yylen); @@ -5178,7 +5191,7 @@ yyerrlab1: if (yyssp == yyss) YYABORT; - yyerror_range[1] = *yylsp; + yyerror_range[0] = *yylsp; yydestruct ("Error: popping", yystos[yystate], yyvsp, yylsp, state); YYPOPSTACK (1); @@ -5188,10 +5201,10 @@ yyerrlab1: *++yyvsp = yylval; - yyerror_range[2] = yylloc; + yyerror_range[1] = yylloc; /* Using YYLLOC is tempting, but would change the location of the lookahead. YYLOC is available though. */ - YYLLOC_DEFAULT (yyloc, yyerror_range, 2); + YYLLOC_DEFAULT (yyloc, (yyerror_range - 1), 2); *++yylsp = yyloc; /* Shift the error token. */ |