diff --git a/src/easymesh/easymesh-compiler.cpp b/src/easymesh/easymesh-compiler.cpp index 10735dd3..ebc71b06 100644 --- a/src/easymesh/easymesh-compiler.cpp +++ b/src/easymesh/easymesh-compiler.cpp @@ -39,13 +39,13 @@ bool EasyMeshCompiler::ParseString(char const *command) void EasyMeshCompiler::Error(const class location& l, const std::string& m) { - Log::Error("Syntax error line %d column %d: %s", + Log::Error("EasyMesh syntax error line %d column %d: %s\n", l.begin.line, l.begin.column, m.c_str()); } void EasyMeshCompiler::Error(const std::string& m) { - Log::Error("Syntax error: %s", m.c_str()); + Log::Error("EasyMesh syntax error: %s\n", m.c_str()); } } /* namespace lol */ diff --git a/src/generated/lolfx-parser.cpp b/src/generated/lolfx-parser.cpp index 6db4d4fb..1765d7c1 100644 --- a/src/generated/lolfx-parser.cpp +++ b/src/generated/lolfx-parser.cpp @@ -67,7 +67,7 @@ /* User implementation prologue. */ /* Line 299 of lalr1.cc */ -#line 243 "gpu/lolfx-parser.y" +#line 241 "gpu/lolfx-parser.y" #include "gpu/lolfx-compiler.h" @@ -460,31 +460,45 @@ namespace lol { YY_REDUCE_PRINT (yyn); switch (yyn) { - case 7: + case 202: /* Line 690 of lalr1.cc */ -#line 729 "gpu/lolfx-parser.y" - { std::cout << "New tech " << (yysemantic_stack_[(5) - (2)].sval) << std::endl; } +#line 728 "gpu/lolfx-parser.y" + { std::cout << "New tech " << std::endl; } break; - case 10: + case 203: /* Line 690 of lalr1.cc */ -#line 742 "gpu/lolfx-parser.y" - { std::cout << "New pass " << (yysemantic_stack_[(5) - (2)].sval) << std::endl; } +#line 736 "gpu/lolfx-parser.y" + { std::cout << "New name " << (yysemantic_stack_[(1) - (1)].sval) << std::endl; } break; - case 29: + case 204: /* Line 690 of lalr1.cc */ -#line 778 "gpu/lolfx-parser.y" +#line 737 "gpu/lolfx-parser.y" + { std::cout << "New name " << (yysemantic_stack_[(1) - (1)].sval) << std::endl; } + break; + + case 207: + +/* Line 690 of lalr1.cc */ +#line 750 "gpu/lolfx-parser.y" + { std::cout << "New pass " << std::endl; } + break; + + case 226: + +/* Line 690 of lalr1.cc */ +#line 786 "gpu/lolfx-parser.y" { std::cout << "new shader" << std::endl; } break; /* Line 690 of lalr1.cc */ -#line 488 "generated/lolfx-parser.cpp" +#line 502 "generated/lolfx-parser.cpp" default: break; } @@ -758,64 +772,77 @@ namespace lol { /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ - const short int LolFxParser::yypact_ninf_ = -432; + const short int LolFxParser::yypact_ninf_ = -534; const short int LolFxParser::yypact_[] = { - -216, 132, -76, 143, -432, -216, -432, -432, 4397, -281, - -432, -432, -276, -432, -432, -432, 107, 115, -432, -432, - -248, 191, -432, -432, -432, 158, -432, -432, -432, -432, - -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, - -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, - -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, - -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, - -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, - -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, - -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, - -432, -432, -432, 120, -432, -432, -432, -432, -432, -432, - -432, -432, -432, -432, -432, -3, -432, -432, -432, -432, - -426, -241, -229, 184, -431, -432, 217, 336, 279, 279, - 3716, -432, -432, -432, -214, 1052, -432, 4397, -432, -432, - 42, 231, -432, -432, -432, -432, 237, -432, 1052, -432, - -432, -157, 4555, 495, -432, -432, -432, 131, -432, -432, - -432, -432, -432, -432, 931, 150, -432, 248, -192, 279, - -432, -432, -432, -152, -432, -432, 2012, -432, -432, 276, - -147, 42, -144, -151, -145, -128, -186, -432, -130, 4555, - -432, 931, 343, 3968, -432, -432, -432, -432, -432, -432, - -83, -78, 3402, -77, -96, -73, 1316, -71, -70, 2135, - -69, -67, 3402, 3402, 619, -432, -432, 3402, -432, -432, - -432, -432, -432, -432, -252, -432, -432, -432, -74, -167, - 3525, -66, -13, 3402, -182, -166, -131, -262, -113, -85, - -90, -75, -40, -38, -297, -432, -432, -243, -432, -57, - -58, -432, -432, -432, -432, 743, -432, -432, -432, -432, - -432, -432, -432, -432, -432, 379, 931, -135, 3402, 2584, - -432, -432, 4555, -432, -432, -432, -55, -432, -47, -432, - -432, 384, -432, 231, 391, -432, 237, -432, 4136, 343, - -45, -238, -432, -432, -432, -432, -311, -432, -432, -432, - 272, 13, 3402, -432, -227, 3402, 1889, -432, -432, -432, - 1192, -137, -432, -432, 3402, 1630, -432, -432, 3402, -46, - -432, -432, -432, -432, -432, -432, -432, -432, -432, -432, - -432, -432, -432, 3402, -432, 3402, 3402, 3402, 3402, 3402, - 3402, 3402, 3402, 3402, 3402, 3402, 3402, 3402, 3402, 3402, - 3402, 3402, 3402, 3402, 3402, -432, 3402, -432, -432, -42, - -432, -432, 3402, 2707, -432, -432, -39, -37, 4253, -432, - -7, 398, -432, -432, -432, -432, -219, 2830, -432, 343, - -432, -36, -432, -432, 1889, -134, -432, -107, -41, 399, - 931, -24, -432, -432, -20, -41, -19, -432, -432, -432, - -432, -432, -432, -432, -182, -182, -166, -166, -131, -131, - -131, -131, -262, -262, -113, -85, -90, -75, -40, -38, - -287, -432, 3402, -432, -17, -14, 3402, -11, -6, -101, - -10, -2, 0, 1, 4, 8, -432, -1, -7, -432, - -432, -432, 9, -432, 3402, -432, 15, 11, 1316, 6, - 17, 1440, -432, 3402, 16, 3402, 24, -432, 3402, -256, - -432, 3, 441, 446, 460, 462, 463, 468, 465, -432, - -432, -432, -102, 3402, 1440, 367, -432, 1316, 3402, -432, - -432, -432, -432, -432, -432, 3402, -432, -432, 3279, 35, - 36, 37, 38, 39, 40, 41, 44, 45, 46, 47, - 48, 49, -41, -432, 1316, 1316, 43, -432, -432, 51, - 50, -432, -432, -432, -432, -432, 53, -432, -432, -432, - -432, 54, -432, -432, -432, -432, -432, 52, 229, -4, - -432, 65, 162, 167, 286, -432, -432, -432, -432 + -209, 135, 135, 48, -534, -209, -534, -534, 9557, -534, + -534, -387, -534, -383, -360, -534, -534, -534, -33, -11, + -534, -534, -351, 135, -534, -534, -534, 51, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -3, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -2, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + -534, -534, -534, -534, -534, -302, -344, -337, -9, -405, + -534, 135, 33, 50, 50, 7762, -534, -534, -534, -324, + -534, 10395, -534, 9557, -534, -534, -108, -534, 135, -534, + -534, -534, -534, 135, -534, 10395, -534, -534, 9916, -317, + 620, -534, -534, -534, 69, -534, -534, -534, -534, -534, + -534, -534, -534, -328, 10036, -534, 106, -534, 135, -345, + 50, -534, -534, -534, -534, -299, -534, 4198, -534, -534, + 135, -292, -108, -534, -291, -268, -534, -279, -534, 10036, + 135, 8182, -534, 9916, -534, -534, -534, -534, -534, -281, + -273, 6892, -271, -287, -260, 2416, -259, -257, 4647, -252, + -228, 6892, 6892, 1069, -534, -534, 6892, -534, -534, -534, + -534, -534, -534, -386, -534, -534, -534, -216, -263, 7327, + -211, -107, 6892, -323, -258, -199, -379, -191, -221, -205, + -200, -171, -167, -396, -534, -534, -390, -534, -178, -176, + -534, -534, -534, -534, 1518, -534, -534, -534, -534, -534, + -534, -534, 135, -534, -534, 135, 10036, -213, 6892, 5096, + -534, -534, 9916, -534, -534, -534, -165, -534, -158, -534, + -534, 263, -534, 135, -534, 135, -160, -359, -534, -534, + -534, 8601, -534, -409, -534, -534, -534, 162, 3314, 6892, + -534, -358, 6892, 3763, -534, -534, -534, 1967, -208, -534, + -534, 6892, 9437, -534, -534, 6892, -155, -534, -534, -534, + -534, -534, -534, -534, -534, -534, -534, -534, -534, -534, + 6892, -534, 6892, 6892, 6892, 6892, 6892, 6892, 6892, 6892, + 6892, 6892, 6892, 6892, 6892, 6892, 6892, 6892, 6892, 6892, + 6892, 6892, -534, 6892, -534, -534, -534, -150, -534, -534, + 6892, 5545, -534, -534, -148, -149, 9020, -534, -5, -534, + -534, -355, 5994, -534, 135, -534, -534, -145, -534, -534, + 3763, -203, -534, -201, -152, 135, 10036, -144, -534, -534, + -147, -152, -142, -534, -534, -534, -534, -534, -534, -534, + -323, -323, -258, -258, -199, -199, -199, -199, -379, -379, + -191, -221, -205, -200, -171, -167, -398, -534, 6892, -534, + -140, -146, 6892, -136, -6, -190, -135, -134, -133, -132, + -130, -131, -534, -125, -5, -534, -534, -115, -534, 6892, + -534, -111, -116, 2416, -106, -110, 2865, -534, 6892, -105, + 6892, -104, -534, 6892, -534, -283, 11, 329, 331, 332, + 333, 334, 339, 336, -534, -534, -534, -182, 6892, 2865, + 237, -534, 2416, 6892, -534, -534, -534, -534, -534, -534, + 6892, -534, -534, 6443, -93, -92, -91, -90, -89, -88, + -87, -86, -84, -83, -85, -81, -80, -152, -534, 2416, + 2416, -78, -534, -534, -77, -79, -534, -534, -534, -534, + -534, -76, -534, -534, -534, -534, -75, -534, -534, -534, + -534, -534, -73, 115, 23, -534, -72, -71, -70, -69, + -534, -534, -534, -534 }; /* YYDEFACT[S] -- default reduction number in state S. Performed when @@ -824,234 +851,267 @@ namespace lol { const unsigned short int LolFxParser::yydefact_[] = { - 0, 0, 0, 0, 2, 3, 5, 6, 0, 0, - 31, 30, 0, 1, 4, 282, 0, 0, 164, 163, - 0, 162, 283, 284, 285, 0, 190, 202, 203, 204, - 208, 209, 210, 205, 206, 207, 211, 212, 213, 214, - 215, 216, 217, 220, 221, 222, 218, 223, 224, 225, - 219, 226, 227, 228, 229, 232, 233, 234, 230, 235, - 236, 237, 231, 238, 239, 240, 245, 248, 250, 246, - 249, 251, 268, 269, 275, 278, 247, 252, 253, 272, - 254, 258, 255, 259, 270, 276, 279, 256, 257, 260, - 273, 261, 265, 262, 266, 271, 277, 280, 263, 264, - 267, 274, 201, 0, 180, 198, 197, 181, 199, 165, - 182, 241, 242, 243, 244, 0, 200, 189, 196, 345, - 0, 0, 129, 139, 0, 145, 152, 179, 176, 173, - 0, 172, 160, 191, 193, 0, 281, 28, 342, 344, - 0, 0, 185, 186, 187, 188, 0, 159, 0, 183, - 184, 0, 0, 0, 119, 346, 127, 139, 143, 171, - 140, 142, 141, 130, 0, 139, 120, 0, 153, 0, - 177, 175, 174, 0, 126, 161, 0, 192, 343, 0, - 0, 8, 0, 0, 33, 169, 0, 167, 0, 0, - 162, 0, 0, 0, 288, 41, 38, 39, 40, 62, - 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 312, 316, 0, 67, 68, - 69, 70, 37, 43, 63, 45, 50, 51, 0, 0, - 56, 0, 71, 0, 75, 78, 81, 86, 89, 91, - 93, 95, 97, 99, 101, 103, 116, 0, 298, 0, - 160, 301, 314, 300, 299, 0, 302, 303, 304, 305, - 306, 307, 131, 136, 138, 144, 0, 146, 0, 0, - 132, 178, 0, 194, 71, 118, 0, 60, 0, 7, - 9, 0, 29, 0, 0, 166, 0, 121, 0, 0, - 294, 0, 292, 287, 289, 338, 0, 337, 327, 341, - 0, 0, 0, 339, 0, 0, 0, 64, 65, 308, - 0, 0, 47, 48, 0, 0, 54, 53, 0, 196, - 57, 59, 106, 107, 108, 109, 110, 111, 112, 113, - 114, 115, 105, 0, 66, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 317, 0, 313, 315, 133, - 135, 137, 0, 0, 297, 158, 154, 0, 0, 195, - 0, 35, 32, 170, 168, 286, 0, 0, 290, 0, - 326, 0, 332, 331, 334, 0, 340, 0, 321, 0, - 0, 0, 309, 42, 0, 49, 46, 61, 52, 58, - 104, 72, 73, 74, 76, 77, 79, 80, 84, 85, - 82, 83, 87, 88, 90, 92, 94, 96, 98, 100, - 0, 117, 0, 151, 147, 0, 0, 155, 0, 0, - 0, 0, 0, 0, 0, 0, 13, 0, 11, 34, - 291, 295, 0, 293, 0, 333, 0, 0, 0, 0, - 0, 0, 44, 0, 0, 0, 148, 156, 0, 0, - 122, 0, 0, 0, 0, 0, 0, 0, 0, 10, - 12, 296, 0, 335, 0, 320, 318, 324, 0, 311, - 328, 310, 102, 134, 149, 0, 157, 123, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 336, 330, 0, 325, 0, 322, 150, 0, - 0, 16, 15, 14, 17, 18, 0, 23, 24, 25, - 26, 0, 27, 329, 319, 323, 124, 0, 0, 0, - 125, 0, 0, 0, 0, 20, 19, 21, 22 + 0, 0, 0, 0, 197, 198, 200, 201, 0, 204, + 203, 0, 229, 0, 228, 1, 199, 410, 0, 0, + 363, 362, 0, 361, 411, 412, 413, 0, 389, 390, + 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, + 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 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, 70, 71, + 72, 73, 74, 75, 76, 403, 0, 379, 400, 399, + 380, 401, 364, 381, 405, 406, 407, 408, 0, 402, + 388, 398, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 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, 188, 189, 190, 191, 192, 193, 194, + 195, 196, 404, 397, 473, 0, 0, 323, 337, 0, + 344, 351, 378, 375, 372, 0, 371, 359, 391, 393, + 396, 0, 409, 225, 470, 472, 0, 226, 0, 384, + 385, 386, 387, 0, 358, 0, 382, 383, 0, 0, + 0, 313, 474, 321, 337, 341, 342, 370, 338, 340, + 339, 336, 324, 330, 0, 335, 337, 314, 0, 352, + 0, 376, 374, 373, 320, 0, 360, 0, 392, 471, + 0, 0, 205, 227, 368, 0, 366, 0, 361, 0, + 0, 0, 416, 0, 235, 232, 233, 234, 256, 230, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 440, 444, 0, 261, 262, 263, + 264, 231, 237, 257, 239, 244, 245, 0, 0, 250, + 0, 265, 0, 269, 272, 275, 280, 283, 285, 287, + 289, 291, 293, 295, 297, 310, 0, 426, 0, 359, + 429, 442, 428, 427, 0, 430, 431, 432, 433, 434, + 435, 325, 0, 332, 334, 343, 0, 345, 0, 0, + 326, 377, 0, 394, 265, 312, 0, 254, 0, 202, + 206, 0, 365, 0, 315, 0, 422, 0, 420, 415, + 417, 0, 466, 0, 465, 455, 469, 0, 0, 0, + 467, 0, 0, 0, 258, 259, 436, 0, 0, 241, + 242, 0, 0, 248, 247, 0, 398, 251, 253, 300, + 301, 302, 303, 304, 305, 306, 307, 308, 309, 299, + 0, 260, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 445, 0, 441, 443, 329, 327, 331, 333, + 0, 0, 425, 357, 353, 0, 0, 395, 0, 369, + 367, 0, 0, 418, 0, 414, 454, 0, 460, 459, + 462, 0, 468, 0, 449, 0, 0, 0, 437, 236, + 0, 243, 240, 255, 246, 252, 298, 266, 267, 268, + 270, 271, 273, 274, 278, 279, 276, 277, 281, 282, + 284, 286, 288, 290, 292, 294, 0, 311, 0, 350, + 346, 0, 0, 354, 0, 0, 0, 0, 0, 0, + 0, 0, 210, 0, 208, 419, 423, 0, 421, 0, + 461, 0, 0, 0, 0, 0, 0, 238, 0, 0, + 0, 347, 355, 0, 316, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 207, 209, 424, 0, 463, 0, + 448, 446, 452, 0, 439, 456, 438, 296, 328, 348, + 0, 356, 317, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 464, 458, 0, + 453, 0, 450, 349, 0, 0, 213, 212, 211, 214, + 215, 0, 220, 221, 222, 223, 0, 224, 457, 447, + 451, 318, 0, 0, 0, 319, 0, 0, 0, 0, + 217, 216, 218, 219 }; /* YYPGOTO[NTERM-NUM]. */ const short int LolFxParser::yypgoto_[] = { - -432, -432, 475, -432, -432, 306, -432, 293, -432, -432, - -432, -432, -432, 470, -432, -432, -432, -432, -432, -432, - 535, -432, -432, -432, -432, -21, -432, 7, 14, -68, - 12, 507, 521, 522, 520, 523, 524, -432, -153, -89, - -432, -51, -154, 2, 5, -432, -432, -432, 607, 717, - 711, 612, -432, -432, -183, -432, 752, -432, -432, 594, - -432, 64, 19, -8, 32, -432, 856, -432, -72, -81, - 593, 504, -244, 583, -95, -302, -432, 411, 766, -211, - 586, -432, -432, 505, -432, -432, -432, -432, -432, -432, - -432, -432, -432, 751, -432 + -534, -534, -534, -534, 347, -534, -534, 6, 60, -534, + -189, -534, -534, -534, 94, -534, -534, -534, -534, -534, + -534, -534, -68, -534, -534, -534, -534, -267, -534, -181, + -192, -316, -186, -102, -99, -98, -100, -97, -96, -534, + -277, -320, -534, -321, -376, 3, 10, -534, -534, -534, + -16, 97, -534, 87, -534, -10, -534, -534, -412, -534, + 133, -534, -534, -26, -534, -256, -220, -8, -202, -534, + -534, 362, -534, -303, -280, -25, -113, -466, -36, -331, + -533, -534, -206, 150, -334, -32, -534, -534, -103, -534, + -534, -534, -534, -534, -534, -534, -534, -534, 134, -534 }; /* YYDEFGOTO[NTERM-NUM]. */ const short int LolFxParser::yydefgoto_[] = { - -1, 3, 4, 5, 6, 180, 181, 437, 438, 7, - 8, 12, 183, 184, 222, 223, 224, 394, 225, 226, - 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, - 237, 238, 239, 240, 241, 242, 243, 244, 245, 246, - 333, 247, 276, 248, 249, 121, 122, 123, 263, 163, - 164, 264, 124, 125, 126, 127, 128, 129, 186, 187, - 165, 130, 131, 277, 133, 134, 135, 136, 193, 194, - 291, 292, 365, 251, 252, 253, 254, 480, 481, 255, - 256, 257, 476, 391, 258, 506, 259, 260, 384, 446, - 447, 261, 137, 138, 139 + -1, 242, 243, 3, 4, 5, 6, 416, 311, 312, + 563, 564, 7, 8, 13, 14, 351, 352, 353, 520, + 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, + 364, 365, 366, 367, 368, 369, 370, 371, 372, 373, + 374, 375, 460, 376, 406, 377, 378, 246, 247, 248, + 393, 292, 293, 294, 295, 394, 249, 250, 251, 252, + 253, 254, 315, 316, 296, 255, 256, 407, 258, 259, + 260, 261, 262, 321, 322, 417, 418, 493, 380, 381, + 382, 383, 605, 606, 384, 385, 386, 601, 517, 387, + 631, 388, 389, 510, 571, 572, 390, 263, 264, 265 }; /* 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 YYTABLE_NINF_, syntax error. */ - const short int LolFxParser::yytable_ninf_ = -129; + const short int LolFxParser::yytable_ninf_ = -323; const short int LolFxParser::yytable_[] = { - 132, 429, 459, 310, 533, 151, 489, 490, 1, 166, - 119, 491, 153, 120, 154, 167, 195, 196, 197, 198, - 199, 200, 15, 275, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 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, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 300, 294, 103, 104, 367, 275, 288, 423, 105, - 10, 106, 175, 389, 107, 353, 108, 109, 110, 132, - 111, 112, 113, 114, 115, 356, 116, 117, 118, 119, - 9, 320, 120, 13, 192, 250, 170, 171, 172, 479, - 380, 296, 158, 342, 343, 274, 265, 140, 304, 356, - 358, 312, 313, 354, 2, 430, 311, 177, 141, 11, - 431, 158, 479, 432, 453, 22, 23, 24, 492, 364, - 188, 192, 457, 289, 487, 192, 488, 534, 271, 433, - 314, 307, 308, 344, 345, 315, 146, 355, 250, 147, - 368, 389, 378, 356, 156, 158, 250, 294, 379, 425, - 275, 484, 334, 386, 486, 358, 191, 157, 142, 356, - 434, 440, 143, 442, 275, 168, 144, 379, 176, 399, - 145, 149, 159, 531, 507, 150, 179, 532, 435, 182, - 493, 508, 160, 161, 400, 185, 162, 250, 274, 268, - 269, 385, 270, 191, 387, 388, 267, 191, 265, 285, - 286, 160, 161, 395, 192, 162, 505, 421, 454, 275, - 335, 336, 337, 364, 408, 409, 410, 411, 317, 318, - 192, 189, 338, 339, 278, 159, 272, 294, 340, 341, - 16, 17, 279, 250, 282, 160, 161, 281, 250, 162, - 26, 283, 250, 420, 346, 347, 362, 363, 393, 356, - 287, 448, 356, 284, 401, 402, 403, 274, 274, 274, - 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, - 274, 274, 274, 388, 510, 275, 191, 364, 449, 356, - 461, 462, 274, 501, 356, 404, 405, 16, 17, 18, - 19, 290, 191, 475, 406, 407, 274, 26, 412, 413, - 192, -61, 295, 297, 482, 298, 364, 299, 349, 364, - 390, 316, 348, 301, 302, 305, 250, 306, 321, 103, - 104, 351, 175, 154, 350, 352, -60, 359, 369, 364, - 107, 370, 371, 472, 110, 373, 364, 377, 381, -55, - 422, 274, 426, 117, 439, 356, 427, 450, 444, 524, - 358, 322, 323, 324, 325, 326, 327, 328, 329, 330, - 331, 451, 502, 452, 455, -62, 212, 213, 332, 456, - 458, 463, 191, 436, 460, 152, 103, 104, 469, 464, - 250, 465, 466, 250, 477, 494, 467, 107, 390, 468, - 109, 110, 471, 216, 495, 473, 474, 217, 478, 483, - 117, 218, 219, 220, 221, 485, 250, 274, 496, 250, - 497, 498, 499, 500, 504, 511, 512, 513, 514, 515, - 14, 517, 525, 516, 518, 519, 520, 280, 522, 523, - 521, 526, 530, 527, 528, 529, 250, 250, 195, 196, - 197, 198, 199, 200, 15, 535, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 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, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 201, 202, 103, 104, 203, 204, 205, - 206, 105, 536, 106, 207, 208, 107, 537, 108, 109, - 110, 209, 111, 112, 113, 114, 115, 210, 116, 117, - 118, 211, 195, 196, 197, 198, 199, 200, 15, -128, - 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 201, 202, 103, - 104, 203, 204, 205, 206, 105, 538, 106, 207, 208, - 107, 470, 108, 109, 110, 209, 111, 112, 113, 114, - 115, 210, 116, 117, 118, 211, 195, 196, 197, 198, - 199, 200, 15, 372, 16, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 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, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 201, 202, 103, 104, 203, 204, 205, 206, 105, - 398, 106, 207, 208, 107, 414, 108, 109, 110, 209, - 111, 112, 113, 114, 115, 210, 116, 117, 118, 211, - 415, 417, 416, 360, 262, 418, 266, 419, 361, 169, - 374, 148, 376, 443, 382, 503, 155, 383, 178, 445, + 257, 9, 10, 555, 427, 9, 10, 11, 12, 437, + 423, 244, 285, 286, 614, 615, 1, 431, 245, 616, + 421, 515, 319, 495, 549, 438, 480, 439, 440, 274, + 405, 658, 301, 302, 303, 297, 469, 470, 483, 447, + 404, 420, 298, 604, 18, 19, 20, 21, 15, 483, + 482, 266, 506, 485, 28, 29, 441, 483, 442, 308, + 267, 18, 19, 578, 481, 319, 604, 319, 24, 25, + 26, 28, 29, 317, 434, 435, 471, 472, 492, 269, + 401, 503, 512, 270, 268, 565, 582, 310, 504, 483, + 285, 286, 504, 287, 273, 461, 398, 399, 515, 496, + 400, 271, 283, 288, 289, 272, 485, 290, 511, 276, + 284, 513, 514, 277, 609, 551, 291, 611, 307, 656, + 521, 323, 405, 657, 279, 525, 567, 285, 286, 462, + 463, 464, 404, 392, 106, 107, 280, 632, 281, 402, + 526, 420, 9, 10, 633, 110, 319, 409, 112, 113, + 411, 106, 107, 534, 535, 536, 537, 612, 120, 613, + 546, 414, 110, 547, -255, 319, 113, 422, 556, 424, + 492, 287, 579, 557, 425, 120, 558, 516, 412, 413, + 426, 288, 289, 444, 445, 290, 428, 617, 429, 514, + 465, 466, 559, 432, 291, 527, 528, 529, 404, 404, + 404, 404, 404, 404, 404, 404, 404, 404, 404, 404, + 404, 404, 404, 404, 405, 659, 420, 433, 288, 289, + 467, 468, 290, 560, 404, 405, 473, 474, 490, 491, + 443, 291, 492, 2, 448, 404, 475, 635, 519, 483, + 319, 561, 600, 573, 483, 574, 483, 306, 597, 618, + 478, 586, 587, 476, 516, 257, 479, 299, 607, 477, + 492, 305, 281, 492, 626, 483, 244, 499, 630, -254, + 320, 405, 379, 245, 12, 532, 533, 627, 497, 314, + 498, 404, 502, 492, 530, 531, 395, 538, 539, 507, + 492, -249, 548, 552, 553, 483, 577, 581, 649, 485, + 569, 580, 576, -256, 397, 583, 588, 589, 590, 591, + 593, 415, 592, 320, 594, 320, 408, 449, 450, 451, + 452, 453, 454, 455, 456, 457, 458, 379, 596, 598, + 599, 603, 602, 619, 459, 379, 405, 610, 608, 620, + 621, 622, 623, 624, 625, 629, 404, 636, 637, 638, + 639, 640, 16, 642, 643, 641, 644, 645, 646, 647, + 648, 650, 313, 651, 652, 653, 654, 655, 660, 661, + 662, 663, 410, 540, 524, 595, 379, 541, 543, 542, + 488, 391, 544, 396, 545, 300, 489, 500, 395, 275, + 501, 568, 508, 628, 320, 282, 509, 309, 486, 0, + 0, 487, 0, 0, 0, 0, 0, 570, 0, 0, + 0, 0, 0, 320, 0, 0, 0, 0, 0, 314, + 379, 0, 0, 0, 0, 379, 0, 0, 0, 379, + 0, 0, 0, 0, 584, 562, 278, -322, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 320, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 379, 0, 0, 0, 0, 0, 306, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 575, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 585, 0, 0, 0, 0, 379, 0, 0, 379, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 379, 0, 0, 379, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 379, 379, 324, 325, 326, 327, 328, 329, 17, + 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 330, + 331, 106, 107, 332, 333, 334, 335, 108, 0, 109, + 336, 337, 110, 0, 111, 112, 113, 338, 114, 115, + 116, 117, 118, 339, 119, 120, 121, 340, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 214, 215, 216, 0, 0, 0, 217, - 15, 0, 0, 218, 219, 220, 221, 0, 22, 23, - 24, 0, 0, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 101, 102, 0, - 0, 0, 212, 213, 0, 0, 0, 105, 0, 106, - 0, 0, 0, 0, 108, 0, 0, 0, 111, 112, - 113, 114, 115, 0, 116, 0, 118, 214, 309, 216, - 0, 15, 0, 217, 0, 0, 0, 218, 219, 220, - 221, 0, 0, 0, 27, 28, 29, 30, 31, 32, - 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, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 0, 0, 0, 0, 0, 0, 212, 213, 105, 0, - 106, 0, 0, 0, 0, 108, 0, 0, 0, 111, - 112, 113, 114, 115, 0, 116, 0, 118, 0, 0, - 0, 214, 357, 216, 0, 0, 0, 217, 0, 0, - 0, 218, 219, 220, 221, 195, 196, 197, 198, 199, - 200, 15, 0, 16, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 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, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 201, 202, 103, 104, 203, 204, 205, 206, 105, 0, - 106, 207, 208, 107, 0, 108, 109, 110, 209, 111, - 112, 113, 114, 115, 210, 116, 117, 118, 211, 195, - 196, 197, 198, 199, 200, 15, 0, 16, 17, 18, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 122, 123, + 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, + 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, + 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, + 154, 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, 188, 189, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 241, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 341, 342, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 343, 344, + 345, 0, 0, 0, 0, 346, 0, 0, 347, 348, + 349, 350, 324, 325, 326, 327, 328, 329, 17, 0, + 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, 77, + 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, 104, 105, 330, 331, + 106, 107, 332, 333, 334, 335, 108, 0, 109, 336, + 337, 110, 0, 111, 112, 113, 338, 114, 115, 116, + 117, 118, 339, 119, 120, 121, 340, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 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, 188, 189, 190, 191, 192, 193, 194, + 195, 196, 197, 198, 199, 200, 201, 202, 203, 204, + 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, + 215, 216, 217, 218, 219, 220, 221, 222, 223, 224, + 225, 226, 227, 228, 229, 230, 231, 232, 233, 234, + 235, 236, 237, 238, 239, 240, 241, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 341, 342, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 343, 436, 345, + 0, 0, 0, 0, 346, 0, 0, 347, 348, 349, + 350, 324, 325, 326, 327, 328, 329, 17, 0, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, @@ -1060,81 +1120,44 @@ namespace lol { 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 201, 202, 103, 104, 203, 204, - 205, 206, 105, 0, 106, 207, 208, 107, 0, 108, - 109, 110, 209, 111, 112, 113, 114, 115, 210, 116, - 117, 118, 211, 195, 196, 197, 198, 199, 200, 15, - 0, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 201, 202, - 103, 104, 203, 204, 205, 206, 105, 0, 106, 207, - 208, 107, 0, 108, 109, 110, 209, 111, 112, 113, - 114, 115, 210, 116, 117, 118, 211, 0, 0, 0, + 99, 100, 101, 102, 103, 104, 105, 330, 331, 106, + 107, 332, 333, 334, 335, 108, 0, 109, 336, 337, + 110, 0, 111, 112, 113, 338, 114, 115, 116, 117, + 118, 339, 119, 120, 121, 340, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 214, 392, 216, 0, 0, 0, 217, 396, 397, 15, - 218, 219, 220, 221, 0, 0, 0, 22, 23, 24, - 0, 0, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 0, 212, - 213, 0, 0, 0, 0, 0, 105, 0, 106, 0, - 0, 0, 0, 108, 0, 0, 0, 111, 112, 113, - 114, 115, 0, 116, 214, 118, 216, 0, 0, 0, - 217, 0, 0, 0, 218, 219, 220, 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 122, 123, 124, 125, + 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, 151, 152, 153, 154, 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, 188, 189, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 212, 213, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 153, 0, - 216, 0, 0, 0, 217, 0, 0, 0, 218, 219, - 220, 221, 195, 196, 197, 198, 199, 200, 15, 0, - 16, 17, 18, 19, 20, 190, 22, 23, 24, 0, - 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 0, 0, 103, - 104, 0, 0, 0, 0, 105, 0, 106, 0, 0, - 107, 0, 108, 109, 110, 0, 111, 112, 113, 114, - 115, 0, 116, 117, 118, 195, 196, 197, 198, 199, - 200, 15, 0, 0, 0, 0, 0, 0, 0, 22, - 23, 24, 0, 0, 27, 28, 29, 30, 31, 32, - 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, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, - 106, 0, 0, 0, 0, 108, 0, 0, 0, 111, - 112, 113, 114, 115, 0, 116, 0, 118, 195, 196, - 197, 198, 199, 200, 15, 0, 0, 0, 0, 0, - 0, 0, 22, 23, 24, 0, 0, 27, 28, 29, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 341, 342, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 343, 484, 345, 0, + 0, 0, 0, 346, 0, 0, 347, 348, 349, 350, + 324, 325, 326, 327, 328, 329, 17, 0, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 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, @@ -1142,18 +1165,10 @@ namespace lol { 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 0, 0, 0, 0, 0, 0, 0, - 0, 105, 0, 106, 0, 0, 0, 0, 108, 0, - 0, 0, 111, 112, 113, 114, 115, 0, 116, 0, - 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 212, 213, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 217, 0, 0, 0, 218, 219, 220, - 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 100, 101, 102, 103, 104, 105, 330, 331, 106, 107, + 332, 333, 334, 335, 108, 0, 109, 336, 337, 110, + 0, 111, 112, 113, 338, 114, 115, 116, 117, 118, + 339, 119, 120, 121, 340, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -1161,25 +1176,33 @@ namespace lol { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 212, 213, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 273, 217, 0, 0, 0, - 218, 219, 220, 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 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, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 341, 342, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 303, 0, 0, 0, 217, - 0, 0, 0, 218, 219, 220, 221, 195, 196, 197, - 198, 199, 200, 15, 0, 0, 0, 0, 0, 0, - 0, 22, 23, 24, 0, 0, 27, 28, 29, 30, + 0, 0, 0, 0, 0, 343, 518, 345, 0, 0, + 0, 0, 346, 0, 0, 347, 348, 349, 350, 324, + 325, 326, 327, 328, 329, 17, 0, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 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, @@ -1187,81 +1210,89 @@ namespace lol { 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 0, 0, 0, 0, 0, 0, 0, 0, - 105, 0, 106, 0, 0, 0, 0, 108, 0, 0, - 0, 111, 112, 113, 114, 115, 0, 116, 0, 118, - 195, 196, 197, 198, 199, 200, 15, 0, 0, 0, - 0, 0, 0, 0, 22, 23, 24, 0, 0, 27, - 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 0, 0, 0, 0, 0, - 0, 0, 0, 105, 0, 106, 0, 0, 0, 0, - 108, 0, 0, 0, 111, 112, 113, 114, 115, 0, - 116, 0, 118, 195, 196, 197, 198, 199, 200, 15, - 0, 0, 0, 0, 0, 0, 0, 22, 23, 24, - 0, 0, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 0, 0, - 0, 0, 0, 0, 0, 0, 105, 0, 106, 0, - 0, 0, 0, 108, 0, 0, 0, 111, 112, 113, - 114, 115, 0, 116, 0, 118, 0, 0, 0, 0, + 101, 102, 103, 104, 105, 330, 331, 106, 107, 332, + 333, 334, 335, 108, 0, 109, 336, 337, 110, 0, + 111, 112, 113, 338, 114, 115, 116, 117, 118, 339, + 119, 120, 121, 340, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 366, 217, 0, - 0, 0, 218, 219, 220, 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 150, 151, 152, 153, 154, 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, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 341, + 342, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 343, 0, 345, 0, 0, 0, + 0, 346, 0, 0, 347, 348, 349, 350, 324, 325, + 326, 327, 328, 329, 17, 0, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 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, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 330, 331, 106, 107, 332, 333, + 334, 335, 108, 0, 109, 336, 337, 110, 0, 111, + 112, 113, 338, 114, 115, 116, 117, 118, 339, 119, + 120, 121, 340, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 212, 213, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 424, 217, 0, 0, 0, 218, 219, 220, 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 151, 152, 153, 154, 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, 188, + 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 212, 213, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 341, 342, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 441, 217, 0, 0, 0, 218, 219, - 220, 221, 195, 196, 197, 198, 199, 200, 15, 0, - 0, 0, 0, 0, 0, 0, 22, 23, 24, 0, - 0, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 101, 102, 0, 0, 0, - 0, 0, 0, 0, 0, 105, 0, 106, 0, 0, - 0, 0, 108, 0, 0, 0, 111, 112, 113, 114, - 115, 0, 116, 0, 118, 195, 196, 197, 198, 199, - 200, 15, 0, 0, 0, 0, 0, 0, 0, 22, - 23, 24, 0, 0, 27, 28, 29, 30, 31, 32, + 0, 0, 0, 280, 0, 345, 0, 0, 0, 0, + 346, 0, 0, 347, 348, 349, 350, 324, 325, 326, + 327, 328, 329, 17, 0, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 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, @@ -1269,114 +1300,132 @@ namespace lol { 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, - 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, - 106, 0, 0, 0, 0, 108, 0, 0, 0, 111, - 112, 113, 114, 115, 0, 116, 0, 118, 195, 196, - 197, 198, 199, 200, 15, 0, 0, 0, 0, 0, - 0, 0, 22, 23, 24, 0, 0, 27, 28, 29, - 30, 31, 32, 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, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 0, 0, 0, 0, 0, 0, 0, - 0, 105, 0, 106, 0, 0, 0, 0, 108, 0, - 0, 0, 111, 112, 113, 114, 115, 0, 116, 0, - 319, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 103, 104, 105, 0, 0, 106, 107, 0, 0, 0, + 0, 108, 0, 109, 0, 0, 110, 0, 111, 112, + 113, 0, 114, 115, 116, 117, 118, 0, 119, 120, + 121, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 212, 213, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 509, 217, 173, 15, 0, 218, 219, 220, - 221, 0, 0, 22, 23, 24, 0, 0, 27, 28, - 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 0, 212, 213, 0, 0, 0, - 0, 0, 105, 0, 106, 0, 0, 0, 0, 108, - 0, 0, 0, 111, 112, 113, 114, 115, 0, 116, - 0, 118, 0, 0, 0, 0, 217, 0, 0, 0, - 218, 219, 220, 221, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 122, 123, 124, 125, 126, 127, 128, 129, + 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 150, 151, 152, 153, 154, 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, 188, 189, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 217, - 0, 0, 0, 218, 219, 220, 221, 15, 0, 16, - 17, 18, 19, 20, 190, 22, 23, 24, 0, 26, - 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 0, 0, 103, 104, - 0, 0, 0, 0, 105, 0, 106, 0, 0, 107, - 0, 108, 109, 110, 0, 111, 112, 113, 114, 115, - 0, 116, 117, 118, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 341, 342, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 345, 0, 0, 0, 0, 346, + 0, 0, 347, 348, 349, 350, 324, 325, 326, 327, + 328, 329, 17, 0, 18, 19, 20, 21, 22, 318, + 24, 25, 26, 0, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, + 104, 105, 0, 0, 106, 107, 0, 0, 0, 0, + 108, 0, 109, 0, 0, 110, 0, 111, 112, 113, + 0, 114, 115, 116, 117, 118, 0, 119, 120, 121, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 15, 0, 16, 17, 18, - 19, 20, 190, 22, 23, 24, 174, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, + 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, + 151, 152, 153, 154, 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, 188, 189, 190, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, + 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 341, 342, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 324, 325, 326, 327, 328, 329, 17, 346, 0, + 0, 347, 348, 349, 350, 24, 25, 26, 0, 0, + 0, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 101, 102, 0, 0, 103, 104, 0, 0, - 0, 0, 105, 0, 106, 0, 0, 107, 0, 108, - 109, 110, 0, 111, 112, 113, 114, 115, 0, 116, - 117, 118, 15, 0, 16, 17, 18, 19, 20, 190, - 22, 23, 24, 0, 26, 27, 28, 29, 30, 31, - 32, 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, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, - 102, 0, 0, 103, 104, 0, 0, 0, 0, 105, - 0, 106, 0, 0, 107, 0, 108, 109, 110, 0, - 111, 112, 113, 114, 115, 0, 116, 117, 118, 0, + 99, 100, 101, 102, 103, 104, 105, 0, 0, 0, + 0, 0, 0, 0, 0, 108, 0, 109, 0, 0, + 0, 0, 111, 0, 0, 0, 114, 115, 116, 117, + 118, 0, 119, 0, 121, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 15, 293, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 0, 0, 103, 104, 0, - 0, 0, 0, 105, 0, 106, 0, 0, 107, 0, - 108, 109, 110, 0, 111, 112, 113, 114, 115, 0, - 116, 117, 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 122, 123, 124, 125, + 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, + 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, 151, 152, 153, 154, 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, 188, 189, 190, 191, 192, 193, 194, 195, + 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, + 206, 207, 208, 209, 210, 211, 212, 213, 214, 215, + 216, 217, 218, 219, 220, 221, 222, 223, 224, 225, + 226, 227, 228, 229, 230, 231, 232, 233, 234, 235, + 236, 237, 238, 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 15, 0, 16, 17, 18, 19, - 20, 190, 22, 23, 24, 375, 26, 27, 28, 29, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 341, 342, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 403, 0, 346, 0, 0, 347, 348, 349, 350, + 324, 325, 326, 327, 328, 329, 17, 0, 0, 0, + 0, 0, 0, 0, 24, 25, 26, 0, 0, 0, 30, 31, 32, 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, @@ -1384,82 +1433,44 @@ namespace lol { 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 0, 0, 103, 104, 0, 0, 0, - 0, 105, 0, 106, 0, 0, 107, 0, 108, 109, - 110, 0, 111, 112, 113, 114, 115, 0, 116, 117, - 118, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 428 - }; - - /* YYCHECK. */ - const short int - LolFxParser::yycheck_[] = - { - 8, 8, 8, 214, 8, 8, 3, 4, 224, 440, - 8, 8, 438, 8, 440, 446, 3, 4, 5, 6, - 7, 8, 9, 176, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 206, 193, 100, 101, 269, 269, 189, 362, 106, - 196, 108, 130, 306, 111, 422, 113, 114, 115, 137, - 117, 118, 119, 120, 121, 446, 123, 124, 125, 137, - 8, 230, 137, 0, 152, 153, 127, 128, 129, 451, - 461, 202, 21, 415, 416, 176, 164, 438, 209, 446, - 255, 413, 414, 460, 380, 172, 217, 135, 444, 245, - 177, 21, 474, 180, 461, 17, 18, 19, 175, 268, - 148, 189, 426, 191, 440, 193, 442, 191, 169, 196, - 442, 212, 213, 455, 456, 447, 444, 440, 206, 8, - 272, 384, 440, 446, 445, 21, 214, 288, 446, 363, - 363, 455, 233, 440, 458, 310, 152, 446, 111, 446, - 227, 440, 115, 377, 377, 8, 111, 446, 442, 318, - 115, 111, 101, 4, 478, 115, 194, 8, 245, 8, - 237, 485, 111, 112, 333, 8, 115, 255, 269, 441, - 442, 302, 444, 189, 305, 306, 8, 193, 266, 445, - 446, 111, 112, 314, 272, 115, 477, 356, 422, 422, - 452, 453, 454, 362, 342, 343, 344, 345, 445, 446, - 288, 438, 448, 449, 8, 101, 438, 368, 419, 420, - 11, 12, 439, 301, 445, 111, 112, 441, 306, 115, - 21, 446, 310, 354, 417, 418, 441, 442, 445, 446, - 440, 445, 446, 441, 335, 336, 337, 338, 339, 340, - 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, - 351, 352, 353, 384, 488, 488, 272, 426, 445, 446, - 441, 442, 363, 445, 446, 338, 339, 11, 12, 13, - 14, 8, 288, 448, 340, 341, 377, 21, 346, 347, - 368, 444, 440, 440, 453, 461, 455, 440, 458, 458, - 306, 445, 457, 444, 444, 444, 384, 444, 444, 100, - 101, 421, 390, 440, 459, 423, 444, 8, 443, 478, - 111, 438, 8, 444, 115, 4, 485, 442, 126, 445, - 442, 422, 441, 124, 6, 446, 443, 8, 444, 504, - 505, 424, 425, 426, 427, 428, 429, 430, 431, 432, - 433, 445, 473, 443, 441, 444, 413, 414, 441, 443, - 441, 441, 368, 440, 440, 438, 100, 101, 439, 441, - 448, 441, 441, 451, 438, 4, 442, 111, 384, 441, - 114, 115, 443, 440, 8, 440, 445, 444, 441, 443, - 124, 448, 449, 450, 451, 441, 474, 488, 8, 477, - 8, 8, 4, 8, 107, 440, 440, 440, 440, 440, - 5, 440, 439, 443, 440, 440, 440, 181, 440, 440, - 443, 440, 440, 443, 441, 441, 504, 505, 3, 4, - 5, 6, 7, 8, 9, 440, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, - 105, 106, 440, 108, 109, 110, 111, 440, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 3, 4, 5, 6, 7, 8, 9, 445, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 100, 101, 102, 103, 104, 105, 0, 0, 0, 0, + 0, 0, 0, 0, 108, 0, 109, 0, 0, 0, + 0, 111, 0, 0, 0, 114, 115, 116, 117, 118, + 0, 119, 0, 121, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 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, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 341, 342, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 430, 0, 0, + 0, 0, 346, 0, 0, 347, 348, 349, 350, 324, + 325, 326, 327, 328, 329, 17, 0, 0, 0, 0, + 0, 0, 0, 24, 25, 26, 0, 0, 0, 30, 31, 32, 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, @@ -1467,69 +1478,134 @@ namespace lol { 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 101, 102, 103, 104, 105, 106, 440, 108, 109, 110, - 111, 438, 113, 114, 115, 116, 117, 118, 119, 120, - 121, 122, 123, 124, 125, 126, 3, 4, 5, 6, - 7, 8, 9, 283, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, - 315, 108, 109, 110, 111, 348, 113, 114, 115, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 349, 351, 350, 266, 157, 352, 165, 353, 266, 127, - 286, 25, 289, 379, 301, 474, 120, 301, 137, 384, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 413, 414, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 438, 439, 440, -1, -1, -1, 444, - 9, -1, -1, 448, 449, 450, 451, -1, 17, 18, - 19, -1, -1, 22, 23, 24, 25, 26, 27, 28, - 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, -1, - -1, -1, 413, 414, -1, -1, -1, 106, -1, 108, - -1, -1, -1, -1, 113, -1, -1, -1, 117, 118, - 119, 120, 121, -1, 123, -1, 125, 438, 439, 440, - -1, 9, -1, 444, -1, -1, -1, 448, 449, 450, - 451, -1, -1, -1, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - -1, -1, -1, -1, -1, -1, 413, 414, 106, -1, - 108, -1, -1, -1, -1, 113, -1, -1, -1, 117, - 118, 119, 120, 121, -1, 123, -1, 125, -1, -1, - -1, 438, 439, 440, -1, -1, -1, 444, -1, -1, - -1, 448, 449, 450, 451, 3, 4, 5, 6, 7, - 8, 9, -1, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, 104, 105, 106, -1, - 108, 109, 110, 111, -1, 113, 114, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 3, - 4, 5, 6, 7, 8, 9, -1, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 101, 102, 103, 104, 105, 0, 0, 0, 0, 0, + 0, 0, 0, 108, 0, 109, 0, 0, 0, 0, + 111, 0, 0, 0, 114, 115, 116, 117, 118, 0, + 119, 0, 121, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 150, 151, 152, 153, 154, 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, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 241, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 341, + 342, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 494, + 0, 346, 0, 0, 347, 348, 349, 350, 324, 325, + 326, 327, 328, 329, 17, 0, 0, 0, 0, 0, + 0, 0, 24, 25, 26, 0, 0, 0, 30, 31, + 32, 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, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 0, 0, 0, 0, 0, 0, + 0, 0, 108, 0, 109, 0, 0, 0, 0, 111, + 0, 0, 0, 114, 115, 116, 117, 118, 0, 119, + 0, 121, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 151, 152, 153, 154, 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, 188, + 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 241, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 341, 342, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 550, 0, + 346, 0, 0, 347, 348, 349, 350, 324, 325, 326, + 327, 328, 329, 17, 0, 0, 0, 0, 0, 0, + 0, 24, 25, 26, 0, 0, 0, 30, 31, 32, + 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, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, + 103, 104, 105, 0, 0, 0, 0, 0, 0, 0, + 0, 108, 0, 109, 0, 0, 0, 0, 111, 0, + 0, 0, 114, 115, 116, 117, 118, 0, 119, 0, + 121, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 122, 123, 124, 125, 126, 127, 128, 129, + 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, + 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, + 150, 151, 152, 153, 154, 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, 188, 189, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + 200, 201, 202, 203, 204, 205, 206, 207, 208, 209, + 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, + 220, 221, 222, 223, 224, 225, 226, 227, 228, 229, + 230, 231, 232, 233, 234, 235, 236, 237, 238, 239, + 240, 241, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 341, 342, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 566, 0, 346, + 0, 0, 347, 348, 349, 350, 324, 325, 326, 327, + 328, 329, 17, 0, 0, 0, 0, 0, 0, 0, + 24, 25, 26, 0, 0, 0, 30, 31, 32, 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, @@ -1537,11 +1613,87 @@ namespace lol { 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, - 104, 105, 106, -1, 108, 109, 110, 111, -1, 113, - 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 3, 4, 5, 6, 7, 8, 9, - -1, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 104, 105, 0, 0, 0, 0, 0, 0, 0, 0, + 108, 0, 109, 0, 0, 0, 0, 111, 0, 0, + 0, 114, 115, 116, 117, 118, 0, 119, 0, 121, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, + 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, + 151, 152, 153, 154, 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, 188, 189, 190, + 191, 192, 193, 194, 195, 196, 197, 198, 199, 200, + 201, 202, 203, 204, 205, 206, 207, 208, 209, 210, + 211, 212, 213, 214, 215, 216, 217, 218, 219, 220, + 221, 222, 223, 224, 225, 226, 227, 228, 229, 230, + 231, 232, 233, 234, 235, 236, 237, 238, 239, 240, + 241, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 341, 342, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 634, 0, 346, 0, + 0, 347, 348, 349, 350, 324, 325, 326, 327, 328, + 329, 17, 0, 0, 0, 0, 0, 0, 0, 24, + 25, 26, 0, 0, 0, 30, 31, 32, 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, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 0, 0, 0, 0, 0, 0, 0, 0, 108, + 0, 109, 0, 0, 0, 0, 111, 0, 0, 0, + 114, 115, 116, 117, 118, 0, 119, 0, 121, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, + 152, 153, 154, 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, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 341, 342, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 324, 325, 326, 327, 328, 329, 17, 346, 0, 0, + 347, 348, 349, 350, 24, 25, 26, 0, 0, 0, 30, 31, 32, 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, @@ -1549,56 +1701,1039 @@ namespace lol { 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 101, 102, 103, 104, 105, 106, -1, 108, 109, - 110, 111, -1, 113, 114, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, -1, -1, -1, + 100, 101, 102, 103, 104, 105, 0, 0, 0, 0, + 0, 0, 0, 0, 108, 0, 109, 0, 0, 0, + 0, 111, 0, 0, 0, 114, 115, 116, 117, 118, + 0, 119, 0, 446, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 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, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 341, 342, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, + 10, 17, 346, 0, 0, 347, 348, 349, 350, 24, + 25, 26, 0, 0, 0, 30, 31, 32, 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, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 0, 0, 0, 0, 0, 0, 0, 0, 108, + 0, 109, 0, 0, 0, 0, 111, 0, 0, 0, + 114, 115, 116, 117, 118, 0, 119, 0, 121, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, + 152, 153, 154, 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, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 17, 0, 18, 19, 20, 21, 22, 318, 24, + 25, 26, 304, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 0, 0, 106, 107, 0, 0, 0, 0, 108, + 0, 109, 0, 0, 110, 0, 111, 112, 113, 0, + 114, 115, 116, 117, 118, 0, 119, 120, 121, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, + 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, + 152, 153, 154, 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, 188, 189, 190, 191, + 192, 193, 194, 195, 196, 197, 198, 199, 200, 201, + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 213, 214, 215, 216, 217, 218, 219, 220, 221, + 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, + 232, 233, 234, 235, 236, 237, 238, 239, 240, 241, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 17, 0, 18, 19, 20, 21, 22, 318, 24, 25, + 26, 419, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, + 0, 0, 106, 107, 0, 0, 0, 0, 108, 0, + 109, 0, 0, 110, 0, 111, 112, 113, 0, 114, + 115, 116, 117, 118, 0, 119, 120, 121, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, + 153, 154, 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, 188, 189, 190, 191, 192, + 193, 194, 195, 196, 197, 198, 199, 200, 201, 202, + 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, + 213, 214, 215, 216, 217, 218, 219, 220, 221, 222, + 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, + 233, 234, 235, 236, 237, 238, 239, 240, 241, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 17, + 0, 18, 19, 20, 21, 22, 318, 24, 25, 26, + 505, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 101, 102, 103, 104, 105, 0, + 0, 106, 107, 0, 0, 0, 0, 108, 0, 109, + 0, 0, 110, 0, 111, 112, 113, 0, 114, 115, + 116, 117, 118, 0, 119, 120, 121, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 122, 123, + 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, + 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, + 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, + 154, 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, 188, 189, 190, 191, 192, 193, + 194, 195, 196, 197, 198, 199, 200, 201, 202, 203, + 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, + 214, 215, 216, 217, 218, 219, 220, 221, 222, 223, + 224, 225, 226, 227, 228, 229, 230, 231, 232, 233, + 234, 235, 236, 237, 238, 239, 240, 241, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 522, 523, 17, 0, 0, 0, + 0, 0, 0, 0, 24, 25, 26, 0, 0, 554, + 30, 31, 32, 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, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 105, 0, 0, 0, 0, + 0, 0, 0, 0, 108, 0, 109, 0, 0, 0, + 0, 111, 0, 0, 0, 114, 115, 116, 117, 118, + 0, 119, 0, 121, 0, 0, 17, 0, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 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, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 105, 0, 0, 106, 107, + 0, 0, 0, 0, 108, 0, 109, 0, 0, 110, + 0, 111, 112, 113, 0, 114, 115, 116, 117, 118, + 0, 119, 120, 121, 0, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 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, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, + 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 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, 188, 189, 190, 191, 192, 193, 194, 195, 196, + 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, + 207, 208, 209, 210, 211, 212, 213, 214, 215, 216, + 217, 218, 219, 220, 221, 222, 223, 224, 225, 226, + 227, 228, 229, 230, 231, 232, 233, 234, 235, 236, + 237, 238, 239, 240, 241, 17, 0, 18, 19, 20, + 21, 22, 318, 24, 25, 26, 0, 28, 29, 30, + 31, 32, 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, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, + 101, 102, 103, 104, 105, 0, 0, 106, 107, 0, + 0, 0, 0, 108, 0, 109, 0, 0, 110, 0, + 111, 112, 113, 0, 114, 115, 116, 117, 118, 0, + 119, 120, 121, 0, 0, 17, 0, 0, 0, 0, + 0, 0, 0, 24, 25, 26, 0, 0, 0, 30, + 31, 32, 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, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, + 101, 102, 103, 104, 105, 0, 0, 0, 0, 0, + 0, 0, 0, 108, 0, 109, 0, 0, 0, 0, + 111, 0, 0, 0, 114, 115, 116, 117, 118, 0, + 119, 0, 121, 0, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 150, 151, 152, 153, 154, 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, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 241, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, + 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, + 148, 149, 150, 151, 152, 153, 154, 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, + 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, + 198, 199, 200, 201, 202, 203, 204, 205, 206, 207, + 208, 209, 210, 211, 212, 213, 214, 215, 216, 217, + 218, 219, 220, 221, 222, 223, 224, 225, 226, 227, + 228, 229, 230, 231, 232, 233, 234, 235, 236, 237, + 238, 239, 240, 241, 17, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 30, 31, + 32, 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, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 0, 0, 0, 0, 0, 0, + 0, 0, 108, 0, 109, 0, 0, 0, 0, 111, + 0, 0, 0, 114, 115, 116, 117, 118, 0, 119, + 0, 121, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, + 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 151, 152, 153, 154, 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, 188, + 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, + 199, 200, 201, 202, 203, 204, 205, 206, 207, 208, + 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, + 219, 220, 221, 222, 223, 224, 225, 226, 227, 228, + 229, 230, 231, 232, 233, 234, 235, 236, 237, 238, + 239, 240, 241 + }; + + /* YYCHECK. */ + const short int + LolFxParser::yycheck_[] = + { + 8, 7, 8, 8, 335, 7, 8, 1, 2, 343, + 331, 8, 21, 22, 3, 4, 225, 338, 8, 8, + 323, 433, 278, 399, 490, 346, 422, 413, 414, 23, + 307, 8, 252, 253, 254, 440, 415, 416, 447, 359, + 307, 321, 447, 576, 11, 12, 13, 14, 0, 447, + 440, 438, 461, 384, 21, 22, 442, 447, 444, 261, + 443, 11, 12, 461, 460, 321, 599, 323, 17, 18, + 19, 21, 22, 275, 341, 342, 455, 456, 398, 112, + 300, 440, 440, 116, 444, 440, 552, 195, 447, 447, + 21, 22, 447, 102, 445, 362, 441, 442, 510, 402, + 445, 112, 446, 112, 113, 116, 437, 116, 429, 112, + 447, 432, 433, 116, 580, 491, 125, 583, 442, 4, + 441, 438, 399, 8, 118, 445, 502, 21, 22, 452, + 453, 454, 399, 461, 101, 102, 438, 603, 440, 438, + 460, 421, 7, 8, 610, 112, 402, 439, 115, 116, + 441, 101, 102, 469, 470, 471, 472, 440, 125, 442, + 481, 440, 112, 483, 445, 421, 116, 440, 173, 440, + 490, 102, 548, 178, 461, 125, 181, 433, 446, 447, + 440, 112, 113, 446, 447, 116, 445, 176, 445, 510, + 448, 449, 197, 445, 125, 462, 463, 464, 465, 466, + 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, + 477, 478, 479, 480, 491, 192, 496, 445, 112, 113, + 419, 420, 116, 228, 491, 502, 417, 418, 441, 442, + 446, 125, 552, 442, 445, 502, 457, 613, 446, 447, + 496, 246, 573, 446, 447, 446, 447, 255, 569, 238, + 421, 441, 442, 458, 510, 263, 423, 251, 578, 459, + 580, 255, 440, 583, 446, 447, 263, 4, 602, 445, + 278, 548, 280, 263, 268, 467, 468, 598, 443, 273, + 438, 548, 442, 603, 465, 466, 294, 473, 474, 127, + 610, 446, 442, 441, 443, 447, 443, 443, 629, 630, + 445, 441, 446, 445, 298, 441, 441, 441, 441, 441, + 441, 319, 442, 321, 439, 323, 310, 424, 425, 426, + 427, 428, 429, 430, 431, 432, 433, 335, 443, 440, + 446, 441, 438, 4, 441, 343, 613, 441, 443, 8, + 8, 8, 8, 4, 8, 108, 613, 440, 440, 440, + 440, 440, 5, 440, 440, 443, 440, 440, 443, 440, + 440, 439, 268, 440, 443, 441, 441, 440, 440, 440, + 440, 440, 312, 475, 442, 564, 384, 476, 478, 477, + 396, 284, 479, 296, 480, 252, 396, 413, 396, 27, + 415, 504, 428, 599, 402, 245, 428, 263, 392, -1, + -1, 395, -1, -1, -1, -1, -1, 510, -1, -1, + -1, -1, -1, 421, -1, -1, -1, -1, -1, 413, + 428, -1, -1, -1, -1, 433, -1, -1, -1, 437, + -1, -1, -1, -1, 440, 440, 438, 446, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 496, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 510, -1, -1, -1, -1, -1, 516, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 515, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 554, -1, -1, -1, -1, 573, -1, -1, 576, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 599, -1, -1, 602, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 629, 630, 3, 4, 5, 6, 7, 8, 9, + -1, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 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, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 101, 102, 103, 104, 105, 106, 107, -1, 109, + 110, 111, 112, -1, 114, 115, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, + 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, + 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, 361, 362, 363, 364, 365, 366, 367, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 413, 414, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 438, 439, + 440, -1, -1, -1, -1, 445, -1, -1, 448, 449, + 450, 451, 3, 4, 5, 6, 7, 8, 9, -1, + 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, + 31, 32, 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, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, + 101, 102, 103, 104, 105, 106, 107, -1, 109, 110, + 111, 112, -1, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 248, 249, 250, + 251, 252, 253, 254, 255, 256, 257, 258, 259, 260, + 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, + 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, + 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, + 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, + 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, + 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, + 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, + 331, 332, 333, 334, 335, 336, 337, 338, 339, 340, + 341, 342, 343, 344, 345, 346, 347, 348, 349, 350, + 351, 352, 353, 354, 355, 356, 357, 358, 359, 360, + 361, 362, 363, 364, 365, 366, 367, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 413, 414, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 438, 439, 440, + -1, -1, -1, -1, 445, -1, -1, 448, 449, 450, + 451, 3, 4, 5, 6, 7, 8, 9, -1, 11, + 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 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, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, + 102, 103, 104, 105, 106, 107, -1, 109, 110, 111, + 112, -1, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 362, 363, 364, 365, 366, 367, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 413, 414, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 438, 439, 440, -1, + -1, -1, -1, 445, -1, -1, 448, 449, 450, 451, + 3, 4, 5, 6, 7, 8, 9, -1, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 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, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, + 103, 104, 105, 106, 107, -1, 109, 110, 111, 112, + -1, 114, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, + 363, 364, 365, 366, 367, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 413, 414, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 438, 439, 440, -1, -1, + -1, -1, 445, -1, -1, 448, 449, 450, 451, 3, + 4, 5, 6, 7, 8, 9, -1, 11, 12, 13, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, + 104, 105, 106, 107, -1, 109, 110, 111, 112, -1, + 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, + 124, 125, 126, 127, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, + 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, + 364, 365, 366, 367, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 413, + 414, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 438, -1, 440, -1, -1, -1, + -1, 445, -1, -1, 448, 449, 450, 451, 3, 4, + 5, 6, 7, 8, 9, -1, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, + 105, 106, 107, -1, 109, 110, 111, 112, -1, 114, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, + 365, 366, 367, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 413, 414, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 438, -1, 440, -1, -1, -1, -1, + 445, -1, -1, 448, 449, 450, 451, 3, 4, 5, + 6, 7, 8, 9, -1, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, -1, -1, 101, 102, -1, -1, -1, + -1, 107, -1, 109, -1, -1, 112, -1, 114, 115, + 116, -1, 118, 119, 120, 121, 122, -1, 124, 125, + 126, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, + 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, + 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, + 366, 367, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 413, 414, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 440, -1, -1, -1, -1, 445, + -1, -1, 448, 449, 450, 451, 3, 4, 5, 6, + 7, 8, 9, -1, 11, 12, 13, 14, 15, 16, + 17, 18, 19, -1, 21, 22, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, -1, -1, 101, 102, -1, -1, -1, -1, + 107, -1, 109, -1, -1, 112, -1, 114, 115, 116, + -1, 118, 119, 120, 121, 122, -1, 124, 125, 126, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, + 367, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 413, 414, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 3, 4, 5, 6, 7, 8, 9, 445, -1, + -1, 448, 449, 450, 451, 17, 18, 19, -1, -1, + -1, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 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, 70, 71, + 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, -1, -1, -1, + -1, -1, -1, -1, -1, 107, -1, 109, -1, -1, + -1, -1, 114, -1, -1, -1, 118, 119, 120, 121, + 122, -1, 124, -1, 126, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 248, 249, 250, 251, + 252, 253, 254, 255, 256, 257, 258, 259, 260, 261, + 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, + 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, + 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, + 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, + 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, + 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, + 322, 323, 324, 325, 326, 327, 328, 329, 330, 331, + 332, 333, 334, 335, 336, 337, 338, 339, 340, 341, + 342, 343, 344, 345, 346, 347, 348, 349, 350, 351, + 352, 353, 354, 355, 356, 357, 358, 359, 360, 361, + 362, 363, 364, 365, 366, 367, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 413, 414, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 443, -1, 445, -1, -1, 448, 449, 450, 451, + 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, + -1, -1, -1, -1, 17, 18, 19, -1, -1, -1, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 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, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, -1, -1, -1, -1, + -1, -1, -1, -1, 107, -1, 109, -1, -1, -1, + -1, 114, -1, -1, -1, 118, 119, 120, 121, 122, + -1, 124, -1, 126, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, + 363, 364, 365, 366, 367, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 413, 414, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 440, -1, -1, + -1, -1, 445, -1, -1, 448, 449, 450, 451, 3, + 4, 5, 6, 7, 8, 9, -1, -1, -1, -1, + -1, -1, -1, 17, 18, 19, -1, -1, -1, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, -1, -1, -1, -1, -1, + -1, -1, -1, 107, -1, 109, -1, -1, -1, -1, + 114, -1, -1, -1, 118, 119, 120, 121, 122, -1, + 124, -1, 126, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, + 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, + 364, 365, 366, 367, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 413, + 414, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 443, + -1, 445, -1, -1, 448, 449, 450, 451, 3, 4, + 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, + -1, -1, 17, 18, 19, -1, -1, -1, 23, 24, + 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + 95, 96, 97, 98, -1, -1, -1, -1, -1, -1, + -1, -1, 107, -1, 109, -1, -1, -1, -1, 114, + -1, -1, -1, 118, 119, 120, 121, 122, -1, 124, + -1, 126, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, + 365, 366, 367, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 413, 414, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 443, -1, + 445, -1, -1, 448, 449, 450, 451, 3, 4, 5, + 6, 7, 8, 9, -1, -1, -1, -1, -1, -1, + -1, 17, 18, 19, -1, -1, -1, 23, 24, 25, + 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, -1, -1, -1, -1, -1, -1, -1, + -1, 107, -1, 109, -1, -1, -1, -1, 114, -1, + -1, -1, 118, 119, 120, 121, 122, -1, 124, -1, + 126, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 413, 414, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 438, 439, 440, -1, -1, -1, 444, 7, 8, 9, - 448, 449, 450, 451, -1, -1, -1, 17, 18, 19, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 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, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, -1, 413, - 414, -1, -1, -1, -1, -1, 106, -1, 108, -1, - -1, -1, -1, 113, -1, -1, -1, 117, 118, 119, - 120, 121, -1, 123, 438, 125, 440, -1, -1, -1, - 444, -1, -1, -1, 448, 449, 450, 451, -1, -1, + -1, -1, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, + 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, + 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, + 366, 367, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 413, 414, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 443, -1, 445, + -1, -1, 448, 449, 450, 451, 3, 4, 5, 6, + 7, 8, 9, -1, -1, -1, -1, -1, -1, -1, + 17, 18, 19, -1, -1, -1, 23, 24, 25, 26, + 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, -1, -1, -1, -1, -1, -1, -1, -1, + 107, -1, 109, -1, -1, -1, -1, 114, -1, -1, + -1, 118, 119, 120, 121, 122, -1, 124, -1, 126, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 413, 414, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 438, -1, - 440, -1, -1, -1, 444, -1, -1, -1, 448, 449, - 450, 451, 3, 4, 5, 6, 7, 8, 9, -1, - 11, 12, 13, 14, 15, 16, 17, 18, 19, -1, - 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 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, 70, - 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, -1, -1, 100, - 101, -1, -1, -1, -1, 106, -1, 108, -1, -1, - 111, -1, 113, 114, 115, -1, 117, 118, 119, 120, - 121, -1, 123, 124, 125, 3, 4, 5, 6, 7, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 248, 249, 250, 251, 252, 253, 254, 255, 256, + 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, + 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, + 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, + 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, + 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, + 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, + 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, + 327, 328, 329, 330, 331, 332, 333, 334, 335, 336, + 337, 338, 339, 340, 341, 342, 343, 344, 345, 346, + 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, + 357, 358, 359, 360, 361, 362, 363, 364, 365, 366, + 367, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 413, 414, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 443, -1, 445, -1, + -1, 448, 449, 450, 451, 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, -1, -1, 17, - 18, 19, -1, -1, 22, 23, 24, 25, 26, 27, + 18, 19, -1, -1, -1, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 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, @@ -1606,30 +2741,9 @@ namespace lol { 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - -1, -1, -1, -1, -1, -1, -1, -1, 106, -1, - 108, -1, -1, -1, -1, 113, -1, -1, -1, 117, - 118, 119, 120, 121, -1, 123, -1, 125, 3, 4, - 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, - -1, -1, 17, 18, 19, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, -1, -1, -1, -1, -1, -1, -1, - -1, 106, -1, 108, -1, -1, -1, -1, 113, -1, - -1, -1, 117, 118, 119, 120, 121, -1, 123, -1, - 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 413, 414, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 444, -1, -1, -1, 448, 449, 450, - 451, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 98, -1, -1, -1, -1, -1, -1, -1, -1, 107, + -1, 109, -1, -1, -1, -1, 114, -1, -1, -1, + 118, 119, 120, 121, 122, -1, 124, -1, 126, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, @@ -1637,37 +2751,32 @@ namespace lol { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 413, 414, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 443, 444, -1, -1, -1, - 448, 449, 450, 451, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, + 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, + 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 413, 414, + -1, -1, -1, -1, -1, 413, 414, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 440, -1, -1, -1, 444, - -1, -1, -1, 448, 449, 450, 451, 3, 4, 5, - 6, 7, 8, 9, -1, -1, -1, -1, -1, -1, - -1, 17, 18, 19, -1, -1, 22, 23, 24, 25, - 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, -1, -1, -1, -1, -1, -1, -1, -1, - 106, -1, 108, -1, -1, -1, -1, 113, -1, -1, - -1, 117, 118, 119, 120, 121, -1, 123, -1, 125, - 3, 4, 5, 6, 7, 8, 9, -1, -1, -1, - -1, -1, -1, -1, 17, 18, 19, -1, -1, 22, + 3, 4, 5, 6, 7, 8, 9, 445, -1, -1, + 448, 449, 450, 451, 17, 18, 19, -1, -1, -1, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, @@ -1675,42 +2784,55 @@ namespace lol { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, -1, -1, -1, -1, -1, - -1, -1, -1, 106, -1, 108, -1, -1, -1, -1, - 113, -1, -1, -1, 117, 118, 119, 120, 121, -1, - 123, -1, 125, 3, 4, 5, 6, 7, 8, 9, - -1, -1, -1, -1, -1, -1, -1, 17, 18, 19, - -1, -1, 22, 23, 24, 25, 26, 27, 28, 29, - 30, 31, 32, 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, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, -1, -1, - -1, -1, -1, -1, -1, -1, 106, -1, 108, -1, - -1, -1, -1, 113, -1, -1, -1, 117, 118, 119, - 120, 121, -1, 123, -1, 125, -1, -1, -1, -1, + 93, 94, 95, 96, 97, 98, -1, -1, -1, -1, + -1, -1, -1, -1, 107, -1, 109, -1, -1, -1, + -1, 114, -1, -1, -1, 118, 119, 120, 121, 122, + -1, 124, -1, 126, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 413, 414, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 443, 444, -1, - -1, -1, 448, 449, 450, 451, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, + 363, 364, 365, 366, 367, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 413, 414, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 7, + 8, 9, 445, -1, -1, 448, 449, 450, 451, 17, + 18, 19, -1, -1, -1, 23, 24, 25, 26, 27, + 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, 77, + 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, -1, -1, -1, -1, -1, -1, -1, -1, 107, + -1, 109, -1, -1, -1, -1, 114, -1, -1, -1, + 118, 119, 120, 121, 122, -1, 124, -1, 126, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 443, 444, -1, -1, -1, 448, 449, 450, 451, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, @@ -1719,25 +2841,28 @@ namespace lol { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 413, 414, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 443, 444, -1, -1, -1, 448, 449, - 450, 451, 3, 4, 5, 6, 7, 8, 9, -1, - -1, -1, -1, -1, -1, -1, 17, 18, 19, -1, - -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, 32, 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, 70, - 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, -1, -1, -1, - -1, -1, -1, -1, -1, 106, -1, 108, -1, -1, - -1, -1, 113, -1, -1, -1, 117, 118, 119, 120, - 121, -1, 123, -1, 125, 3, 4, 5, 6, 7, - 8, 9, -1, -1, -1, -1, -1, -1, -1, 17, - 18, 19, -1, -1, 22, 23, 24, 25, 26, 27, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, + 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, + 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 9, -1, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 440, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 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, @@ -1745,42 +2870,14 @@ namespace lol { 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - -1, -1, -1, -1, -1, -1, -1, -1, 106, -1, - 108, -1, -1, -1, -1, 113, -1, -1, -1, 117, - 118, 119, 120, 121, -1, 123, -1, 125, 3, 4, - 5, 6, 7, 8, 9, -1, -1, -1, -1, -1, - -1, -1, 17, 18, 19, -1, -1, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, -1, -1, -1, -1, -1, -1, -1, - -1, 106, -1, 108, -1, -1, -1, -1, 113, -1, - -1, -1, 117, 118, 119, 120, 121, -1, 123, -1, - 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 98, -1, -1, 101, 102, -1, -1, -1, -1, 107, + -1, 109, -1, -1, 112, -1, 114, 115, 116, -1, + 118, 119, 120, 121, 122, -1, 124, 125, 126, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 413, 414, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 443, 444, 8, 9, -1, 448, 449, 450, - 451, -1, -1, 17, 18, 19, -1, -1, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, -1, 413, 414, -1, -1, -1, - -1, -1, 106, -1, 108, -1, -1, -1, -1, 113, - -1, -1, -1, 117, 118, 119, 120, 121, -1, 123, - -1, 125, -1, -1, -1, -1, 444, -1, -1, -1, - 448, 449, 450, 451, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, @@ -1788,54 +2885,120 @@ namespace lol { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 413, 414, + 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, + 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, + 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, + 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, + 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, + 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, + 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, + 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, + 328, 329, 330, 331, 332, 333, 334, 335, 336, 337, + 338, 339, 340, 341, 342, 343, 344, 345, 346, 347, + 348, 349, 350, 351, 352, 353, 354, 355, 356, 357, + 358, 359, 360, 361, 362, 363, 364, 365, 366, 367, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 444, - -1, -1, -1, 448, 449, 450, 451, 9, -1, 11, - 12, 13, 14, 15, 16, 17, 18, 19, -1, 21, - 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, - 32, 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, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, 95, 96, 97, -1, -1, 100, 101, - -1, -1, -1, -1, 106, -1, 108, -1, -1, 111, - -1, 113, 114, 115, -1, 117, 118, 119, 120, 121, - -1, 123, 124, 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 9, -1, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 440, 21, 22, 23, - 24, 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, -1, -1, 100, 101, -1, -1, - -1, -1, 106, -1, 108, -1, -1, 111, -1, 113, - 114, 115, -1, 117, 118, 119, 120, 121, -1, 123, - 124, 125, 9, -1, 11, 12, 13, 14, 15, 16, - 17, 18, 19, -1, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, -1, -1, 100, 101, -1, -1, -1, -1, 106, - -1, 108, -1, -1, 111, -1, 113, 114, 115, -1, - 117, 118, 119, 120, 121, -1, 123, 124, 125, -1, + 9, -1, 11, 12, 13, 14, 15, 16, 17, 18, + 19, 439, 21, 22, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, + -1, -1, 101, 102, -1, -1, -1, -1, 107, -1, + 109, -1, -1, 112, -1, 114, 115, 116, -1, 118, + 119, 120, 121, 122, -1, 124, 125, 126, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 248, + 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, + 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, + 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 346, 347, 348, + 349, 350, 351, 352, 353, 354, 355, 356, 357, 358, + 359, 360, 361, 362, 363, 364, 365, 366, 367, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, + -1, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 439, 21, 22, 23, 24, 25, 26, 27, 28, 29, + 30, 31, 32, 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, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, -1, + -1, 101, 102, -1, -1, -1, -1, 107, -1, 109, + -1, -1, 112, -1, 114, 115, 116, -1, 118, 119, + 120, 121, 122, -1, 124, 125, 126, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 248, 249, + 250, 251, 252, 253, 254, 255, 256, 257, 258, 259, + 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, + 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, + 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, + 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, + 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, + 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, + 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, + 330, 331, 332, 333, 334, 335, 336, 337, 338, 339, + 340, 341, 342, 343, 344, 345, 346, 347, 348, 349, + 350, 351, 352, 353, 354, 355, 356, 357, 358, 359, + 360, 361, 362, 363, 364, 365, 366, 367, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 9, 439, 11, 12, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 7, 8, 9, -1, -1, -1, + -1, -1, -1, -1, 17, 18, 19, -1, -1, 439, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 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, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, -1, -1, -1, -1, + -1, -1, -1, -1, 107, -1, 109, -1, -1, -1, + -1, 114, -1, -1, -1, 118, 119, 120, 121, 122, + -1, 124, -1, 126, -1, -1, 9, -1, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, @@ -1844,15 +3007,83 @@ namespace lol { 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, -1, -1, 100, 101, -1, - -1, -1, -1, 106, -1, 108, -1, -1, 111, -1, - 113, 114, 115, -1, 117, 118, 119, 120, 121, -1, - 123, 124, 125, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 9, -1, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 439, 21, 22, 23, 24, + 93, 94, 95, 96, 97, 98, -1, -1, 101, 102, + -1, -1, -1, -1, 107, -1, 109, -1, -1, 112, + -1, 114, 115, 116, -1, 118, 119, 120, 121, 122, + -1, 124, 125, 126, -1, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, + 363, 364, 365, 366, 367, 248, 249, 250, 251, 252, + 253, 254, 255, 256, 257, 258, 259, 260, 261, 262, + 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, + 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, + 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, + 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, + 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, + 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, + 323, 324, 325, 326, 327, 328, 329, 330, 331, 332, + 333, 334, 335, 336, 337, 338, 339, 340, 341, 342, + 343, 344, 345, 346, 347, 348, 349, 350, 351, 352, + 353, 354, 355, 356, 357, 358, 359, 360, 361, 362, + 363, 364, 365, 366, 367, 9, -1, 11, 12, 13, + 14, 15, 16, 17, 18, 19, -1, 21, 22, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, -1, -1, 101, 102, -1, + -1, -1, -1, 107, -1, 109, -1, -1, 112, -1, + 114, 115, 116, -1, 118, 119, 120, 121, 122, -1, + 124, 125, 126, -1, -1, 9, -1, -1, -1, -1, + -1, -1, -1, 17, 18, 19, -1, -1, -1, 23, + 24, 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, + 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, + 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, -1, -1, -1, -1, -1, + -1, -1, -1, 107, -1, 109, -1, -1, -1, -1, + 114, -1, -1, -1, 118, 119, 120, 121, 122, -1, + 124, -1, 126, -1, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, + 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, + 364, 365, 366, 367, 248, 249, 250, 251, 252, 253, + 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, + 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, + 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, + 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, + 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, + 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, + 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, + 324, 325, 326, 327, 328, 329, 330, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 342, 343, + 344, 345, 346, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, + 364, 365, 366, 367, 9, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, @@ -1860,11 +3091,34 @@ namespace lol { 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, -1, -1, 100, 101, -1, -1, -1, - -1, 106, -1, 108, -1, -1, 111, -1, 113, 114, - 115, -1, 117, 118, 119, 120, 121, -1, 123, 124, - 125, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 439 + 95, 96, 97, 98, -1, -1, -1, -1, -1, -1, + -1, -1, 107, -1, 109, -1, -1, -1, -1, 114, + -1, -1, -1, 118, 119, 120, 121, 122, -1, 124, + -1, 126, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 248, 249, 250, 251, 252, 253, 254, + 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, + 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, + 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, + 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, + 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, + 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, + 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 331, 332, 333, 334, + 335, 336, 337, 338, 339, 340, 341, 342, 343, 344, + 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, + 355, 356, 357, 358, 359, 360, 361, 362, 363, 364, + 365, 366, 367 }; /* STOS_[STATE-NUM] -- The (internal number of the) accessing @@ -1872,60 +3126,73 @@ namespace lol { const unsigned short int LolFxParser::yystos_[] = { - 0, 224, 380, 463, 464, 465, 466, 471, 472, 8, - 196, 245, 473, 0, 464, 9, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, - 25, 26, 27, 28, 29, 30, 31, 32, 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, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 100, 101, 106, 108, 111, 113, 114, - 115, 117, 118, 119, 120, 121, 123, 124, 125, 505, - 506, 507, 508, 509, 514, 515, 516, 517, 518, 519, - 523, 524, 525, 526, 527, 528, 529, 554, 555, 556, - 438, 444, 111, 115, 111, 115, 444, 8, 528, 111, - 115, 8, 438, 438, 440, 540, 445, 446, 21, 101, - 111, 112, 115, 511, 512, 522, 440, 446, 8, 518, - 524, 524, 524, 8, 440, 525, 442, 526, 555, 194, - 467, 468, 8, 474, 475, 8, 520, 521, 526, 438, - 16, 523, 525, 530, 531, 3, 4, 5, 6, 7, - 8, 98, 99, 102, 103, 104, 105, 109, 110, 116, - 122, 126, 413, 414, 438, 439, 440, 444, 448, 449, - 450, 451, 476, 477, 478, 480, 481, 482, 483, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, - 495, 496, 497, 498, 499, 500, 501, 503, 505, 506, - 525, 535, 536, 537, 538, 541, 542, 543, 546, 548, - 549, 553, 511, 510, 513, 525, 512, 8, 441, 442, - 444, 524, 438, 443, 487, 500, 504, 525, 8, 439, - 467, 441, 445, 446, 441, 445, 446, 440, 530, 525, - 8, 532, 533, 439, 531, 440, 503, 440, 461, 440, - 536, 444, 444, 440, 503, 444, 444, 487, 487, 439, - 541, 503, 413, 414, 442, 447, 445, 445, 446, 125, - 501, 444, 424, 425, 426, 427, 428, 429, 430, 431, - 432, 433, 441, 502, 487, 452, 453, 454, 448, 449, - 419, 420, 415, 416, 455, 456, 417, 418, 457, 458, - 459, 421, 423, 422, 460, 440, 446, 439, 536, 8, - 510, 513, 441, 442, 501, 534, 443, 504, 530, 443, - 438, 8, 475, 4, 521, 439, 532, 442, 440, 446, - 461, 126, 535, 542, 550, 503, 440, 503, 503, 516, - 523, 545, 439, 445, 479, 503, 7, 8, 482, 501, - 501, 487, 487, 487, 489, 489, 490, 490, 491, 491, - 491, 491, 492, 492, 493, 494, 495, 496, 497, 498, - 503, 501, 442, 534, 443, 504, 441, 443, 439, 8, - 172, 177, 180, 196, 227, 245, 440, 469, 470, 6, - 440, 443, 504, 533, 444, 545, 551, 552, 445, 445, - 8, 445, 443, 461, 504, 441, 443, 534, 441, 8, - 440, 441, 442, 441, 441, 441, 441, 442, 441, 439, - 469, 443, 503, 440, 445, 536, 544, 438, 441, 537, - 539, 540, 501, 443, 534, 441, 534, 440, 442, 3, - 4, 8, 175, 237, 4, 8, 8, 8, 8, 4, - 8, 445, 503, 539, 107, 541, 547, 534, 534, 443, - 504, 440, 440, 440, 440, 440, 443, 440, 440, 440, - 440, 443, 440, 440, 536, 439, 440, 443, 441, 441, - 440, 4, 8, 8, 191, 440, 440, 440, 440 + 0, 225, 442, 465, 466, 467, 468, 474, 475, 7, + 8, 469, 469, 476, 477, 0, 466, 9, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, + 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, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, 101, 102, 107, 109, + 112, 114, 115, 116, 118, 119, 120, 121, 122, 124, + 125, 126, 248, 249, 250, 251, 252, 253, 254, 255, + 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, + 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, + 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, + 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, + 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, + 326, 327, 328, 329, 330, 331, 332, 333, 334, 335, + 336, 337, 338, 339, 340, 341, 342, 343, 344, 345, + 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, + 356, 357, 358, 359, 360, 361, 362, 363, 364, 365, + 366, 367, 463, 464, 507, 508, 509, 510, 511, 518, + 519, 520, 521, 522, 523, 527, 528, 529, 530, 531, + 532, 533, 534, 559, 560, 561, 438, 443, 444, 112, + 116, 112, 116, 445, 469, 533, 112, 116, 438, 469, + 438, 440, 545, 446, 447, 21, 22, 102, 112, 113, + 116, 125, 513, 514, 515, 516, 526, 440, 447, 469, + 522, 528, 528, 528, 440, 469, 529, 442, 530, 560, + 195, 470, 471, 476, 469, 524, 525, 530, 16, 527, + 529, 535, 536, 438, 3, 4, 5, 6, 7, 8, + 99, 100, 103, 104, 105, 106, 110, 111, 117, 123, + 127, 413, 414, 438, 439, 440, 445, 448, 449, 450, + 451, 478, 479, 480, 482, 483, 484, 485, 486, 487, + 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, + 498, 499, 500, 501, 502, 503, 505, 507, 508, 529, + 540, 541, 542, 543, 546, 547, 548, 551, 553, 554, + 558, 513, 461, 512, 517, 529, 515, 469, 441, 442, + 445, 528, 438, 443, 489, 502, 506, 529, 469, 439, + 470, 441, 446, 447, 440, 529, 469, 537, 538, 439, + 536, 535, 440, 505, 440, 461, 440, 541, 445, 445, + 440, 505, 445, 445, 489, 489, 439, 546, 505, 413, + 414, 442, 444, 446, 446, 447, 126, 503, 445, 424, + 425, 426, 427, 428, 429, 430, 431, 432, 433, 441, + 504, 489, 452, 453, 454, 448, 449, 419, 420, 415, + 416, 455, 456, 417, 418, 457, 458, 459, 421, 423, + 422, 460, 440, 447, 439, 541, 469, 469, 512, 517, + 441, 442, 503, 539, 443, 506, 535, 443, 438, 4, + 525, 537, 442, 440, 447, 439, 461, 127, 540, 547, + 555, 505, 440, 505, 505, 520, 527, 550, 439, 446, + 481, 505, 7, 8, 484, 503, 503, 489, 489, 489, + 491, 491, 492, 492, 493, 493, 493, 493, 494, 494, + 495, 496, 497, 498, 499, 500, 505, 503, 442, 539, + 443, 506, 441, 443, 439, 8, 173, 178, 181, 197, + 228, 246, 440, 472, 473, 440, 443, 506, 538, 445, + 550, 556, 557, 446, 446, 469, 446, 443, 461, 506, + 441, 443, 539, 441, 440, 469, 441, 442, 441, 441, + 441, 441, 442, 441, 439, 472, 443, 505, 440, 446, + 541, 549, 438, 441, 542, 544, 545, 503, 443, 539, + 441, 539, 440, 442, 3, 4, 8, 176, 238, 4, + 8, 8, 8, 8, 4, 8, 446, 505, 544, 108, + 546, 552, 539, 539, 443, 506, 440, 440, 440, 440, + 440, 443, 440, 440, 440, 440, 443, 440, 440, 541, + 439, 440, 443, 441, 441, 440, 4, 8, 8, 192, + 440, 440, 440, 440 }; #if YYDEBUG @@ -1978,7 +3245,7 @@ namespace lol { 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 123, 125, - 59, 61, 91, 93, 40, 41, 44, 46, 43, 45, + 59, 61, 91, 93, 46, 40, 41, 44, 43, 45, 33, 126, 42, 47, 37, 60, 62, 38, 94, 124, 63, 58 }; @@ -1988,67 +3255,66 @@ namespace lol { const unsigned short int LolFxParser::yyr1_[] = { - 0, 462, 463, 464, 464, 465, 465, 466, 467, 467, - 468, 469, 469, 470, 470, 470, 470, 470, 470, 470, - 470, 470, 470, 470, 470, 470, 470, 470, 471, 472, - 473, 473, 474, 474, 475, 475, 476, 477, 477, 477, - 477, 477, 477, 478, 478, 478, 478, 478, 478, 479, - 480, 481, 481, 482, 482, 483, 483, 484, 484, 485, - 486, 486, 486, 487, 487, 487, 487, 488, 488, 488, - 488, 489, 489, 489, 489, 490, 490, 490, 491, 491, - 491, 492, 492, 492, 492, 492, 493, 493, 493, 494, - 494, 495, 495, 496, 496, 497, 497, 498, 498, 499, - 499, 500, 500, 501, 501, 502, 502, 502, 502, 502, - 502, 502, 502, 502, 502, 502, 503, 503, 504, 505, - 505, 505, 505, 505, 505, 505, 505, 506, 507, 507, - 508, 508, 509, 510, 510, 511, 511, 511, 511, 512, - 512, 512, 512, 512, 513, 514, 514, 514, 514, 514, - 514, 514, 515, 515, 515, 515, 515, 515, 515, 515, - 516, 516, 517, 518, 518, 518, 519, 520, 520, 521, - 521, 522, 523, 523, 523, 523, 523, 523, 523, 523, - 524, 524, 524, 524, 524, 524, 524, 524, 524, 524, - 524, 525, 525, 526, 526, 526, 527, 527, 527, 527, - 527, 527, 527, 527, 527, 527, 527, 527, 527, 527, - 527, 527, 527, 527, 527, 527, 527, 527, 527, 527, - 527, 527, 527, 527, 527, 527, 527, 527, 527, 527, - 527, 527, 527, 527, 527, 527, 527, 527, 527, 527, - 527, 527, 527, 527, 527, 527, 527, 527, 527, 527, - 527, 527, 527, 527, 527, 527, 527, 527, 527, 527, - 527, 527, 527, 527, 527, 527, 527, 527, 527, 527, - 527, 527, 527, 527, 527, 527, 527, 527, 527, 527, - 527, 527, 527, 528, 528, 528, 529, 529, 530, 530, - 531, 531, 532, 532, 533, 533, 533, 534, 535, 536, - 536, 537, 537, 537, 537, 537, 537, 537, 538, 538, - 539, 539, 540, 540, 541, 541, 542, 542, 543, 544, - 544, 545, 545, 546, 547, 547, 548, 548, 549, 549, - 549, 550, 550, 551, 551, 552, 552, 553, 553, 553, - 553, 553, 554, 554, 555, 555, 556 + 0, 462, 463, 463, 463, 463, 463, 463, 463, 463, + 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, + 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, + 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, + 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, + 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, + 463, 463, 463, 463, 463, 463, 463, 463, 463, 463, + 463, 463, 463, 463, 463, 463, 463, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 464, 464, 464, + 464, 464, 464, 464, 464, 464, 464, 465, 466, 466, + 467, 467, 468, 469, 469, 470, 470, 471, 472, 472, + 473, 473, 473, 473, 473, 473, 473, 473, 473, 473, + 473, 473, 473, 473, 473, 474, 475, 476, 476, 477, + 478, 479, 479, 479, 479, 479, 479, 480, 480, 480, + 480, 480, 480, 481, 482, 483, 483, 484, 484, 485, + 485, 486, 486, 487, 488, 488, 488, 489, 489, 489, + 489, 490, 490, 490, 490, 491, 491, 491, 491, 492, + 492, 492, 493, 493, 493, 494, 494, 494, 494, 494, + 495, 495, 495, 496, 496, 497, 497, 498, 498, 499, + 499, 500, 500, 501, 501, 502, 502, 503, 503, 504, + 504, 504, 504, 504, 504, 504, 504, 504, 504, 504, + 505, 505, 506, 507, 507, 507, 507, 507, 507, 507, + 507, 508, 509, 509, 510, 510, 511, 512, 512, 513, + 513, 514, 514, 514, 514, 515, 515, 516, 516, 516, + 516, 516, 516, 517, 518, 518, 518, 518, 518, 518, + 518, 519, 519, 519, 519, 519, 519, 519, 519, 520, + 520, 521, 522, 522, 522, 523, 524, 524, 525, 525, + 526, 527, 527, 527, 527, 527, 527, 527, 527, 528, + 528, 528, 528, 528, 528, 528, 528, 528, 528, 528, + 528, 529, 529, 530, 530, 530, 531, 531, 532, 532, + 532, 532, 532, 532, 532, 532, 532, 532, 532, 532, + 532, 533, 533, 533, 534, 534, 535, 535, 536, 536, + 537, 537, 538, 538, 538, 539, 540, 541, 541, 542, + 542, 542, 542, 542, 542, 542, 543, 543, 544, 544, + 545, 545, 546, 546, 547, 547, 548, 549, 549, 550, + 550, 551, 552, 552, 553, 553, 554, 554, 554, 555, + 555, 556, 556, 557, 557, 558, 558, 558, 558, 558, + 559, 559, 560, 560, 561 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ const unsigned char LolFxParser::yyr2_[] = { - 0, 2, 1, 1, 2, 1, 1, 5, 1, 2, - 5, 1, 2, 1, 4, 4, 4, 4, 4, 7, - 7, 7, 7, 4, 4, 4, 4, 4, 2, 5, - 1, 1, 3, 1, 4, 3, 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, 6, 7, 9, 10, 2, 2, 1, 1, - 2, 3, 3, 2, 5, 3, 2, 3, 2, 0, - 1, 1, 1, 1, 1, 1, 3, 5, 6, 7, - 8, 5, 1, 2, 4, 5, 6, 7, 4, 2, - 1, 2, 1, 1, 1, 1, 4, 1, 3, 1, - 3, 1, 1, 1, 2, 2, 1, 2, 3, 1, - 1, 1, 1, 2, 2, 2, 2, 2, 2, 1, - 1, 1, 2, 1, 3, 4, 1, 1, 1, 1, + 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -2057,13 +3323,40 @@ namespace lol { 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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, 4, 1, 3, 1, 3, 4, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, - 1, 1, 2, 3, 1, 2, 1, 2, 5, 3, - 1, 1, 4, 7, 0, 1, 3, 2, 5, 7, - 6, 1, 1, 1, 0, 2, 3, 2, 2, 2, - 3, 2, 1, 2, 1, 1, 2 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, + 1, 1, 5, 1, 1, 1, 2, 5, 1, 2, + 1, 4, 4, 4, 4, 4, 7, 7, 7, 7, + 4, 4, 4, 4, 4, 2, 3, 3, 1, 1, + 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, 6, 7, 9, 10, + 2, 2, 1, 1, 2, 3, 3, 2, 5, 3, + 1, 3, 2, 3, 2, 1, 1, 0, 1, 1, + 1, 1, 1, 1, 1, 3, 5, 6, 7, 8, + 5, 1, 2, 4, 5, 6, 7, 4, 2, 1, + 2, 1, 1, 1, 1, 4, 1, 3, 1, 3, + 1, 1, 1, 2, 2, 1, 2, 3, 1, 1, + 1, 1, 2, 2, 2, 2, 2, 2, 1, 1, + 1, 1, 2, 1, 3, 4, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 5, 4, 1, 2, 3, 4, + 1, 3, 1, 3, 4, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 2, 3, 1, 1, + 2, 3, 1, 2, 1, 2, 5, 3, 1, 1, + 4, 7, 0, 1, 3, 2, 5, 7, 6, 1, + 1, 1, 0, 2, 3, 2, 2, 2, 3, 2, + 1, 2, 1, 1, 2 }; #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE @@ -2076,11 +3369,11 @@ namespace lol { "UINTCONSTANT", "FLOATCONSTANT", "FIELDSELECTION", "IDENTIFIER", "TYPENAME", "GT_SUBROUTINE", "GT_PATCH", "GT_SAMPLE", "GT_FLAT", "GT_SMOOTH", "GT_LAYOUT", "GT_INVARIANT", "GT_HIGHP", "GT_MEDIUMP", - "GT_LOWP", "GT_PRECISION", "GT_ATTRIBUTE", "GT_VEC2", "GT_VEC3", - "GT_VEC4", "GT_BVEC2", "GT_BVEC3", "GT_BVEC4", "GT_DVEC2", "GT_DVEC3", - "GT_DVEC4", "GT_IVEC2", "GT_IVEC3", "GT_IVEC4", "GT_UVEC2", "GT_UVEC3", - "GT_UVEC4", "GT_MAT2", "GT_MAT2X2", "GT_MAT2X3", "GT_MAT2X4", "GT_MAT3", - "GT_MAT3X2", "GT_MAT3X3", "GT_MAT3X4", "GT_MAT4", "GT_MAT4X2", + "GT_LOWP", "GT_PRECISION", "GT_ATTRIBUTE", "GT_VARYING", "GT_VEC2", + "GT_VEC3", "GT_VEC4", "GT_BVEC2", "GT_BVEC3", "GT_BVEC4", "GT_DVEC2", + "GT_DVEC3", "GT_DVEC4", "GT_IVEC2", "GT_IVEC3", "GT_IVEC4", "GT_UVEC2", + "GT_UVEC3", "GT_UVEC4", "GT_MAT2", "GT_MAT2X2", "GT_MAT2X3", "GT_MAT2X4", + "GT_MAT3", "GT_MAT3X2", "GT_MAT3X3", "GT_MAT3X4", "GT_MAT4", "GT_MAT4X2", "GT_MAT4X3", "GT_MAT4X4", "GT_DMAT2", "GT_DMAT2X2", "GT_DMAT2X3", "GT_DMAT2X4", "GT_DMAT3", "GT_DMAT3X2", "GT_DMAT3X3", "GT_DMAT3X4", "GT_DMAT4", "GT_DMAT4X2", "GT_DMAT4X3", "GT_DMAT4X4", @@ -2161,8 +3454,8 @@ namespace lol { "PREPROCESSOR_ENDIF", "PREPROCESSOR_ERROR", "PREPROCESSOR_IF", "PREPROCESSOR_IFDEF", "PREPROCESSOR_IFNDEF", "PREPROCESSOR_INCLUDE", "PREPROCESSOR_LINE", "PREPROCESSOR_PRAGMA", "PREPROCESSOR_UNDEF", - "PREPROCESSOR_REGION", "PRAGMA_LOLFX", "HT_AUTO", "HT_CATCH", "HT_CHAR", - "HT_CLASS", "HT_CONST_CAST", "HT_DELETE", "HT_DYNAMIC_CAST", "HT_ENUM", + "PREPROCESSOR_REGION", "HT_AUTO", "HT_CATCH", "HT_CHAR", "HT_CLASS", + "HT_CONST_CAST", "HT_DELETE", "HT_DYNAMIC_CAST", "HT_ENUM", "HT_EXPLICIT", "HT_FRIEND", "HT_GOTO", "HT_LONG", "HT_MUTABLE", "HT_NEW", "HT_OPERATOR", "HT_PRIVATE", "HT_PROTECTED", "HT_PUBLIC", "HT_REINTERPRET_CAST", "HT_SHORT", "HT_SIGNED", "HT_SIZEOF", @@ -2172,16 +3465,17 @@ namespace lol { "T_AND", "T_OR", "T_XOR", "T_MULEQ", "T_DIVEQ", "T_MODEQ", "T_ADDEQ", "T_SUBEQ", "T_LEFTEQ", "T_RIGHTEQ", "T_ANDEQ", "T_XOREQ", "T_OREQ", "FLOAT", "STRING", "NAME", "T_ERROR", "'{'", "'}'", "';'", "'='", "'['", - "']'", "'('", "')'", "','", "'.'", "'+'", "'-'", "'!'", "'~'", "'*'", + "']'", "'.'", "'('", "')'", "','", "'+'", "'-'", "'!'", "'~'", "'*'", "'/'", "'%'", "'<'", "'>'", "'&'", "'^'", "'|'", "'?'", "':'", "$accept", - "lolfx_file", "lolfx_section_list", "lolfx_section", "lolfx_technique", - "pass_list", "pass", "pass_stmt_list", "pass_stmt", "lolfx_shader", - "lolfx_shader_declaration", "lolfx_shader_type", - "lolfx_shader_description_list", "lolfx_shader_description", - "glsl_variable_identifier", "glsl_primary_expression", - "glsl_postfix_expression", "glsl_integer_expression", - "glsl_function_call", "glsl_function_call_or_method", - "glsl_function_call_generic", "glsl_function_call_header_no_parameters", + "group_glsl_type", "group_hlsl_type", "lolfx_file", "lolfx_section_list", + "lolfx_section", "lolfx_technique", "lolfx_identifier", "pass_list", + "pass", "pass_stmt_list", "pass_stmt", "lolfx_shader", + "lolfx_shader_declaration", "lolfx_shader_name_list", + "lolfx_shader_name", "glsl_variable_identifier", + "glsl_primary_expression", "glsl_postfix_expression", + "glsl_integer_expression", "glsl_function_call", + "glsl_function_call_or_method", "glsl_function_call_generic", + "glsl_function_call_header_no_parameters", "glsl_function_call_header_with_parameters", "glsl_function_call_header", "glsl_function_identifier", "glsl_unary_expression", "glsl_unary_operator", "glsl_multiplicative_expression", @@ -2195,7 +3489,8 @@ namespace lol { "glsl_constant_expression", "glsl_declaration", "glsl_function_prototype", "glsl_function_declarator", "glsl_function_header_with_parameters", "glsl_function_header", - "glsl_parameter_declarator", "glsl_parameter_declaration", + "glsl_parameter_declarator", "lolfx_parameter_declaration", + "glsl_parameter_declaration", "lolfx_parameter_qualifier", "glsl_parameter_qualifier", "glsl_parameter_type_specifier", "glsl_init_declarator_list", "glsl_single_declaration", "glsl_fully_specified_type", "glsl_invariant_qualifier", @@ -2203,17 +3498,18 @@ namespace lol { "glsl_layout_qualifier_id_list", "glsl_layout_qualifier_id", "glsl_parameter_type_qualifier", "glsl_type_qualifier", "glsl_storage_qualifier", "glsl_type_specifier", - "glsl_type_specifier_no_prec", "glsl_type_specifier_nonarray", - "glsl_precision_qualifier", "glsl_struct_specifier", - "glsl_struct_declaration_list", "glsl_struct_declaration", - "glsl_struct_declarator_list", "glsl_struct_declarator", - "glsl_initializer", "glsl_declaration_statement", "glsl_statement", - "glsl_simple_statement", "glsl_compound_statement", - "glsl_statement_no_new_scope", "glsl_compound_statement_no_new_scope", - "glsl_statement_list", "glsl_expression_statement", - "glsl_selection_statement", "glsl_selection_rest_statement", - "glsl_condition", "glsl_switch_statement", "glsl_switch_statement_list", - "glsl_case_label", "glsl_iteration_statement", "glsl_for_init_statement", + "glsl_type_specifier_no_prec", "lolfx_type_specifier_nonarray", + "glsl_type_specifier_nonarray", "glsl_precision_qualifier", + "glsl_struct_specifier", "glsl_struct_declaration_list", + "glsl_struct_declaration", "glsl_struct_declarator_list", + "glsl_struct_declarator", "glsl_initializer", + "glsl_declaration_statement", "glsl_statement", "glsl_simple_statement", + "glsl_compound_statement", "glsl_statement_no_new_scope", + "glsl_compound_statement_no_new_scope", "glsl_statement_list", + "glsl_expression_statement", "glsl_selection_statement", + "glsl_selection_rest_statement", "glsl_condition", + "glsl_switch_statement", "glsl_switch_statement_list", "glsl_case_label", + "glsl_iteration_statement", "glsl_for_init_statement", "glsl_conditionopt", "glsl_for_rest_statement", "glsl_jump_statement", "glsl_translation_unit", "glsl_external_declaration", "glsl_function_definition", 0 @@ -2225,110 +3521,135 @@ namespace lol { const LolFxParser::rhs_number_type LolFxParser::yyrhs_[] = { - 463, 0, -1, 464, -1, 465, -1, 465, 464, -1, - 466, -1, 471, -1, 224, 8, 438, 467, 439, -1, - 468, -1, 468, 467, -1, 194, 8, 438, 469, 439, - -1, 470, -1, 470, 469, -1, 440, -1, 8, 441, - 8, 440, -1, 8, 441, 4, 440, -1, 8, 441, - 3, 440, -1, 8, 441, 175, 440, -1, 8, 441, - 237, 440, -1, 8, 442, 4, 443, 441, 8, 440, - -1, 8, 442, 4, 443, 441, 4, 440, -1, 227, - 442, 4, 443, 441, 8, 440, -1, 227, 442, 4, - 443, 441, 191, 440, -1, 172, 441, 8, 440, -1, - 177, 441, 8, 440, -1, 180, 441, 8, 440, -1, - 196, 441, 8, 440, -1, 245, 441, 8, 440, -1, - 472, 554, -1, 380, 473, 444, 474, 445, -1, 245, - -1, 196, -1, 475, 446, 475, -1, 475, -1, 8, - 441, 8, 6, -1, 8, 441, 8, -1, 8, -1, - 476, -1, 4, -1, 5, -1, 6, -1, 3, -1, - 444, 503, 445, -1, 477, -1, 478, 442, 479, 443, - -1, 480, -1, 478, 447, 7, -1, 478, 413, -1, - 478, 414, -1, 503, -1, 481, -1, 482, -1, 478, - 447, 482, -1, 484, 445, -1, 483, 445, -1, 485, - 125, -1, 485, -1, 485, 501, -1, 484, 446, 501, - -1, 486, 444, -1, 525, -1, 8, -1, 7, -1, - 478, -1, 413, 487, -1, 414, 487, -1, 488, 487, - -1, 448, -1, 449, -1, 450, -1, 451, -1, 487, - -1, 489, 452, 487, -1, 489, 453, 487, -1, 489, - 454, 487, -1, 489, -1, 490, 448, 489, -1, 490, - 449, 489, -1, 490, -1, 491, 419, 490, -1, 491, - 420, 490, -1, 491, -1, 492, 455, 491, -1, 492, - 456, 491, -1, 492, 415, 491, -1, 492, 416, 491, - -1, 492, -1, 493, 417, 492, -1, 493, 418, 492, - -1, 493, -1, 494, 457, 493, -1, 494, -1, 495, - 458, 494, -1, 495, -1, 496, 459, 495, -1, 496, - -1, 497, 421, 496, -1, 497, -1, 498, 423, 497, - -1, 498, -1, 499, 422, 498, -1, 499, -1, 499, - 460, 503, 461, 501, -1, 500, -1, 487, 502, 501, - -1, 441, -1, 424, -1, 425, -1, 426, -1, 427, - -1, 428, -1, 429, -1, 430, -1, 431, -1, 432, - -1, 433, -1, 501, -1, 503, 446, 501, -1, 500, - -1, 506, 440, -1, 514, 440, -1, 20, 528, 526, - 440, -1, 523, 8, 438, 530, 439, 440, -1, 523, - 8, 438, 530, 439, 8, 440, -1, 523, 8, 438, - 530, 439, 8, 442, 443, 440, -1, 523, 8, 438, - 530, 439, 8, 442, 504, 443, 440, -1, 523, 440, - -1, 507, 445, -1, 509, -1, 508, -1, 509, 511, - -1, 508, 446, 511, -1, 516, 8, 444, -1, 525, - 8, -1, 525, 8, 442, 504, 443, -1, 522, 512, - 510, -1, 512, 510, -1, 522, 512, 513, -1, 512, - 513, -1, -1, 111, -1, 115, -1, 112, -1, 21, - -1, 525, -1, 515, -1, 514, 446, 8, -1, 514, - 446, 8, 442, 443, -1, 514, 446, 8, 442, 504, - 443, -1, 514, 446, 8, 442, 443, 441, 534, -1, - 514, 446, 8, 442, 504, 443, 441, 534, -1, 514, - 446, 8, 441, 534, -1, 516, -1, 516, 8, -1, - 516, 8, 442, 443, -1, 516, 8, 442, 504, 443, - -1, 516, 8, 442, 443, 441, 534, -1, 516, 8, - 442, 504, 443, 441, 534, -1, 516, 8, 441, 534, - -1, 16, 8, -1, 525, -1, 523, 525, -1, 16, - -1, 14, -1, 13, -1, 114, -1, 15, 444, 520, - 445, -1, 521, -1, 520, 446, 521, -1, 8, -1, - 8, 441, 4, -1, 101, -1, 524, -1, 519, -1, - 519, 524, -1, 518, 524, -1, 518, -1, 517, 524, - -1, 517, 518, 524, -1, 517, -1, 101, -1, 111, - -1, 115, -1, 100, 111, -1, 100, 115, -1, 11, - 111, -1, 11, 115, -1, 12, 111, -1, 12, 115, - -1, 124, -1, 21, -1, 526, -1, 528, 526, -1, - 527, -1, 527, 442, 443, -1, 527, 442, 504, 443, - -1, 125, -1, 108, -1, 106, -1, 113, -1, 123, - -1, 97, -1, 22, -1, 23, -1, 24, -1, 28, - -1, 29, -1, 30, -1, 25, -1, 26, -1, 27, - -1, 31, -1, 32, -1, 33, -1, 34, -1, 35, - -1, 36, -1, 37, -1, 41, -1, 45, -1, 38, - -1, 39, -1, 40, -1, 42, -1, 43, -1, 44, - -1, 46, -1, 47, -1, 48, -1, 49, -1, 53, - -1, 57, -1, 50, -1, 51, -1, 52, -1, 54, - -1, 55, -1, 56, -1, 58, -1, 59, -1, 60, - -1, 117, -1, 118, -1, 119, -1, 120, -1, 61, - -1, 64, -1, 71, -1, 62, -1, 65, -1, 63, - -1, 66, -1, 72, -1, 73, -1, 75, -1, 77, - -1, 82, -1, 83, -1, 76, -1, 78, -1, 84, - -1, 86, -1, 88, -1, 93, -1, 94, -1, 87, - -1, 89, -1, 95, -1, 67, -1, 68, -1, 79, - -1, 90, -1, 74, -1, 85, -1, 96, -1, 69, - -1, 80, -1, 91, -1, 70, -1, 81, -1, 92, - -1, 529, -1, 9, -1, 17, -1, 18, -1, 19, - -1, 121, 8, 438, 530, 439, -1, 121, 438, 530, - 439, -1, 531, -1, 530, 531, -1, 525, 532, 440, - -1, 523, 525, 532, 440, -1, 533, -1, 532, 446, - 533, -1, 8, -1, 8, 442, 443, -1, 8, 442, - 504, 443, -1, 501, -1, 505, -1, 538, -1, 537, - -1, 535, -1, 542, -1, 543, -1, 546, -1, 548, - -1, 549, -1, 553, -1, 438, 439, -1, 438, 541, - 439, -1, 540, -1, 537, -1, 438, 439, -1, 438, - 541, 439, -1, 536, -1, 541, 536, -1, 440, -1, - 503, 440, -1, 110, 444, 503, 445, 544, -1, 536, - 107, 536, -1, 536, -1, 503, -1, 516, 8, 441, - 534, -1, 122, 444, 503, 445, 438, 547, 439, -1, - -1, 541, -1, 99, 503, 461, -1, 103, 461, -1, - 126, 444, 545, 445, 539, -1, 105, 536, 126, 444, - 503, 445, 440, -1, 109, 444, 550, 552, 445, 539, - -1, 542, -1, 535, -1, 545, -1, -1, 551, 440, - -1, 551, 440, 503, -1, 102, 440, -1, 98, 440, - -1, 116, 440, -1, 116, 503, 440, -1, 104, 440, - -1, 555, -1, 554, 555, -1, 556, -1, 505, -1, - 506, 540, -1 + 465, 0, -1, 23, -1, 24, -1, 25, -1, 26, + -1, 27, -1, 28, -1, 29, -1, 30, -1, 31, + -1, 32, -1, 33, -1, 34, -1, 35, -1, 36, + -1, 37, -1, 38, -1, 39, -1, 40, -1, 41, + -1, 42, -1, 43, -1, 44, -1, 45, -1, 46, + -1, 47, -1, 48, -1, 49, -1, 50, -1, 51, + -1, 52, -1, 53, -1, 54, -1, 55, -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, 73, -1, 74, -1, 75, -1, 76, + -1, 77, -1, 78, -1, 79, -1, 80, -1, 81, + -1, 82, -1, 83, -1, 84, -1, 85, -1, 86, + -1, 87, -1, 88, -1, 89, -1, 90, -1, 91, + -1, 92, -1, 93, -1, 94, -1, 95, -1, 96, + -1, 97, -1, 248, -1, 249, -1, 250, -1, 251, + -1, 252, -1, 253, -1, 254, -1, 255, -1, 256, + -1, 257, -1, 258, -1, 259, -1, 260, -1, 261, + -1, 262, -1, 263, -1, 264, -1, 265, -1, 266, + -1, 267, -1, 268, -1, 269, -1, 270, -1, 271, + -1, 272, -1, 273, -1, 274, -1, 275, -1, 276, + -1, 277, -1, 278, -1, 279, -1, 280, -1, 281, + -1, 282, -1, 283, -1, 284, -1, 285, -1, 286, + -1, 287, -1, 288, -1, 289, -1, 290, -1, 291, + -1, 292, -1, 293, -1, 294, -1, 295, -1, 296, + -1, 297, -1, 298, -1, 299, -1, 300, -1, 301, + -1, 302, -1, 303, -1, 304, -1, 305, -1, 306, + -1, 307, -1, 308, -1, 309, -1, 310, -1, 311, + -1, 312, -1, 313, -1, 314, -1, 315, -1, 316, + -1, 317, -1, 318, -1, 319, -1, 320, -1, 321, + -1, 322, -1, 323, -1, 324, -1, 325, -1, 326, + -1, 327, -1, 328, -1, 329, -1, 330, -1, 331, + -1, 332, -1, 333, -1, 334, -1, 335, -1, 336, + -1, 337, -1, 338, -1, 339, -1, 340, -1, 341, + -1, 342, -1, 343, -1, 344, -1, 345, -1, 346, + -1, 347, -1, 348, -1, 349, -1, 350, -1, 351, + -1, 352, -1, 353, -1, 354, -1, 355, -1, 356, + -1, 357, -1, 358, -1, 359, -1, 360, -1, 361, + -1, 362, -1, 363, -1, 364, -1, 365, -1, 366, + -1, 367, -1, 466, -1, 467, -1, 467, 466, -1, + 468, -1, 474, -1, 225, 469, 438, 470, 439, -1, + 8, -1, 7, -1, 471, -1, 471, 470, -1, 195, + 469, 438, 472, 439, -1, 473, -1, 473, 472, -1, + 440, -1, 8, 441, 8, 440, -1, 8, 441, 4, + 440, -1, 8, 441, 3, 440, -1, 8, 441, 176, + 440, -1, 8, 441, 238, 440, -1, 8, 442, 4, + 443, 441, 8, 440, -1, 8, 442, 4, 443, 441, + 4, 440, -1, 228, 442, 4, 443, 441, 8, 440, + -1, 228, 442, 4, 443, 441, 192, 440, -1, 173, + 441, 8, 440, -1, 178, 441, 8, 440, -1, 181, + 441, 8, 440, -1, 197, 441, 8, 440, -1, 246, + 441, 8, 440, -1, 475, 559, -1, 442, 476, 443, + -1, 477, 444, 476, -1, 477, -1, 469, -1, 8, + -1, 478, -1, 4, -1, 5, -1, 6, -1, 3, + -1, 445, 505, 446, -1, 479, -1, 480, 442, 481, + 443, -1, 482, -1, 480, 444, 7, -1, 480, 413, + -1, 480, 414, -1, 505, -1, 483, -1, 484, -1, + 480, 444, 484, -1, 486, 446, -1, 485, 446, -1, + 487, 126, -1, 487, -1, 487, 503, -1, 486, 447, + 503, -1, 488, 445, -1, 529, -1, 8, -1, 7, + -1, 480, -1, 413, 489, -1, 414, 489, -1, 490, + 489, -1, 448, -1, 449, -1, 450, -1, 451, -1, + 489, -1, 491, 452, 489, -1, 491, 453, 489, -1, + 491, 454, 489, -1, 491, -1, 492, 448, 491, -1, + 492, 449, 491, -1, 492, -1, 493, 419, 492, -1, + 493, 420, 492, -1, 493, -1, 494, 455, 493, -1, + 494, 456, 493, -1, 494, 415, 493, -1, 494, 416, + 493, -1, 494, -1, 495, 417, 494, -1, 495, 418, + 494, -1, 495, -1, 496, 457, 495, -1, 496, -1, + 497, 458, 496, -1, 497, -1, 498, 459, 497, -1, + 498, -1, 499, 421, 498, -1, 499, -1, 500, 423, + 499, -1, 500, -1, 501, 422, 500, -1, 501, -1, + 501, 460, 505, 461, 503, -1, 502, -1, 489, 504, + 503, -1, 441, -1, 424, -1, 425, -1, 426, -1, + 427, -1, 428, -1, 429, -1, 430, -1, 431, -1, + 432, -1, 433, -1, 503, -1, 505, 447, 503, -1, + 502, -1, 508, 440, -1, 518, 440, -1, 20, 533, + 530, 440, -1, 527, 469, 438, 535, 439, 440, -1, + 527, 469, 438, 535, 439, 469, 440, -1, 527, 469, + 438, 535, 439, 469, 442, 443, 440, -1, 527, 469, + 438, 535, 439, 469, 442, 506, 443, 440, -1, 527, + 440, -1, 509, 446, -1, 511, -1, 510, -1, 511, + 513, -1, 510, 447, 513, -1, 520, 469, 445, -1, + 529, 469, -1, 529, 469, 442, 506, 443, -1, 514, + 461, 469, -1, 514, -1, 526, 515, 512, -1, 515, + 512, -1, 526, 515, 517, -1, 515, 517, -1, 516, + -1, 125, -1, -1, 112, -1, 116, -1, 113, -1, + 21, -1, 22, -1, 529, -1, 519, -1, 518, 447, + 469, -1, 518, 447, 469, 442, 443, -1, 518, 447, + 469, 442, 506, 443, -1, 518, 447, 469, 442, 443, + 441, 539, -1, 518, 447, 469, 442, 506, 443, 441, + 539, -1, 518, 447, 469, 441, 539, -1, 520, -1, + 520, 469, -1, 520, 469, 442, 443, -1, 520, 469, + 442, 506, 443, -1, 520, 469, 442, 443, 441, 539, + -1, 520, 469, 442, 506, 443, 441, 539, -1, 520, + 469, 441, 539, -1, 16, 469, -1, 529, -1, 527, + 529, -1, 16, -1, 14, -1, 13, -1, 115, -1, + 15, 445, 524, 446, -1, 525, -1, 524, 447, 525, + -1, 469, -1, 469, 441, 4, -1, 102, -1, 528, + -1, 523, -1, 523, 528, -1, 522, 528, -1, 522, + -1, 521, 528, -1, 521, 522, 528, -1, 521, -1, + 102, -1, 112, -1, 116, -1, 101, 112, -1, 101, + 116, -1, 11, 112, -1, 11, 116, -1, 12, 112, + -1, 12, 116, -1, 125, -1, 21, -1, 22, -1, + 530, -1, 533, 530, -1, 531, -1, 531, 442, 443, + -1, 531, 442, 506, 443, -1, 532, -1, 464, -1, + 126, -1, 109, -1, 107, -1, 114, -1, 124, -1, + 98, -1, 463, -1, 118, -1, 119, -1, 120, -1, + 121, -1, 534, -1, 9, -1, 17, -1, 18, -1, + 19, -1, 122, 469, 438, 535, 439, -1, 122, 438, + 535, 439, -1, 536, -1, 535, 536, -1, 529, 537, + 440, -1, 527, 529, 537, 440, -1, 538, -1, 537, + 447, 538, -1, 469, -1, 469, 442, 443, -1, 469, + 442, 506, 443, -1, 503, -1, 507, -1, 543, -1, + 542, -1, 540, -1, 547, -1, 548, -1, 551, -1, + 553, -1, 554, -1, 558, -1, 438, 439, -1, 438, + 546, 439, -1, 545, -1, 542, -1, 438, 439, -1, + 438, 546, 439, -1, 541, -1, 546, 541, -1, 440, + -1, 505, 440, -1, 111, 445, 505, 446, 549, -1, + 541, 108, 541, -1, 541, -1, 505, -1, 520, 469, + 441, 539, -1, 123, 445, 505, 446, 438, 552, 439, + -1, -1, 546, -1, 100, 505, 461, -1, 104, 461, + -1, 127, 445, 550, 446, 544, -1, 106, 541, 127, + 445, 505, 446, 440, -1, 110, 445, 555, 557, 446, + 544, -1, 547, -1, 540, -1, 550, -1, -1, 556, + 440, -1, 556, 440, 505, -1, 103, 440, -1, 99, + 440, -1, 117, 440, -1, 117, 505, 440, -1, 105, + 440, -1, 560, -1, 559, 560, -1, 561, -1, 507, + -1, 508, 545, -1 }; /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in @@ -2336,82 +3657,108 @@ namespace lol { const unsigned short int LolFxParser::yyprhs_[] = { - 0, 0, 3, 5, 7, 10, 12, 14, 20, 22, - 25, 31, 33, 36, 38, 43, 48, 53, 58, 63, - 71, 79, 87, 95, 100, 105, 110, 115, 120, 123, - 129, 131, 133, 137, 139, 144, 148, 150, 152, 154, - 156, 158, 160, 164, 166, 171, 173, 177, 180, 183, - 185, 187, 189, 193, 196, 199, 202, 204, 207, 211, - 214, 216, 218, 220, 222, 225, 228, 231, 233, 235, - 237, 239, 241, 245, 249, 253, 255, 259, 263, 265, - 269, 273, 275, 279, 283, 287, 291, 293, 297, 301, - 303, 307, 309, 313, 315, 319, 321, 325, 327, 331, - 333, 337, 339, 345, 347, 351, 353, 355, 357, 359, - 361, 363, 365, 367, 369, 371, 373, 375, 379, 381, - 384, 387, 392, 399, 407, 417, 428, 431, 434, 436, - 438, 441, 445, 449, 452, 458, 462, 465, 469, 472, - 473, 475, 477, 479, 481, 483, 485, 489, 495, 502, - 510, 519, 525, 527, 530, 535, 541, 548, 556, 561, - 564, 566, 569, 571, 573, 575, 577, 582, 584, 588, - 590, 594, 596, 598, 600, 603, 606, 608, 611, 615, - 617, 619, 621, 623, 626, 629, 632, 635, 638, 641, - 643, 645, 647, 650, 652, 656, 661, 663, 665, 667, - 669, 671, 673, 675, 677, 679, 681, 683, 685, 687, - 689, 691, 693, 695, 697, 699, 701, 703, 705, 707, - 709, 711, 713, 715, 717, 719, 721, 723, 725, 727, - 729, 731, 733, 735, 737, 739, 741, 743, 745, 747, - 749, 751, 753, 755, 757, 759, 761, 763, 765, 767, - 769, 771, 773, 775, 777, 779, 781, 783, 785, 787, - 789, 791, 793, 795, 797, 799, 801, 803, 805, 807, - 809, 811, 813, 815, 817, 819, 821, 823, 825, 827, - 829, 831, 833, 835, 837, 839, 841, 847, 852, 854, - 857, 861, 866, 868, 872, 874, 878, 883, 885, 887, - 889, 891, 893, 895, 897, 899, 901, 903, 905, 908, - 912, 914, 916, 919, 923, 925, 928, 930, 933, 939, - 943, 945, 947, 952, 960, 961, 963, 967, 970, 976, - 984, 991, 993, 995, 997, 998, 1001, 1005, 1008, 1011, - 1014, 1018, 1021, 1023, 1026, 1028, 1030 + 0, 0, 3, 5, 7, 9, 11, 13, 15, 17, + 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, + 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, + 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, + 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, + 99, 101, 103, 105, 107, 109, 111, 113, 115, 117, + 119, 121, 123, 125, 127, 129, 131, 133, 135, 137, + 139, 141, 143, 145, 147, 149, 151, 153, 155, 157, + 159, 161, 163, 165, 167, 169, 171, 173, 175, 177, + 179, 181, 183, 185, 187, 189, 191, 193, 195, 197, + 199, 201, 203, 205, 207, 209, 211, 213, 215, 217, + 219, 221, 223, 225, 227, 229, 231, 233, 235, 237, + 239, 241, 243, 245, 247, 249, 251, 253, 255, 257, + 259, 261, 263, 265, 267, 269, 271, 273, 275, 277, + 279, 281, 283, 285, 287, 289, 291, 293, 295, 297, + 299, 301, 303, 305, 307, 309, 311, 313, 315, 317, + 319, 321, 323, 325, 327, 329, 331, 333, 335, 337, + 339, 341, 343, 345, 347, 349, 351, 353, 355, 357, + 359, 361, 363, 365, 367, 369, 371, 373, 375, 377, + 379, 381, 383, 385, 387, 389, 391, 393, 395, 397, + 400, 402, 404, 410, 412, 414, 416, 419, 425, 427, + 430, 432, 437, 442, 447, 452, 457, 465, 473, 481, + 489, 494, 499, 504, 509, 514, 517, 521, 525, 527, + 529, 531, 533, 535, 537, 539, 541, 545, 547, 552, + 554, 558, 561, 564, 566, 568, 570, 574, 577, 580, + 583, 585, 588, 592, 595, 597, 599, 601, 603, 606, + 609, 612, 614, 616, 618, 620, 622, 626, 630, 634, + 636, 640, 644, 646, 650, 654, 656, 660, 664, 668, + 672, 674, 678, 682, 684, 688, 690, 694, 696, 700, + 702, 706, 708, 712, 714, 718, 720, 726, 728, 732, + 734, 736, 738, 740, 742, 744, 746, 748, 750, 752, + 754, 756, 760, 762, 765, 768, 773, 780, 788, 798, + 809, 812, 815, 817, 819, 822, 826, 830, 833, 839, + 843, 845, 849, 852, 856, 859, 861, 863, 864, 866, + 868, 870, 872, 874, 876, 878, 882, 888, 895, 903, + 912, 918, 920, 923, 928, 934, 941, 949, 954, 957, + 959, 962, 964, 966, 968, 970, 975, 977, 981, 983, + 987, 989, 991, 993, 996, 999, 1001, 1004, 1008, 1010, + 1012, 1014, 1016, 1019, 1022, 1025, 1028, 1031, 1034, 1036, + 1038, 1040, 1042, 1045, 1047, 1051, 1056, 1058, 1060, 1062, + 1064, 1066, 1068, 1070, 1072, 1074, 1076, 1078, 1080, 1082, + 1084, 1086, 1088, 1090, 1092, 1098, 1103, 1105, 1108, 1112, + 1117, 1119, 1123, 1125, 1129, 1134, 1136, 1138, 1140, 1142, + 1144, 1146, 1148, 1150, 1152, 1154, 1156, 1159, 1163, 1165, + 1167, 1170, 1174, 1176, 1179, 1181, 1184, 1190, 1194, 1196, + 1198, 1203, 1211, 1212, 1214, 1218, 1221, 1227, 1235, 1242, + 1244, 1246, 1248, 1249, 1252, 1256, 1259, 1262, 1265, 1269, + 1272, 1274, 1277, 1279, 1281 }; /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ const unsigned short int LolFxParser::yyrline_[] = { - 0, 257, 711, 715, 716, 720, 721, 729, 737, 738, - 742, 746, 747, 752, 753, 754, 755, 756, 757, 758, - 759, 760, 761, 762, 763, 764, 765, 766, 774, 778, - 782, 783, 787, 788, 792, 793, 801, 805, 806, 807, - 808, 809, 810, 814, 815, 816, 817, 818, 819, 823, - 827, 831, 832, 836, 837, 841, 842, 846, 847, 851, - 855, 856, 857, 861, 862, 863, 864, 868, 869, 870, - 871, 875, 876, 877, 878, 882, 883, 884, 888, 889, - 890, 894, 895, 896, 897, 898, 902, 903, 904, 908, - 909, 913, 914, 918, 919, 923, 924, 928, 929, 933, - 934, 938, 939, 943, 944, 948, 949, 950, 951, 952, - 953, 954, 955, 956, 957, 958, 962, 963, 967, 971, - 972, 973, 974, 975, 976, 977, 978, 982, 986, 987, - 991, 992, 996, 1000, 1001, 1005, 1006, 1007, 1008, 1011, - 1013, 1014, 1015, 1016, 1020, 1024, 1025, 1026, 1027, 1028, - 1029, 1030, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, - 1045, 1046, 1050, 1054, 1055, 1056, 1060, 1064, 1065, 1069, - 1070, 1074, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, - 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, - 1099, 1103, 1104, 1108, 1109, 1110, 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, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, - 1157, 1158, 1159, 1160, 1161, 1162, 1163, 1164, 1165, 1166, - 1167, 1168, 1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, - 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1186, - 1187, 1188, 1189, 1190, 1191, 1192, 1193, 1194, 1195, 1196, - 1197, 1198, 1199, 1203, 1204, 1205, 1209, 1210, 1214, 1215, - 1219, 1220, 1224, 1225, 1229, 1230, 1231, 1235, 1239, 1243, - 1244, 1248, 1249, 1250, 1251, 1252, 1253, 1254, 1258, 1259, - 1263, 1264, 1268, 1269, 1273, 1274, 1278, 1279, 1283, 1287, - 1288, 1292, 1293, 1297, 1300, 1302, 1306, 1307, 1311, 1312, - 1313, 1317, 1318, 1322, 1323, 1327, 1328, 1332, 1333, 1334, - 1335, 1336, 1340, 1341, 1345, 1346, 1350 + 0, 255, 271, 272, 273, 274, 275, 276, 277, 278, + 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, + 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, + 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, + 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, + 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, + 329, 330, 331, 332, 333, 334, 335, 336, 337, 338, + 339, 340, 341, 342, 343, 344, 345, 508, 509, 510, + 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, + 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, + 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, + 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, + 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, + 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, + 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, + 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, + 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, + 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, + 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, + 621, 622, 623, 624, 625, 626, 627, 710, 714, 715, + 719, 720, 728, 736, 737, 745, 746, 750, 754, 755, + 760, 761, 762, 763, 764, 765, 766, 767, 768, 769, + 770, 771, 772, 773, 774, 782, 786, 790, 791, 795, + 803, 807, 808, 809, 810, 811, 812, 816, 817, 818, + 819, 820, 821, 825, 829, 833, 834, 838, 839, 843, + 844, 848, 849, 853, 857, 858, 859, 863, 864, 865, + 866, 870, 871, 872, 873, 877, 878, 879, 880, 884, + 885, 886, 890, 891, 892, 896, 897, 898, 899, 900, + 904, 905, 906, 910, 911, 915, 916, 920, 921, 925, + 926, 930, 931, 935, 936, 940, 941, 945, 946, 950, + 951, 952, 953, 954, 955, 956, 957, 958, 959, 960, + 964, 965, 969, 973, 974, 975, 976, 977, 978, 979, + 980, 984, 988, 989, 993, 994, 998, 1002, 1003, 1007, + 1008, 1012, 1013, 1014, 1015, 1019, 1020, 1023, 1025, 1026, + 1027, 1028, 1029, 1033, 1037, 1038, 1039, 1040, 1041, 1042, + 1043, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1058, + 1059, 1063, 1067, 1068, 1069, 1073, 1077, 1078, 1082, 1083, + 1087, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1102, + 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, + 1113, 1117, 1118, 1122, 1123, 1124, 1127, 1128, 1132, 1133, + 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, + 1144, 1148, 1149, 1150, 1154, 1155, 1159, 1160, 1164, 1165, + 1169, 1170, 1174, 1175, 1176, 1180, 1184, 1188, 1189, 1193, + 1194, 1195, 1196, 1197, 1198, 1199, 1203, 1204, 1208, 1209, + 1213, 1214, 1218, 1219, 1223, 1224, 1228, 1232, 1233, 1237, + 1238, 1242, 1245, 1247, 1251, 1252, 1256, 1257, 1258, 1262, + 1263, 1267, 1268, 1272, 1273, 1277, 1278, 1279, 1280, 1281, + 1285, 1286, 1290, 1291, 1295 }; // Print the state stack on the debug stream. @@ -2455,7 +3802,7 @@ namespace lol { 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 450, 2, 2, 2, 454, 457, 2, - 444, 445, 452, 448, 446, 449, 447, 453, 2, 2, + 445, 446, 452, 448, 447, 449, 444, 453, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 461, 440, 455, 441, 456, 460, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -2529,10 +3876,10 @@ namespace lol { } const int LolFxParser::yyeof_ = 0; - const int LolFxParser::yylast_ = 4692; - const int LolFxParser::yynnts_ = 95; + const int LolFxParser::yylast_ = 10762; + const int LolFxParser::yynnts_ = 100; const int LolFxParser::yyempty_ = -2; - const int LolFxParser::yyfinal_ = 13; + const int LolFxParser::yyfinal_ = 15; const int LolFxParser::yyterror_ = 1; const int LolFxParser::yyerrcode_ = 256; const int LolFxParser::yyntokens_ = 462; @@ -2544,11 +3891,11 @@ namespace lol { } // lol /* Line 1136 of lalr1.cc */ -#line 2548 "generated/lolfx-parser.cpp" +#line 3895 "generated/lolfx-parser.cpp" /* Line 1138 of lalr1.cc */ -#line 1353 "gpu/lolfx-parser.y" +#line 1298 "gpu/lolfx-parser.y" void lol::LolFxParser::error(const LolFxParser::location_type& l, diff --git a/src/generated/lolfx-parser.h b/src/generated/lolfx-parser.h index 53f8c73d..c41899dc 100644 --- a/src/generated/lolfx-parser.h +++ b/src/generated/lolfx-parser.h @@ -118,365 +118,365 @@ namespace lol { GT_LOWP = 274, GT_PRECISION = 275, GT_ATTRIBUTE = 276, - GT_VEC2 = 277, - GT_VEC3 = 278, - GT_VEC4 = 279, - GT_BVEC2 = 280, - GT_BVEC3 = 281, - GT_BVEC4 = 282, - GT_DVEC2 = 283, - GT_DVEC3 = 284, - GT_DVEC4 = 285, - GT_IVEC2 = 286, - GT_IVEC3 = 287, - GT_IVEC4 = 288, - GT_UVEC2 = 289, - GT_UVEC3 = 290, - GT_UVEC4 = 291, - GT_MAT2 = 292, - GT_MAT2X2 = 293, - GT_MAT2X3 = 294, - GT_MAT2X4 = 295, - GT_MAT3 = 296, - GT_MAT3X2 = 297, - GT_MAT3X3 = 298, - GT_MAT3X4 = 299, - GT_MAT4 = 300, - GT_MAT4X2 = 301, - GT_MAT4X3 = 302, - GT_MAT4X4 = 303, - GT_DMAT2 = 304, - GT_DMAT2X2 = 305, - GT_DMAT2X3 = 306, - GT_DMAT2X4 = 307, - GT_DMAT3 = 308, - GT_DMAT3X2 = 309, - GT_DMAT3X3 = 310, - GT_DMAT3X4 = 311, - GT_DMAT4 = 312, - GT_DMAT4X2 = 313, - GT_DMAT4X3 = 314, - GT_DMAT4X4 = 315, - GT_SAMPLER1DSHADOW = 316, - GT_SAMPLER1DARRAY = 317, - GT_SAMPLER1DARRAYSHADOW = 318, - GT_SAMPLER2DSHADOW = 319, - GT_SAMPLER2DARRAY = 320, - GT_SAMPLER2DARRAYSHADOW = 321, - GT_SAMPLER2DRECT = 322, - GT_SAMPLER2DRECTSHADOW = 323, - GT_SAMPLER2DMS = 324, - GT_SAMPLER2DMSARRAY = 325, - GT_SAMPLERCUBESHADOW = 326, - GT_SAMPLERCUBEARRAY = 327, - GT_SAMPLERCUBEARRAYSHADOW = 328, - GT_SAMPLERBUFFER = 329, - GT_ISAMPLER1D = 330, - GT_ISAMPLER1DARRAY = 331, - GT_ISAMPLER2D = 332, - GT_ISAMPLER2DARRAY = 333, - GT_ISAMPLER2DRECT = 334, - GT_ISAMPLER2DMS = 335, - GT_ISAMPLER2DMSARRAY = 336, - GT_ISAMPLER3D = 337, - GT_ISAMPLERCUBE = 338, - GT_ISAMPLERCUBEARRAY = 339, - GT_ISAMPLERBUFFER = 340, - GT_USAMPLER1D = 341, - GT_USAMPLER1DARRAY = 342, - GT_USAMPLER2D = 343, - GT_USAMPLER2DARRAY = 344, - GT_USAMPLER2DRECT = 345, - GT_USAMPLER2DMS = 346, - GT_USAMPLER2DMSARRAY = 347, - GT_USAMPLER3D = 348, - GT_USAMPLERCUBE = 349, - GT_USAMPLERCUBEARRAY = 350, - GT_USAMPLERBUFFER = 351, - GHT_BOOL = 352, - GHT_BREAK = 353, - GHT_CASE = 354, - GHT_CENTROID = 355, - GHT_CONST = 356, - GHT_CONTINUE = 357, - GHT_DEFAULT = 358, - GHT_DISCARD = 359, - GHT_DO = 360, - GHT_DOUBLE = 361, - GHT_ELSE = 362, - GHT_FLOAT = 363, - GHT_FOR = 364, - GHT_IF = 365, - GHT_IN = 366, - GHT_INOUT = 367, - GHT_INT = 368, - GHT_NOPERSPECTIVE = 369, - GHT_OUT = 370, - GHT_RETURN = 371, - GHT_SAMPLER1D = 372, - GHT_SAMPLER2D = 373, - GHT_SAMPLER3D = 374, - GHT_SAMPLERCUBE = 375, - GHT_STRUCT = 376, - GHT_SWITCH = 377, - GHT_UINT = 378, - GHT_UNIFORM = 379, - GHT_VOID = 380, - GHT_WHILE = 381, - HGT_BOOL = 382, - HGT_BREAK = 383, - HGT_CASE = 384, - HGT_CENTROID = 385, - HGT_CONST = 386, - HGT_CONTINUE = 387, - HGT_DEFAULT = 388, - HGT_DISCARD = 389, - HGT_DO = 390, - HGT_DOUBLE = 391, - HGT_ELSE = 392, - HGT_FLOAT = 393, - HGT_FOR = 394, - HGT_IF = 395, - HGT_IN = 396, - HGT_INOUT = 397, - HGT_INT = 398, - HGT_NOPERSPECTIVE = 399, - HGT_OUT = 400, - HGT_RETURN = 401, - HGT_SAMPLER1D = 402, - HGT_SAMPLER2D = 403, - HGT_SAMPLER3D = 404, - HGT_SAMPLERCUBE = 405, - HGT_STRUCT = 406, - HGT_SWITCH = 407, - HGT_UINT = 408, - HGT_UNIFORM = 409, - HGT_VOID = 410, - HGT_WHILE = 411, - HT_APPENDSTRUCTUREDBUFFER = 412, - HT_ASM = 413, - HT_ASM_FRAGMENT = 414, - HT_BLENDSTATE = 415, - HT_BUFFER = 416, - HT_BYTEADDRESSBUFFER = 417, - HT_CBUFFER = 418, - HT_COLUMN_MAJOR = 419, - HT_COMPILE = 420, - HT_COMPILE_FRAGMENT = 421, - HT_COMPILESHADER = 422, - HT_COMPUTESHADER = 423, - HT_CONSUMESTRUCTUREDBUFFER = 424, - HT_DEPTHSTENCILSTATE = 425, - HT_DEPTHSTENCILVIEW = 426, - HT_DOMAINSHADER = 427, - HT_DWORD = 428, - HT_EXTERN = 429, - HT_FALSE = 430, - HT_FXGROUP = 431, - HT_GEOMETRYSHADER = 432, - HT_GROUPSHARED = 433, - HT_HALF = 434, - HT_HULLSHADER = 435, - HT_INLINE = 436, - HT_INPUTPATCH = 437, - HT_INTERFACE = 438, - HT_LINE = 439, - HT_LINEADJ = 440, - HT_LINEAR = 441, - HT_LINESTREAM = 442, - HT_MATRIX = 443, - HT_NAMESPACE = 444, - HT_NOINTERPOLATION = 445, - HT_NULL = 446, - HT_OUTPUTPATCH = 447, - HT_PACKOFFSET = 448, - HT_PASS = 449, - HT_PIXELFRAGMENT = 450, - HT_PIXELSHADER = 451, - HT_POINT = 452, - HT_POINTSTREAM = 453, - HT_PRECISE = 454, - HT_RASTERIZERSTATE = 455, - HT_RENDERTARGETVIEW = 456, - HT_REGISTER = 457, - HT_ROW_MAJOR = 458, - HT_RWBUFFER = 459, - HT_RWBYTEADDRESSBUFFER = 460, - HT_RWSTRUCTUREDBUFFER = 461, - HT_RWTEXTURE1D = 462, - HT_RWTEXTURE1DARRAY = 463, - HT_RWTEXTURE2D = 464, - HT_RWTEXTURE2DARRAY = 465, - HT_RWTEXTURE3D = 466, - HT_SAMPLER = 467, - HT_SAMPLER_STATE = 468, - HT_SAMPLERSTATE = 469, - HT_SAMPLERCOMPARISONSTATE = 470, - HT_SHARED = 471, - HT_SNORM = 472, - HT_STATEBLOCK = 473, - HT_STATEBLOCK_STATE = 474, - HT_STATIC = 475, - HT_STRING = 476, - HT_STRUCTUREDBUFFER = 477, - HT_TBUFFER = 478, - HT_TECHNIQUE = 479, - HT_TECHNIQUE10 = 480, - HT_TECHNIQUE11XZ = 481, - HT_TEXTURE = 482, - HT_TEXTURE1D = 483, - HT_TEXTURE1DARRAY = 484, - HT_TEXTURE2D = 485, - HT_TEXTURE2DARRAY = 486, - HT_TEXTURE2DMS = 487, - HT_TEXTURE2DMSARRAY = 488, - HT_TEXTURE3D = 489, - HT_TEXTURECUBE = 490, - HT_TEXTURECUBEARRAY = 491, - HT_TRUE = 492, - HT_TYPEDEF = 493, - HT_TRIANGLE = 494, - HT_TRIANGLEADJ = 495, - HT_TRIANGLESTREAM = 496, - HT_UNORM = 497, - HT_VECTOR = 498, - HT_VERTEXFRAGMENT = 499, - HT_VERTEXSHADER = 500, - HT_VOLATILE = 501, - HT_BOOL1 = 502, - HT_BOOL1x1 = 503, - HT_BOOL2x1 = 504, - HT_BOOL3x1 = 505, - HT_BOOL4x1 = 506, - HT_BOOL2 = 507, - HT_BOOL1x2 = 508, - HT_BOOL2x2 = 509, - HT_BOOL3x2 = 510, - HT_BOOL4x2 = 511, - HT_BOOL3 = 512, - HT_BOOL1x3 = 513, - HT_BOOL2x3 = 514, - HT_BOOL3x3 = 515, - HT_BOOL4x3 = 516, - HT_BOOL4 = 517, - HT_BOOL1x4 = 518, - HT_BOOL2x4 = 519, - HT_BOOL3x4 = 520, - HT_BOOL4x4 = 521, - HT_FLOAT1 = 522, - HT_FLOAT1x1 = 523, - HT_FLOAT2x1 = 524, - HT_FLOAT3x1 = 525, - HT_FLOAT4x1 = 526, - HT_FLOAT2 = 527, - HT_FLOAT1x2 = 528, - HT_FLOAT2x2 = 529, - HT_FLOAT3x2 = 530, - HT_FLOAT4x2 = 531, - HT_FLOAT3 = 532, - HT_FLOAT1x3 = 533, - HT_FLOAT2x3 = 534, - HT_FLOAT3x3 = 535, - HT_FLOAT4x3 = 536, - HT_FLOAT4 = 537, - HT_FLOAT1x4 = 538, - HT_FLOAT2x4 = 539, - HT_FLOAT3x4 = 540, - HT_FLOAT4x4 = 541, - HT_DOUBLE1 = 542, - HT_DOUBLE1x1 = 543, - HT_DOUBLE2x1 = 544, - HT_DOUBLE3x1 = 545, - HT_DOUBLE4x1 = 546, - HT_DOUBLE2 = 547, - HT_DOUBLE1x2 = 548, - HT_DOUBLE2x2 = 549, - HT_DOUBLE3x2 = 550, - HT_DOUBLE4x2 = 551, - HT_DOUBLE3 = 552, - HT_DOUBLE1x3 = 553, - HT_DOUBLE2x3 = 554, - HT_DOUBLE3x3 = 555, - HT_DOUBLE4x3 = 556, - HT_DOUBLE4 = 557, - HT_DOUBLE1x4 = 558, - HT_DOUBLE2x4 = 559, - HT_DOUBLE3x4 = 560, - HT_DOUBLE4x4 = 561, - HT_DWORD1 = 562, - HT_DWORD1x1 = 563, - HT_DWORD2x1 = 564, - HT_DWORD3x1 = 565, - HT_DWORD4x1 = 566, - HT_DWORD2 = 567, - HT_DWORD1x2 = 568, - HT_DWORD2x2 = 569, - HT_DWORD3x2 = 570, - HT_DWORD4x2 = 571, - HT_DWORD3 = 572, - HT_DWORD1x3 = 573, - HT_DWORD2x3 = 574, - HT_DWORD3x3 = 575, - HT_DWORD4x3 = 576, - HT_DWORD4 = 577, - HT_DWORD1x4 = 578, - HT_DWORD2x4 = 579, - HT_DWORD3x4 = 580, - HT_DWORD4x4 = 581, - HT_INT1 = 582, - HT_INT1x1 = 583, - HT_INT2x1 = 584, - HT_INT3x1 = 585, - HT_INT4x1 = 586, - HT_INT2 = 587, - HT_INT1x2 = 588, - HT_INT2x2 = 589, - HT_INT3x2 = 590, - HT_INT4x2 = 591, - HT_INT3 = 592, - HT_INT1x3 = 593, - HT_INT2x3 = 594, - HT_INT3x3 = 595, - HT_INT4x3 = 596, - HT_INT4 = 597, - HT_INT1x4 = 598, - HT_INT2x4 = 599, - HT_INT3x4 = 600, - HT_INT4x4 = 601, - HT_UINT1 = 602, - HT_UINT1x1 = 603, - HT_UINT2x1 = 604, - HT_UINT3x1 = 605, - HT_UINT4x1 = 606, - HT_UINT2 = 607, - HT_UINT1x2 = 608, - HT_UINT2x2 = 609, - HT_UINT3x2 = 610, - HT_UINT4x2 = 611, - HT_UINT3 = 612, - HT_UINT1x3 = 613, - HT_UINT2x3 = 614, - HT_UINT3x3 = 615, - HT_UINT4x3 = 616, - HT_UINT4 = 617, - HT_UINT1x4 = 618, - HT_UINT2x4 = 619, - HT_UINT3x4 = 620, - HT_UINT4x4 = 621, - PREPROCESSOR_DEFINE = 622, - PREPROCESSOR_ELIF = 623, - PREPROCESSOR_ELSE = 624, - PREPROCESSOR_ENDIF = 625, - PREPROCESSOR_ERROR = 626, - PREPROCESSOR_IF = 627, - PREPROCESSOR_IFDEF = 628, - PREPROCESSOR_IFNDEF = 629, - PREPROCESSOR_INCLUDE = 630, - PREPROCESSOR_LINE = 631, - PREPROCESSOR_PRAGMA = 632, - PREPROCESSOR_UNDEF = 633, - PREPROCESSOR_REGION = 634, - PRAGMA_LOLFX = 635, + GT_VARYING = 277, + GT_VEC2 = 278, + GT_VEC3 = 279, + GT_VEC4 = 280, + GT_BVEC2 = 281, + GT_BVEC3 = 282, + GT_BVEC4 = 283, + GT_DVEC2 = 284, + GT_DVEC3 = 285, + GT_DVEC4 = 286, + GT_IVEC2 = 287, + GT_IVEC3 = 288, + GT_IVEC4 = 289, + GT_UVEC2 = 290, + GT_UVEC3 = 291, + GT_UVEC4 = 292, + GT_MAT2 = 293, + GT_MAT2X2 = 294, + GT_MAT2X3 = 295, + GT_MAT2X4 = 296, + GT_MAT3 = 297, + GT_MAT3X2 = 298, + GT_MAT3X3 = 299, + GT_MAT3X4 = 300, + GT_MAT4 = 301, + GT_MAT4X2 = 302, + GT_MAT4X3 = 303, + GT_MAT4X4 = 304, + GT_DMAT2 = 305, + GT_DMAT2X2 = 306, + GT_DMAT2X3 = 307, + GT_DMAT2X4 = 308, + GT_DMAT3 = 309, + GT_DMAT3X2 = 310, + GT_DMAT3X3 = 311, + GT_DMAT3X4 = 312, + GT_DMAT4 = 313, + GT_DMAT4X2 = 314, + GT_DMAT4X3 = 315, + GT_DMAT4X4 = 316, + GT_SAMPLER1DSHADOW = 317, + GT_SAMPLER1DARRAY = 318, + GT_SAMPLER1DARRAYSHADOW = 319, + GT_SAMPLER2DSHADOW = 320, + GT_SAMPLER2DARRAY = 321, + GT_SAMPLER2DARRAYSHADOW = 322, + GT_SAMPLER2DRECT = 323, + GT_SAMPLER2DRECTSHADOW = 324, + GT_SAMPLER2DMS = 325, + GT_SAMPLER2DMSARRAY = 326, + GT_SAMPLERCUBESHADOW = 327, + GT_SAMPLERCUBEARRAY = 328, + GT_SAMPLERCUBEARRAYSHADOW = 329, + GT_SAMPLERBUFFER = 330, + GT_ISAMPLER1D = 331, + GT_ISAMPLER1DARRAY = 332, + GT_ISAMPLER2D = 333, + GT_ISAMPLER2DARRAY = 334, + GT_ISAMPLER2DRECT = 335, + GT_ISAMPLER2DMS = 336, + GT_ISAMPLER2DMSARRAY = 337, + GT_ISAMPLER3D = 338, + GT_ISAMPLERCUBE = 339, + GT_ISAMPLERCUBEARRAY = 340, + GT_ISAMPLERBUFFER = 341, + GT_USAMPLER1D = 342, + GT_USAMPLER1DARRAY = 343, + GT_USAMPLER2D = 344, + GT_USAMPLER2DARRAY = 345, + GT_USAMPLER2DRECT = 346, + GT_USAMPLER2DMS = 347, + GT_USAMPLER2DMSARRAY = 348, + GT_USAMPLER3D = 349, + GT_USAMPLERCUBE = 350, + GT_USAMPLERCUBEARRAY = 351, + GT_USAMPLERBUFFER = 352, + GHT_BOOL = 353, + GHT_BREAK = 354, + GHT_CASE = 355, + GHT_CENTROID = 356, + GHT_CONST = 357, + GHT_CONTINUE = 358, + GHT_DEFAULT = 359, + GHT_DISCARD = 360, + GHT_DO = 361, + GHT_DOUBLE = 362, + GHT_ELSE = 363, + GHT_FLOAT = 364, + GHT_FOR = 365, + GHT_IF = 366, + GHT_IN = 367, + GHT_INOUT = 368, + GHT_INT = 369, + GHT_NOPERSPECTIVE = 370, + GHT_OUT = 371, + GHT_RETURN = 372, + GHT_SAMPLER1D = 373, + GHT_SAMPLER2D = 374, + GHT_SAMPLER3D = 375, + GHT_SAMPLERCUBE = 376, + GHT_STRUCT = 377, + GHT_SWITCH = 378, + GHT_UINT = 379, + GHT_UNIFORM = 380, + GHT_VOID = 381, + GHT_WHILE = 382, + HGT_BOOL = 383, + HGT_BREAK = 384, + HGT_CASE = 385, + HGT_CENTROID = 386, + HGT_CONST = 387, + HGT_CONTINUE = 388, + HGT_DEFAULT = 389, + HGT_DISCARD = 390, + HGT_DO = 391, + HGT_DOUBLE = 392, + HGT_ELSE = 393, + HGT_FLOAT = 394, + HGT_FOR = 395, + HGT_IF = 396, + HGT_IN = 397, + HGT_INOUT = 398, + HGT_INT = 399, + HGT_NOPERSPECTIVE = 400, + HGT_OUT = 401, + HGT_RETURN = 402, + HGT_SAMPLER1D = 403, + HGT_SAMPLER2D = 404, + HGT_SAMPLER3D = 405, + HGT_SAMPLERCUBE = 406, + HGT_STRUCT = 407, + HGT_SWITCH = 408, + HGT_UINT = 409, + HGT_UNIFORM = 410, + HGT_VOID = 411, + HGT_WHILE = 412, + HT_APPENDSTRUCTUREDBUFFER = 413, + HT_ASM = 414, + HT_ASM_FRAGMENT = 415, + HT_BLENDSTATE = 416, + HT_BUFFER = 417, + HT_BYTEADDRESSBUFFER = 418, + HT_CBUFFER = 419, + HT_COLUMN_MAJOR = 420, + HT_COMPILE = 421, + HT_COMPILE_FRAGMENT = 422, + HT_COMPILESHADER = 423, + HT_COMPUTESHADER = 424, + HT_CONSUMESTRUCTUREDBUFFER = 425, + HT_DEPTHSTENCILSTATE = 426, + HT_DEPTHSTENCILVIEW = 427, + HT_DOMAINSHADER = 428, + HT_DWORD = 429, + HT_EXTERN = 430, + HT_FALSE = 431, + HT_FXGROUP = 432, + HT_GEOMETRYSHADER = 433, + HT_GROUPSHARED = 434, + HT_HALF = 435, + HT_HULLSHADER = 436, + HT_INLINE = 437, + HT_INPUTPATCH = 438, + HT_INTERFACE = 439, + HT_LINE = 440, + HT_LINEADJ = 441, + HT_LINEAR = 442, + HT_LINESTREAM = 443, + HT_MATRIX = 444, + HT_NAMESPACE = 445, + HT_NOINTERPOLATION = 446, + HT_NULL = 447, + HT_OUTPUTPATCH = 448, + HT_PACKOFFSET = 449, + HT_PASS = 450, + HT_PIXELFRAGMENT = 451, + HT_PIXELSHADER = 452, + HT_POINT = 453, + HT_POINTSTREAM = 454, + HT_PRECISE = 455, + HT_RASTERIZERSTATE = 456, + HT_RENDERTARGETVIEW = 457, + HT_REGISTER = 458, + HT_ROW_MAJOR = 459, + HT_RWBUFFER = 460, + HT_RWBYTEADDRESSBUFFER = 461, + HT_RWSTRUCTUREDBUFFER = 462, + HT_RWTEXTURE1D = 463, + HT_RWTEXTURE1DARRAY = 464, + HT_RWTEXTURE2D = 465, + HT_RWTEXTURE2DARRAY = 466, + HT_RWTEXTURE3D = 467, + HT_SAMPLER = 468, + HT_SAMPLER_STATE = 469, + HT_SAMPLERSTATE = 470, + HT_SAMPLERCOMPARISONSTATE = 471, + HT_SHARED = 472, + HT_SNORM = 473, + HT_STATEBLOCK = 474, + HT_STATEBLOCK_STATE = 475, + HT_STATIC = 476, + HT_STRING = 477, + HT_STRUCTUREDBUFFER = 478, + HT_TBUFFER = 479, + HT_TECHNIQUE = 480, + HT_TECHNIQUE10 = 481, + HT_TECHNIQUE11XZ = 482, + HT_TEXTURE = 483, + HT_TEXTURE1D = 484, + HT_TEXTURE1DARRAY = 485, + HT_TEXTURE2D = 486, + HT_TEXTURE2DARRAY = 487, + HT_TEXTURE2DMS = 488, + HT_TEXTURE2DMSARRAY = 489, + HT_TEXTURE3D = 490, + HT_TEXTURECUBE = 491, + HT_TEXTURECUBEARRAY = 492, + HT_TRUE = 493, + HT_TYPEDEF = 494, + HT_TRIANGLE = 495, + HT_TRIANGLEADJ = 496, + HT_TRIANGLESTREAM = 497, + HT_UNORM = 498, + HT_VECTOR = 499, + HT_VERTEXFRAGMENT = 500, + HT_VERTEXSHADER = 501, + HT_VOLATILE = 502, + HT_BOOL1 = 503, + HT_BOOL1x1 = 504, + HT_BOOL2x1 = 505, + HT_BOOL3x1 = 506, + HT_BOOL4x1 = 507, + HT_BOOL2 = 508, + HT_BOOL1x2 = 509, + HT_BOOL2x2 = 510, + HT_BOOL3x2 = 511, + HT_BOOL4x2 = 512, + HT_BOOL3 = 513, + HT_BOOL1x3 = 514, + HT_BOOL2x3 = 515, + HT_BOOL3x3 = 516, + HT_BOOL4x3 = 517, + HT_BOOL4 = 518, + HT_BOOL1x4 = 519, + HT_BOOL2x4 = 520, + HT_BOOL3x4 = 521, + HT_BOOL4x4 = 522, + HT_FLOAT1 = 523, + HT_FLOAT1x1 = 524, + HT_FLOAT2x1 = 525, + HT_FLOAT3x1 = 526, + HT_FLOAT4x1 = 527, + HT_FLOAT2 = 528, + HT_FLOAT1x2 = 529, + HT_FLOAT2x2 = 530, + HT_FLOAT3x2 = 531, + HT_FLOAT4x2 = 532, + HT_FLOAT3 = 533, + HT_FLOAT1x3 = 534, + HT_FLOAT2x3 = 535, + HT_FLOAT3x3 = 536, + HT_FLOAT4x3 = 537, + HT_FLOAT4 = 538, + HT_FLOAT1x4 = 539, + HT_FLOAT2x4 = 540, + HT_FLOAT3x4 = 541, + HT_FLOAT4x4 = 542, + HT_DOUBLE1 = 543, + HT_DOUBLE1x1 = 544, + HT_DOUBLE2x1 = 545, + HT_DOUBLE3x1 = 546, + HT_DOUBLE4x1 = 547, + HT_DOUBLE2 = 548, + HT_DOUBLE1x2 = 549, + HT_DOUBLE2x2 = 550, + HT_DOUBLE3x2 = 551, + HT_DOUBLE4x2 = 552, + HT_DOUBLE3 = 553, + HT_DOUBLE1x3 = 554, + HT_DOUBLE2x3 = 555, + HT_DOUBLE3x3 = 556, + HT_DOUBLE4x3 = 557, + HT_DOUBLE4 = 558, + HT_DOUBLE1x4 = 559, + HT_DOUBLE2x4 = 560, + HT_DOUBLE3x4 = 561, + HT_DOUBLE4x4 = 562, + HT_DWORD1 = 563, + HT_DWORD1x1 = 564, + HT_DWORD2x1 = 565, + HT_DWORD3x1 = 566, + HT_DWORD4x1 = 567, + HT_DWORD2 = 568, + HT_DWORD1x2 = 569, + HT_DWORD2x2 = 570, + HT_DWORD3x2 = 571, + HT_DWORD4x2 = 572, + HT_DWORD3 = 573, + HT_DWORD1x3 = 574, + HT_DWORD2x3 = 575, + HT_DWORD3x3 = 576, + HT_DWORD4x3 = 577, + HT_DWORD4 = 578, + HT_DWORD1x4 = 579, + HT_DWORD2x4 = 580, + HT_DWORD3x4 = 581, + HT_DWORD4x4 = 582, + HT_INT1 = 583, + HT_INT1x1 = 584, + HT_INT2x1 = 585, + HT_INT3x1 = 586, + HT_INT4x1 = 587, + HT_INT2 = 588, + HT_INT1x2 = 589, + HT_INT2x2 = 590, + HT_INT3x2 = 591, + HT_INT4x2 = 592, + HT_INT3 = 593, + HT_INT1x3 = 594, + HT_INT2x3 = 595, + HT_INT3x3 = 596, + HT_INT4x3 = 597, + HT_INT4 = 598, + HT_INT1x4 = 599, + HT_INT2x4 = 600, + HT_INT3x4 = 601, + HT_INT4x4 = 602, + HT_UINT1 = 603, + HT_UINT1x1 = 604, + HT_UINT2x1 = 605, + HT_UINT3x1 = 606, + HT_UINT4x1 = 607, + HT_UINT2 = 608, + HT_UINT1x2 = 609, + HT_UINT2x2 = 610, + HT_UINT3x2 = 611, + HT_UINT4x2 = 612, + HT_UINT3 = 613, + HT_UINT1x3 = 614, + HT_UINT2x3 = 615, + HT_UINT3x3 = 616, + HT_UINT4x3 = 617, + HT_UINT4 = 618, + HT_UINT1x4 = 619, + HT_UINT2x4 = 620, + HT_UINT3x4 = 621, + HT_UINT4x4 = 622, + PREPROCESSOR_DEFINE = 623, + PREPROCESSOR_ELIF = 624, + PREPROCESSOR_ELSE = 625, + PREPROCESSOR_ENDIF = 626, + PREPROCESSOR_ERROR = 627, + PREPROCESSOR_IF = 628, + PREPROCESSOR_IFDEF = 629, + PREPROCESSOR_IFNDEF = 630, + PREPROCESSOR_INCLUDE = 631, + PREPROCESSOR_LINE = 632, + PREPROCESSOR_PRAGMA = 633, + PREPROCESSOR_UNDEF = 634, + PREPROCESSOR_REGION = 635, HT_AUTO = 636, HT_CATCH = 637, HT_CHAR = 638, diff --git a/src/generated/lolfx-scanner.cpp b/src/generated/lolfx-scanner.cpp index 0dcb7d47..f84adabb 100644 --- a/src/generated/lolfx-scanner.cpp +++ b/src/generated/lolfx-scanner.cpp @@ -339,206 +339,205 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_accept[1633] = +static yyconst flex_int16_t yy_accept[1627] = { 0, 0, 0, 439, 439, 444, 444, 446, 436, 434, 435, 436, 436, 436, 436, 436, 436, 436, 436, 432, 432, 436, 436, 436, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 436, 91, 91, 433, 433, 433, - 433, 91, 433, 433, 433, 433, 433, 433, 92, 92, - 91, 92, 92, 433, 433, 90, 90, 436, 439, 440, + 433, 433, 433, 433, 436, 92, 92, 433, 433, 433, + 433, 92, 433, 433, 433, 433, 433, 433, 93, 93, + 92, 93, 93, 433, 433, 91, 91, 436, 439, 440, 441, 444, 443, 434, 414, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 422, 417, 427, 420, 409, 423, - 410, 424, 437, 442, 421, 0, 431, 432, 415, 411, + 0, 0, 0, 422, 417, 427, 420, 409, 423, 410, + 424, 437, 442, 421, 0, 431, 432, 415, 411, 413, - 413, 412, 416, 433, 433, 433, 433, 433, 433, 433, + 412, 416, 433, 433, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 433, 433, 433, 132, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 131, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 136, 137, 433, 433, + 433, 433, 433, 433, 433, 137, 138, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 428, 419, 91, 433, 433, - 91, 433, 433, 433, 433, 433, 433, 433, 101, 433, - 433, 433, 433, 433, 91, 433, 106, 107, 433, 433, - - 433, 433, 433, 433, 433, 433, 433, 92, 433, 91, - 433, 433, 433, 92, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 90, 429, 418, 439, 438, - 444, 0, 0, 0, 0, 0, 368, 0, 0, 0, - 0, 0, 430, 425, 426, 433, 154, 433, 433, 433, + 433, 433, 433, 433, 428, 419, 92, 433, 433, 92, + 433, 433, 433, 433, 433, 433, 433, 102, 433, 433, + 433, 433, 433, 92, 433, 107, 108, 433, 433, 433, + + 433, 433, 433, 433, 433, 433, 93, 433, 92, 433, + 433, 433, 93, 433, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 91, 429, 418, 439, 438, + 444, 0, 0, 0, 0, 369, 0, 0, 0, 0, + 0, 430, 425, 426, 433, 155, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 135, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 139, 433, 433, - 433, 433, 433, 390, 433, 433, 433, 433, 141, 433, + 433, 433, 433, 433, 433, 136, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 140, 433, 433, 433, + 433, 433, 390, 433, 433, 433, 433, 142, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 403, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 91, 433, 433, 433, + 433, 433, 403, 433, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 92, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 105, 433, 433, 109, 433, 433, 433, - 433, 433, 433, 433, 433, 111, 433, 92, 433, 433, + 433, 433, 106, 433, 433, 110, 433, 433, 433, 433, + 433, 433, 433, 433, 112, 433, 93, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 90, 0, 0, 0, 0, 0, - - 0, 0, 0, 0, 0, 0, 0, 0, 433, 433, - 377, 433, 123, 433, 433, 433, 125, 433, 433, 433, - 379, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 133, 384, 433, 433, 433, 433, - 433, 433, 433, 387, 433, 175, 433, 433, 433, 433, - 323, 328, 333, 338, 433, 180, 388, 433, 433, 433, - 433, 433, 187, 433, 433, 433, 190, 433, 433, 433, + 433, 433, 433, 433, 91, 0, 0, 0, 0, 0, + + 0, 0, 0, 0, 0, 0, 0, 433, 433, 377, + 433, 124, 433, 433, 433, 126, 433, 433, 433, 379, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 134, 384, 433, 433, 433, 433, 433, + 433, 433, 387, 433, 176, 433, 433, 433, 433, 324, + 329, 334, 339, 433, 181, 388, 433, 433, 433, 433, + 433, 188, 433, 433, 433, 191, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 401, 433, 433, - - 233, 433, 149, 433, 433, 433, 433, 433, 433, 433, - 433, 151, 433, 433, 91, 433, 93, 433, 433, 95, - 433, 433, 433, 433, 433, 433, 433, 433, 103, 433, - 4, 433, 433, 433, 433, 433, 433, 433, 45, 61, - 65, 69, 433, 433, 433, 92, 433, 433, 433, 433, - 433, 433, 433, 433, 88, 119, 433, 433, 433, 58, - 59, 60, 121, 433, 90, 0, 0, 364, 365, 0, - 0, 0, 0, 0, 372, 0, 0, 0, 433, 433, - 433, 243, 248, 253, 258, 124, 433, 433, 378, 433, - 433, 380, 433, 433, 433, 127, 433, 433, 433, 433, - - 433, 433, 433, 433, 169, 433, 433, 433, 171, 134, - 433, 433, 433, 433, 433, 433, 138, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 193, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 401, 433, 433, 234, + + 433, 150, 433, 433, 433, 433, 433, 433, 433, 433, + 152, 433, 433, 92, 433, 94, 433, 433, 96, 433, + 433, 433, 433, 433, 433, 433, 433, 104, 433, 4, + 433, 433, 433, 433, 433, 433, 433, 45, 62, 66, + 70, 433, 433, 433, 93, 433, 433, 433, 433, 433, + 433, 433, 433, 89, 120, 433, 433, 433, 433, 59, + 60, 61, 122, 433, 91, 0, 365, 366, 0, 0, + 0, 0, 0, 373, 0, 0, 0, 433, 433, 433, + 244, 249, 254, 259, 125, 433, 433, 378, 433, 433, + 380, 433, 433, 433, 128, 433, 433, 433, 433, 433, + + 433, 433, 433, 170, 433, 433, 433, 172, 135, 433, + 433, 433, 433, 433, 433, 139, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 396, 433, 433, 213, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 402, 433, 433, 433, 343, 348, - 353, 358, 433, 405, 238, 433, 407, 433, 433, 433, - 433, 152, 433, 94, 49, 50, 51, 433, 97, 433, - 433, 433, 76, 80, 84, 433, 73, 74, 75, 89, - - 104, 43, 108, 433, 433, 52, 53, 54, 433, 433, - 433, 433, 433, 433, 2, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 55, 56, 57, 122, 0, - 0, 366, 367, 369, 0, 0, 0, 374, 0, 433, - 433, 433, 433, 433, 433, 433, 157, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 382, 433, 433, - 433, 132, 303, 308, 313, 318, 433, 433, 170, 263, - 268, 273, 278, 386, 433, 433, 433, 433, 177, 433, - 324, 329, 334, 339, 325, 330, 335, 340, 326, 331, - 336, 341, 327, 332, 337, 342, 433, 433, 182, 433, - - 184, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 394, 433, 433, 433, 433, 142, - 433, 433, 433, 433, 433, 433, 212, 397, 398, 433, - 216, 217, 147, 148, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 239, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 102, - 433, 433, 6, 62, 63, 64, 66, 67, 68, 70, - 71, 72, 433, 433, 433, 112, 3, 5, 117, 433, - 118, 433, 433, 433, 0, 363, 370, 0, 373, 0, - 433, 433, 433, 244, 249, 254, 259, 245, 250, 255, - - 260, 246, 251, 256, 261, 247, 252, 257, 262, 433, - 159, 433, 433, 161, 433, 433, 433, 433, 129, 433, - 130, 433, 283, 288, 293, 298, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 172, 433, 433, 433, - 433, 433, 181, 433, 389, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 195, 392, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 208, 433, 433, 433, - 219, 433, 433, 433, 433, 234, 433, 344, 349, 354, - 359, 345, 350, 355, 360, 346, 351, 356, 361, 347, - 352, 357, 362, 150, 433, 433, 433, 408, 433, 433, - - 433, 433, 99, 100, 77, 78, 79, 81, 82, 83, - 85, 86, 87, 433, 433, 44, 433, 433, 208, 433, - 223, 120, 433, 0, 0, 371, 375, 433, 433, 433, - 433, 126, 433, 433, 433, 433, 433, 433, 128, 433, - 433, 433, 433, 433, 433, 304, 309, 314, 319, 305, - 310, 315, 320, 306, 311, 316, 321, 307, 312, 317, - 322, 433, 385, 264, 269, 274, 279, 265, 270, 275, - 280, 266, 271, 276, 281, 267, 272, 277, 282, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 391, 433, - 433, 433, 433, 433, 433, 433, 198, 433, 433, 433, - - 200, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 400, 433, 433, 433, 433, 235, - 404, 406, 433, 433, 242, 433, 96, 98, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 0, - 375, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 284, 289, 294, 299, 285, 290, 295, - 300, 286, 291, 296, 301, 287, 292, 297, 302, 433, - 433, 433, 433, 433, 179, 433, 185, 433, 433, 433, - 433, 433, 433, 433, 393, 433, 433, 433, 199, 433, - 433, 433, 143, 144, 145, 433, 433, 433, 433, 433, - - 433, 433, 220, 224, 226, 230, 433, 433, 433, 433, - 433, 48, 47, 433, 433, 433, 433, 433, 433, 46, - 113, 114, 115, 433, 433, 433, 433, 433, 433, 433, - 433, 0, 433, 433, 156, 433, 433, 433, 433, 433, - 381, 433, 433, 433, 433, 433, 433, 176, 178, 183, - 433, 433, 433, 189, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 433, 433, 433, 214, + 433, 433, 433, 194, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 14, 15, 16, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 1, 20, 21, 22, 433, - - 433, 0, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 174, 433, 433, 188, 433, 192, - 194, 433, 433, 433, 433, 433, 203, 205, 207, 433, - 146, 433, 433, 433, 399, 433, 221, 433, 433, 433, - 228, 231, 236, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 433, 37, 433, 433, 433, - 116, 433, 433, 433, 433, 433, 433, 376, 433, 155, - 433, 160, 433, 433, 433, 433, 433, 168, 383, 433, + 396, 433, 433, 214, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 402, 433, 433, 433, 344, 349, 354, + 359, 433, 405, 239, 433, 407, 433, 433, 433, 433, + 153, 433, 95, 50, 51, 52, 433, 98, 433, 433, + 433, 77, 81, 85, 433, 74, 75, 76, 90, 105, + + 43, 109, 433, 433, 53, 54, 55, 433, 433, 433, + 433, 433, 433, 2, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 56, 57, 58, 433, 123, 0, + 367, 368, 370, 0, 0, 0, 375, 0, 433, 433, + 433, 433, 433, 433, 433, 158, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 382, 433, 433, 433, + 133, 304, 309, 314, 319, 433, 433, 171, 264, 269, + 274, 279, 386, 433, 433, 433, 433, 178, 433, 325, + 330, 335, 340, 326, 331, 336, 341, 327, 332, 337, + 342, 328, 333, 338, 343, 433, 433, 183, 433, 185, + 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 210, 433, 433, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 394, 433, 433, 433, 433, 143, 433, + 433, 433, 433, 433, 433, 213, 397, 398, 433, 217, + 218, 148, 149, 433, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 240, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 433, 433, 103, 433, + 433, 6, 63, 64, 65, 67, 68, 69, 71, 72, + 73, 433, 433, 433, 113, 3, 5, 118, 433, 119, + 433, 433, 433, 433, 364, 371, 0, 374, 0, 433, + 433, 433, 245, 250, 255, 260, 246, 251, 256, 261, + + 247, 252, 257, 262, 248, 253, 258, 263, 433, 160, + 433, 433, 162, 433, 433, 433, 433, 130, 433, 131, + 433, 284, 289, 294, 299, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 173, 433, 433, 433, 433, + 433, 182, 433, 389, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 196, 392, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 209, 433, 433, 433, 220, + 433, 433, 433, 433, 235, 433, 345, 350, 355, 360, + 346, 351, 356, 361, 347, 352, 357, 362, 348, 353, + 358, 363, 151, 433, 433, 433, 408, 433, 433, 433, + + 433, 100, 101, 78, 79, 80, 82, 83, 84, 86, + 87, 88, 433, 433, 44, 433, 433, 209, 433, 224, + 121, 433, 49, 372, 376, 433, 433, 433, 433, 127, + 433, 433, 433, 433, 433, 433, 129, 433, 433, 433, + 433, 433, 433, 305, 310, 315, 320, 306, 311, 316, + 321, 307, 312, 317, 322, 308, 313, 318, 323, 433, + 385, 265, 270, 275, 280, 266, 271, 276, 281, 267, + 272, 277, 282, 268, 273, 278, 283, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 391, 433, 433, 433, + 433, 433, 433, 433, 199, 433, 433, 433, 201, 433, - 433, 433, 241, 433, 433, 38, 433, 433, 17, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 39, 433, 433, 23, 433, 433, 163, 433, 164, - 433, 433, 433, 433, 433, 140, 191, 433, 433, 433, - 433, 433, 433, 433, 433, 209, 433, 433, 222, 433, + 433, 433, 400, 433, 433, 433, 433, 236, 404, 406, + 433, 433, 243, 433, 97, 99, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 433, 376, 433, 433, + 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, + 285, 290, 295, 300, 286, 291, 296, 301, 287, 292, + 297, 302, 288, 293, 298, 303, 433, 433, 433, 433, + 433, 180, 433, 186, 433, 433, 433, 433, 433, 433, + 433, 393, 433, 433, 433, 200, 433, 433, 433, 144, + 145, 146, 433, 433, 433, 433, 433, 433, 433, 221, + + 225, 227, 231, 433, 433, 433, 433, 433, 48, 47, + 433, 433, 433, 433, 433, 433, 46, 114, 115, 116, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 110, 433, 433, 433, 433, 26, 433, 30, 433, + 157, 433, 433, 433, 433, 433, 381, 433, 433, 433, + 433, 433, 433, 177, 179, 184, 433, 433, 433, 190, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 173, 433, 433, 433, 433, 433, 433, - 433, 433, 433, 433, 433, 225, 227, 433, 433, 237, + 433, 433, 433, 433, 433, 215, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 433, 14, 15, 16, + 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, + 433, 1, 20, 21, 22, 433, 433, 433, 433, 433, - 240, 433, 433, 433, 28, 31, 433, 10, 433, 11, - 433, 433, 433, 433, 433, 433, 433, 433, 29, 32, - 433, 433, 433, 433, 433, 433, 433, 186, 196, 433, + 433, 433, 433, 433, 433, 433, 433, 433, 433, 175, + 433, 433, 189, 433, 193, 195, 433, 433, 433, 433, + 433, 204, 206, 208, 433, 147, 433, 433, 433, 399, + 433, 222, 433, 433, 433, 229, 232, 237, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, 433, - 18, 19, 433, 433, 433, 7, 433, 433, 433, 8, - 433, 433, 24, 25, 433, 433, 433, 433, 162, 433, - 433, 167, 395, 197, 433, 433, 204, 206, 433, 215, - 218, 229, 232, 433, 433, 433, 433, 40, 433, 33, - 433, 433, 433, 433, 158, 433, 166, 433, 433, 433, - 41, 35, 433, 433, 433, 433, 9, 42, 36, 433, - - 433, 433, 202, 433, 433, 433, 433, 433, 433, 433, - 201, 433, 433, 433, 27, 433, 433, 433, 433, 12, - 13, 433, 433, 433, 433, 433, 153, 433, 211, 34, - 165, 0 + 433, 37, 433, 433, 433, 117, 433, 433, 433, 433, + 433, 433, 433, 156, 433, 161, 433, 433, 433, 433, + 433, 169, 383, 433, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 211, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 242, 433, 433, 38, + + 433, 433, 17, 433, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 39, 433, 433, 23, 433, + 433, 164, 433, 165, 433, 433, 433, 433, 433, 141, + 192, 433, 433, 433, 433, 433, 433, 433, 433, 210, + 433, 433, 223, 433, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 111, 433, 433, 433, 433, + 26, 433, 30, 433, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 433, 433, 433, 174, 433, 433, + 433, 433, 433, 433, 433, 433, 433, 433, 433, 226, + 228, 433, 433, 238, 241, 433, 433, 433, 28, 31, + + 433, 10, 433, 11, 433, 433, 433, 433, 433, 433, + 433, 433, 29, 32, 433, 433, 433, 433, 433, 433, + 433, 187, 197, 433, 433, 433, 433, 433, 433, 433, + 433, 433, 433, 433, 18, 19, 433, 433, 433, 7, + 433, 433, 433, 8, 433, 433, 24, 25, 433, 433, + 433, 433, 163, 433, 433, 168, 395, 198, 433, 433, + 205, 207, 433, 216, 219, 230, 233, 433, 433, 433, + 433, 40, 433, 33, 433, 433, 433, 433, 159, 433, + 167, 433, 433, 433, 41, 35, 433, 433, 433, 433, + 9, 42, 36, 433, 433, 433, 203, 433, 433, 433, + + 433, 433, 433, 433, 202, 433, 433, 433, 27, 433, + 433, 433, 433, 12, 13, 433, 433, 433, 433, 433, + 154, 433, 212, 34, 166, 0 } ; static yyconst flex_int32_t yy_ec[256] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, + 1, 1, 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, 2, 4, 1, 5, 1, 6, 7, 1, 1, - 1, 8, 9, 1, 10, 11, 12, 13, 14, 15, - 16, 17, 18, 18, 18, 18, 18, 1, 1, 19, - 20, 21, 1, 1, 22, 23, 24, 25, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, - 1, 1, 1, 48, 49, 1, 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, 1, 76, 1, 1, 1, 1, 1, 1, + 1, 2, 5, 1, 6, 1, 7, 8, 1, 1, + 1, 9, 10, 1, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 19, 19, 19, 19, 1, 1, 20, + 21, 22, 1, 1, 23, 24, 25, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, + 1, 1, 1, 49, 50, 1, 51, 52, 53, 54, + + 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 1, 77, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -555,725 +554,723 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst flex_int32_t yy_meta[77] = +static yyconst flex_int32_t yy_meta[78] = { 0, - 1, 1, 2, 1, 1, 1, 1, 3, 1, 1, - 1, 1, 4, 4, 4, 4, 4, 4, 1, 1, - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 1, 1, 2, 1, 1, 1, 1, 1, 3, 1, + 1, 1, 1, 4, 4, 4, 4, 4, 4, 1, + 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 1 + 4, 4, 4, 4, 4, 4, 1 } ; -static yyconst flex_int16_t yy_base[1639] = +static yyconst flex_int16_t yy_base[1633] = { 0, - 0, 0, 74, 75, 2957, 2956, 2958, 2961, 2955, 2961, - 2936, 77, 2935, 73, 2934, 72, 74, 77, 75, 85, - 68, 2933, 70, 69, 79, 134, 128, 117, 171, 69, - 119, 124, 0, 141, 159, 186, 169, 215, 205, 264, - 249, 184, 238, 75, 96, 275, 313, 212, 362, 185, - 268, 311, 239, 331, 318, 331, 367, 353, 416, 345, - 403, 426, 476, 488, 414, 436, 388, 90, 0, 2961, - 2940, 0, 2961, 2949, 2961, 499, 129, 2896, 59, 110, - 2891, 136, 2885, 2893, 2961, 2961, 2961, 2961, 2961, 2961, - 2961, 2961, 2961, 2961, 2961, 558, 2961, 566, 2926, 2961, - - 2961, 2961, 2925, 0, 160, 181, 222, 244, 247, 284, - 301, 310, 463, 330, 356, 382, 385, 486, 558, 375, - 407, 392, 410, 411, 447, 497, 464, 471, 473, 496, - 509, 503, 517, 525, 535, 545, 0, 557, 552, 553, - 551, 556, 565, 556, 572, 568, 577, 563, 593, 562, - 580, 613, 589, 574, 616, 580, 618, 600, 628, 619, - 612, 631, 624, 613, 639, 650, 658, 628, 633, 667, - 660, 671, 660, 672, 676, 2961, 2961, 670, 2875, 675, - 693, 2889, 673, 687, 718, 721, 689, 2892, 721, 2887, - 696, 707, 709, 707, 734, 2884, 0, 756, 2889, 2884, - - 2863, 731, 726, 2883, 741, 731, 764, 742, 783, 772, - 801, 743, 2871, 812, 2883, 757, 811, 825, 761, 808, - 796, 2879, 836, 828, 772, 818, 2961, 2961, 0, 2961, - 0, 846, 2877, 61, 2878, 2863, 160, 2877, 2865, 847, - 2874, 2859, 891, 2961, 2961, 848, 2876, 846, 850, 854, - 872, 871, 874, 875, 887, 885, 873, 877, 877, 876, - 882, 880, 901, 898, 884, 903, 908, 908, 893, 911, - 908, 901, 903, 911, 898, 919, 0, 917, 911, 920, - 920, 915, 940, 935, 940, 930, 931, 960, 953, 952, - 942, 961, 961, 0, 953, 963, 957, 952, 955, 961, - - 954, 971, 964, 978, 960, 963, 972, 965, 980, 977, - 988, 981, 2875, 982, 985, 1003, 998, 997, 998, 1004, - 1016, 1004, 1003, 1016, 1004, 1020, 1019, 1012, 1009, 1013, - 1019, 1037, 1034, 0, 1035, 1021, 1055, 1027, 1038, 1034, - 1038, 1039, 1043, 1060, 1070, 1060, 1048, 2856, 1062, 1078, - 2870, 1075, 1061, 1065, 1081, 1085, 2852, 1088, 2868, 1088, - 1076, 2850, 1095, 0, 2861, 1076, 1110, 2867, 2854, 2863, - 2850, 2848, 1132, 2854, 1096, 1095, 2859, 784, 1111, 1096, - 1103, 2846, 1111, 2842, 1110, 1111, 1128, 1114, 1129, 2846, - 2855, 1157, 1132, 1125, 1103, 1131, 2848, 2850, 2850, 2845, - - 2838, 2847, 2847, 2838, 2844, 1133, 2843, 2828, 1127, 1140, - 0, 1163, 1186, 1159, 1166, 1172, 0, 1167, 1170, 1165, - 0, 1165, 1172, 1179, 1166, 1180, 1169, 1171, 1184, 1192, - 1185, 1184, 1193, 1189, 0, 0, 1197, 1189, 1203, 1189, - 1196, 1208, 1221, 0, 1211, 0, 1210, 1217, 1212, 1213, - 1215, 1216, 1217, 1218, 1225, 1243, 0, 1236, 1244, 1228, - 1228, 1231, 0, 1249, 1231, 1238, 0, 1244, 1238, 1254, - 1263, 1260, 1257, 1274, 1263, 1263, 1280, 1269, 1275, 1283, - 1275, 1278, 1273, 1286, 1294, 1280, 1296, 1287, 1290, 1299, - 1291, 1303, 1306, 1306, 1300, 1306, 1298, 0, 1297, 1307, - - 0, 1331, 1357, 1323, 1325, 1328, 1336, 1337, 1339, 1350, - 1335, 0, 1337, 1353, 0, 2837, 1366, 1353, 1380, 0, - 1347, 1357, 1359, 1349, 1378, 1393, 1368, 1405, 0, 1376, - 0, 1370, 2829, 1371, 2826, 2827, 1408, 2821, 0, 2817, - 2816, 2815, 2817, 1376, 2829, 0, 1386, 1379, 1398, 2816, - 1408, 2820, 1409, 1392, 0, 1421, 1405, 2818, 1432, 0, - 0, 0, 0, 1416, 0, 1411, 2819, 2961, 2961, 2826, - 2813, 2824, 2824, 2807, 2961, 1416, 2821, 2817, 1426, 1413, - 1413, 1409, 1410, 1411, 1412, 0, 1419, 1438, 0, 1438, - 1429, 0, 1431, 1434, 1427, 2825, 1437, 1437, 1441, 1449, - - 1436, 1438, 1452, 1462, 1492, 1459, 1466, 1462, 0, 1496, - 1473, 1459, 1473, 1479, 1491, 1495, 0, 1485, 1516, 1520, - 1524, 1529, 1496, 1527, 1486, 1483, 1520, 1517, 1531, 1518, - 1518, 1519, 1534, 1535, 1523, 1524, 1524, 1543, 1544, 1530, - 1529, 1545, 1533, 1538, 1552, 1549, 1551, 1536, 1538, 1557, - 1559, 0, 1583, 1582, 0, 1587, 1589, 1586, 1574, 1587, - 1591, 1588, 1597, 1581, 0, 1593, 1596, 1601, 1579, 1580, - 1581, 1582, 1589, 0, 0, 1594, 0, 1591, 1586, 1610, - 1603, 0, 2822, 0, 0, 0, 0, 1598, 2823, 1600, - 1606, 1601, 2798, 2797, 2796, 1638, 0, 0, 0, 0, - - 1655, 0, 0, 2810, 2806, 0, 0, 0, 2797, 1658, - 1661, 1664, 2803, 1625, 0, 1626, 1647, 1657, 2807, 1643, - 2793, 1656, 1647, 1648, 2801, 0, 0, 0, 0, 1666, - 2807, 2961, 2961, 2961, 2805, 2806, 1667, 2961, 2794, 1650, - 1669, 1654, 1682, 1686, 1690, 1710, 0, 1683, 1670, 1690, - 2808, 1695, 1696, 1704, 1703, 1688, 1690, 0, 1691, 1708, - 1694, 1724, 1690, 1697, 1698, 1699, 1721, 1716, 0, 1702, - 1706, 1707, 1708, 0, 1717, 1716, 1735, 1743, 0, 1744, + 0, 0, 75, 76, 2932, 2931, 2933, 2936, 78, 2936, + 2911, 79, 2910, 75, 2909, 76, 77, 78, 77, 88, + 72, 2908, 73, 71, 81, 137, 131, 119, 157, 89, + 162, 83, 0, 142, 175, 187, 173, 192, 222, 273, + 242, 243, 261, 78, 114, 270, 313, 62, 362, 219, + 340, 389, 177, 323, 203, 311, 367, 248, 435, 302, + 416, 444, 494, 424, 485, 497, 374, 89, 0, 2936, + 2915, 0, 2936, 121, 2936, 521, 2872, 237, 66, 2867, + 2857, 2860, 2868, 2936, 2936, 2936, 2936, 2936, 2936, 2936, + 2936, 2936, 2936, 2936, 514, 2936, 582, 2901, 2936, 2936, + + 2936, 2900, 0, 146, 174, 205, 223, 292, 303, 305, + 303, 382, 305, 319, 377, 380, 428, 550, 401, 539, + 422, 433, 439, 455, 515, 475, 482, 480, 507, 510, + 514, 516, 540, 555, 556, 0, 577, 559, 567, 562, + 565, 573, 564, 582, 587, 595, 582, 603, 580, 596, + 603, 605, 592, 634, 593, 636, 610, 644, 635, 609, + 646, 620, 616, 650, 640, 669, 644, 653, 684, 659, + 682, 661, 689, 671, 2936, 2936, 690, 2850, 689, 704, + 2864, 695, 696, 732, 735, 693, 2867, 735, 2862, 705, + 718, 720, 735, 753, 2859, 0, 750, 2864, 2859, 2838, + + 750, 737, 2858, 771, 741, 783, 759, 804, 792, 809, + 754, 2846, 816, 2858, 768, 845, 803, 783, 834, 841, + 2854, 2840, 856, 856, 817, 831, 2936, 2936, 0, 2936, + 0, 2851, 113, 2852, 2837, 123, 2851, 2839, 2851, 2847, + 2832, 911, 2936, 2936, 861, 2849, 852, 858, 861, 887, + 883, 885, 886, 889, 892, 879, 891, 891, 890, 896, + 894, 914, 916, 902, 920, 923, 923, 910, 928, 925, + 918, 920, 928, 915, 934, 0, 931, 926, 932, 931, + 926, 942, 942, 946, 944, 945, 974, 966, 970, 960, + 979, 976, 0, 970, 980, 974, 969, 972, 978, 971, + + 986, 978, 992, 974, 977, 986, 980, 992, 988, 999, + 983, 2848, 1012, 990, 1006, 1005, 1004, 1009, 1020, 1030, + 1018, 1020, 1032, 1022, 1037, 1036, 1029, 1026, 1028, 1033, + 1050, 1047, 0, 1049, 1036, 1051, 1040, 1050, 1046, 1047, + 1057, 1058, 1079, 1088, 1078, 725, 2829, 1079, 1091, 2843, + 1088, 1076, 1078, 1098, 1097, 2825, 1099, 2841, 1097, 1084, + 2823, 1103, 0, 2834, 1086, 1143, 2840, 2827, 2836, 2823, + 2821, 1146, 2827, 1110, 1100, 2832, 788, 1119, 1102, 1117, + 2819, 1125, 2815, 1125, 1127, 1144, 1132, 1148, 2819, 2828, + 2805, 1161, 1154, 1147, 1114, 2820, 2822, 2822, 2817, 2810, + + 2819, 2819, 2810, 2816, 2813, 2814, 2799, 1146, 1163, 0, + 1166, 1200, 1160, 1167, 1177, 0, 1171, 1177, 1166, 0, + 1166, 1176, 1181, 1183, 1192, 1184, 1188, 1202, 1213, 1206, + 1204, 1215, 1207, 0, 0, 1212, 1204, 1218, 1204, 1211, + 1211, 1222, 0, 1212, 0, 1215, 1221, 1217, 1219, 1216, + 1217, 1221, 1222, 1239, 1257, 0, 1250, 1258, 1242, 1244, + 1248, 0, 1269, 1250, 1257, 0, 1263, 1257, 1269, 1278, + 1275, 1272, 1277, 1264, 1264, 1285, 1273, 1280, 1289, 1276, + 1279, 1277, 1290, 1308, 1294, 1310, 1301, 1304, 1317, 1306, + 1324, 1325, 1325, 1318, 1321, 1313, 0, 1312, 1322, 0, + + 1333, 1373, 1331, 1335, 1338, 1345, 1346, 1342, 1353, 1349, + 0, 1351, 1367, 0, 2808, 1394, 1362, 380, 0, 1358, + 1362, 1369, 1363, 1390, 395, 1380, 1114, 0, 1388, 0, + 1374, 2800, 1375, 2797, 2798, 1118, 2792, 0, 2788, 2787, + 2786, 2788, 1378, 2800, 0, 1388, 1384, 1391, 2787, 1402, + 2791, 1404, 1387, 0, 1420, 1394, 2789, 1344, 2795, 0, + 0, 0, 0, 1412, 0, 2789, 2936, 2936, 2796, 2783, + 2794, 2794, 2777, 2936, 2784, 2790, 2786, 1414, 1408, 1408, + 1404, 1405, 1408, 1410, 0, 1420, 1435, 0, 1435, 1426, + 0, 1428, 1431, 1424, 2794, 1434, 1434, 1437, 1445, 1432, + + 1434, 1439, 1453, 1489, 1450, 1458, 1449, 0, 1499, 1469, + 1453, 1468, 1471, 1488, 1492, 0, 1482, 1510, 1514, 1518, + 1526, 1493, 1511, 1480, 1493, 1511, 1514, 1526, 1513, 1513, + 1514, 1529, 1530, 1518, 1519, 1519, 1537, 1538, 1524, 1524, + 1541, 1529, 1534, 1549, 1546, 1548, 1533, 1535, 1551, 1567, + 0, 1569, 1573, 0, 1583, 1583, 1580, 1568, 1581, 1585, + 1582, 1591, 1575, 0, 1587, 1590, 1595, 1573, 1574, 1576, + 1578, 1585, 0, 0, 1590, 0, 1587, 1582, 1607, 1600, + 0, 2791, 0, 0, 0, 0, 1595, 2792, 1597, 1600, + 1609, 2767, 2766, 2765, 1624, 0, 0, 0, 0, 1648, + + 0, 0, 2779, 2775, 0, 0, 0, 2766, 1651, 1654, + 1657, 2772, 1616, 0, 1635, 1642, 1653, 2776, 1639, 2762, + 1652, 1643, 1644, 2770, 0, 0, 0, 2767, 0, 2775, + 2936, 2936, 2936, 2773, 2774, 2776, 2936, 2761, 1645, 1664, + 1646, 1674, 1678, 1682, 1702, 0, 1675, 1662, 1672, 2775, + 1678, 1680, 1688, 1694, 1679, 1681, 0, 1682, 1699, 1685, + 1721, 1681, 1682, 1686, 1688, 1715, 1711, 0, 1697, 1698, + 1699, 1700, 0, 1709, 1708, 1727, 1735, 0, 1736, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 1745, 1737, 0, 1730, - - 0, 1750, 1755, 1739, 1747, 1749, 1749, 1760, 1749, 1760, - 1749, 1765, 1772, 1758, 0, 1770, 1775, 1763, 1762, 0, - 1776, 1782, 1787, 1786, 1769, 1781, 0, 0, 0, 1788, - 2807, 0, 1780, 0, 1784, 1786, 1784, 1806, 1800, 1807, - 1806, 1827, 1840, 1849, 1855, 1811, 1820, 0, 1840, 1814, - 1825, 2785, 1829, 1834, 1836, 1853, 1866, 1873, 1876, 1882, - 2804, 2799, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 2787, 1842, 1858, 0, 1846, 0, 1852, 2782, - 0, 1874, 1867, 2796, 1900, 2961, 2961, 2795, 1901, 2785, - 1868, 1882, 1889, 0, 0, 0, 0, 0, 0, 0, - - 0, 0, 0, 0, 0, 0, 0, 0, 0, 1875, - 0, 1890, 1883, 1878, 1879, 1898, 1881, 1897, 0, 1898, - 0, 1896, 1881, 1885, 1886, 1887, 1949, 1953, 1957, 1961, - 2798, 1914, 1965, 1970, 1974, 1978, 0, 1950, 1975, 1973, - 1958, 1976, 0, 1975, 0, 1978, 1966, 1978, 1966, 1984, - 1967, 1986, 1987, 1971, 0, 0, 1985, 1965, 1974, 1977, - 1993, 1980, 1978, 1993, 1978, 1981, 2035, 2016, 2029, 2015, - 0, 2013, 2031, 2046, 2032, 0, 2037, 0, 0, 0, + 0, 0, 0, 0, 0, 1738, 1731, 0, 1724, 0, + + 1738, 1743, 1727, 1731, 1740, 1740, 1751, 1740, 1751, 1740, + 1756, 1757, 1746, 0, 1759, 1769, 1758, 1757, 0, 1768, + 1774, 1779, 1778, 1761, 1773, 0, 0, 0, 1780, 2774, + 0, 1772, 0, 1777, 1780, 1778, 1794, 1788, 1795, 1790, + 1818, 1822, 1839, 1843, 1809, 1819, 0, 1824, 1828, 1829, + 2752, 1833, 1823, 1825, 1842, 1853, 1859, 1865, 1869, 2771, + 2766, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 2754, 1835, 1851, 0, 1839, 0, 1845, 2749, 0, + 1862, 1862, 2763, 2760, 2936, 2936, 2761, 2936, 2751, 1856, + 1870, 1877, 0, 0, 0, 0, 0, 0, 0, 0, + + 0, 0, 0, 0, 0, 0, 0, 0, 1862, 0, + 1877, 1869, 1864, 1867, 1886, 1870, 1885, 0, 1886, 0, + 1885, 1872, 1873, 1874, 1875, 1935, 1939, 1943, 1947, 2764, + 1896, 1952, 1956, 1960, 1964, 0, 1936, 1961, 1959, 1944, + 1962, 0, 1961, 0, 1964, 1952, 1964, 1952, 1970, 1953, + 1972, 1973, 1957, 0, 0, 1971, 1951, 1960, 1963, 1979, + 1966, 1964, 1979, 1964, 1967, 2021, 2002, 2015, 2001, 0, + 1999, 2017, 2032, 2018, 0, 2023, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 2039, 2026, 2037, 0, 2041, 2777, - - 2043, 2043, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 2782, 2777, 0, 2045, 2779, 2086, 2784, - 2090, 0, 2774, 2075, 2043, 2961, 0, 2049, 2055, 2049, - 2085, 0, 2090, 2084, 2088, 2090, 2080, 2080, 0, 2087, - 2101, 2113, 2117, 2141, 2145, 0, 0, 0, 0, 0, + 0, 0, 0, 2025, 2012, 2023, 0, 2027, 2743, 2029, + + 2029, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 2748, 2743, 0, 2031, 2745, 2072, 2750, 2076, + 0, 2740, 0, 2936, 0, 2026, 2040, 2034, 2050, 0, + 2072, 2068, 2071, 2070, 2061, 2064, 0, 2071, 2085, 2094, + 2099, 2103, 2122, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 2106, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 2091, 2093, 2115, + 2118, 2117, 2122, 2119, 2110, 2123, 0, 2107, 2123, 2122, + 2126, 2126, 2128, 2128, 0, 2116, 2117, 2118, 0, 2136, + + 2120, 2137, 2139, 2140, 2141, 2159, 2127, 2146, 2163, 2166, + 2171, 2172, 0, 2174, 2175, 2177, 2161, 2182, 0, 0, + 2183, 2184, 0, 2752, 0, 0, 2736, 2193, 2186, 2741, + 2186, 2187, 2188, 2733, 2182, 2739, 2205, 0, 2193, 2210, + 2211, 2202, 2212, 2225, 2209, 2227, 2210, 2214, 2230, 2230, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 2100, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2085, - 2105, 2119, 2122, 2137, 2142, 2139, 2130, 2143, 0, 2127, - 2143, 2142, 2146, 2149, 2151, 2151, 0, 2139, 2140, 2141, - - 0, 2156, 2140, 2157, 2159, 2160, 2161, 2179, 2147, 2149, - 2166, 2178, 2175, 2176, 0, 2194, 2195, 2197, 2181, 2202, - 0, 0, 2203, 2204, 0, 2786, 0, 0, 2770, 2217, - 2203, 2775, 2209, 2210, 2211, 2767, 2202, 2773, 2225, 2204, - 0, 2203, 2220, 2230, 2217, 2227, 2237, 2221, 2239, 2226, - 2232, 2251, 2253, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 2257, - 2251, 2255, 2243, 2254, 0, 2256, 0, 2258, 2251, 2269, - 2253, 2262, 2271, 2276, 0, 2261, 2275, 2274, 0, 2265, - 2266, 2007, 0, 0, 0, 2278, 2290, 2292, 2274, 2284, - - 2277, 2298, 2821, 2305, 2312, 0, 2308, 2310, 2295, 2309, - 2313, 0, 0, 2781, 2780, 2779, 2761, 2760, 2298, 0, - 126, 2308, 0, 2774, 2326, 2774, 2774, 2773, 2772, 2754, - 2753, 2323, 2328, 2318, 0, 2314, 2320, 2332, 2338, 2336, - 0, 2326, 2339, 2345, 2332, 2351, 2354, 0, 0, 0, - 2361, 2356, 2358, 0, 2364, 2352, 2358, 2353, 2353, 2369, - 2372, 2376, 2378, 2379, 2380, 2369, 2382, 2368, 2388, 2773, - 2371, 2390, 306, 2377, 2378, 2384, 2399, 2396, 2389, 2395, - 2409, 2771, 2392, 0, 2765, 2768, 2409, 2751, 2760, 2749, - 2747, 2760, 2756, 2757, 2417, 0, 2761, 2398, 0, 2755, - - 2758, 2401, 2406, 2408, 2427, 2412, 2432, 2433, 2436, 2440, - 2433, 2429, 2428, 2445, 0, 2431, 2430, 0, 2441, 0, - 0, 2439, 2759, 2440, 2442, 2458, 2462, 2463, 0, 2465, - 0, 2462, 2450, 2453, 0, 2453, 0, 2454, 2463, 2464, - 2483, 2484, 0, 2481, 2488, 2478, 2740, 2739, 2737, 2750, - 2748, 2748, 2475, 2734, 2750, 2732, 2746, 2740, 2739, 2734, - 203, 2708, 2706, 2703, 2714, 2712, 2711, 2961, 2478, 0, - 2480, 0, 2485, 2491, 2487, 2487, 2489, 0, 0, 2510, - 2507, 2512, 2498, 2518, 2517, 2500, 2504, 2524, 2510, 2512, - 2516, 0, 2532, 2518, 2534, 2515, 2541, 2548, 2534, 2535, - - 2554, 2543, 0, 2697, 2696, 2712, 2709, 2706, 2706, 2554, - 2703, 2699, 2298, 2280, 2118, 2056, 2011, 2009, 2017, 2006, - 2005, 2006, 1905, 1902, 1900, 2542, 2555, 0, 2558, 0, - 2543, 2547, 2562, 2554, 2558, 0, 0, 2554, 2574, 2567, - 2576, 2558, 2564, 2566, 2577, 0, 2589, 2587, 0, 2569, - 2571, 2579, 2580, 2592, 2588, 1894, 1891, 1873, 1867, 1868, - 1457, 0, 1269, 1106, 1069, 798, 775, 754, 0, 747, - 725, 719, 715, 695, 692, 689, 657, 2604, 2605, 2599, - 2597, 2615, 2612, 0, 2605, 2615, 2604, 2622, 2607, 2623, - 2629, 2630, 2613, 2614, 2630, 0, 0, 2637, 2639, 0, - - 0, 641, 635, 593, 0, 0, 589, 543, 533, 495, - 505, 472, 452, 466, 461, 439, 432, 433, 0, 0, - 423, 2638, 2641, 2629, 2645, 2632, 2630, 0, 0, 2634, - 2638, 2658, 2659, 2642, 2644, 2656, 2667, 2655, 2650, 2651, - 0, 0, 437, 421, 407, 0, 391, 368, 380, 0, - 353, 358, 0, 0, 362, 355, 2677, 2665, 0, 2680, - 2680, 0, 0, 0, 2680, 2682, 0, 0, 2674, 0, - 0, 0, 0, 323, 322, 321, 320, 0, 307, 289, - 267, 260, 256, 2669, 0, 2689, 0, 2689, 2678, 2679, - 0, 0, 271, 234, 220, 223, 0, 0, 0, 2696, - - 2684, 2688, 0, 2688, 203, 196, 161, 176, 2703, 2704, - 0, 2716, 145, 111, 0, 75, 2715, 2715, 2703, 0, - 0, 60, 2707, 2722, 2723, 41, 0, 2711, 0, 0, - 0, 2961, 2778, 2782, 103, 2786, 2790, 2794 + 0, 0, 0, 0, 0, 0, 2236, 2230, 2234, 2222, + 2233, 0, 2232, 0, 2234, 2227, 2245, 2231, 2239, 2248, + 2256, 0, 2241, 2258, 2257, 0, 2252, 2253, 1907, 0, + 0, 0, 2259, 2275, 2277, 2262, 2272, 2265, 2282, 2787, + + 2287, 2288, 0, 2288, 2289, 2274, 2288, 2292, 0, 0, + 2747, 2746, 2745, 2727, 2726, 2277, 0, 298, 2286, 0, + 2740, 2300, 2740, 2740, 2739, 2738, 2720, 2719, 2300, 2293, + 0, 2289, 2294, 2309, 2318, 2316, 0, 2305, 2319, 2329, + 2319, 2338, 2336, 0, 0, 0, 2341, 2334, 2336, 0, + 2340, 2328, 2336, 2331, 2331, 2347, 2348, 2350, 2353, 2354, + 2355, 2344, 2356, 2343, 2363, 2739, 2345, 2367, 155, 2357, + 2358, 2363, 2379, 2380, 2376, 2382, 2391, 2737, 491, 0, + 2731, 2734, 2389, 2717, 2726, 2715, 2713, 2726, 2722, 2723, + 2394, 0, 2727, 2373, 0, 2721, 2724, 2380, 2381, 2403, + + 2388, 2402, 2401, 2404, 2408, 2401, 2397, 2396, 2413, 0, + 2400, 2399, 0, 2411, 0, 0, 2410, 2725, 2411, 2413, + 2434, 2439, 2441, 0, 2445, 0, 2442, 2430, 2432, 0, + 2431, 0, 2430, 2437, 2438, 2456, 2460, 0, 2457, 2458, + 2446, 2706, 2705, 2703, 2716, 2714, 2714, 2443, 2700, 2714, + 2693, 2707, 2704, 2693, 2687, 350, 2672, 2666, 2664, 2677, + 2671, 2667, 2446, 0, 2448, 0, 2453, 2459, 2455, 2456, + 2483, 0, 0, 2476, 2477, 2482, 2468, 2493, 2493, 2476, + 2484, 2504, 2489, 2490, 2492, 0, 2506, 2492, 2507, 2491, + 2517, 2518, 2502, 2503, 2522, 2511, 0, 2431, 2258, 2167, + + 2115, 2041, 2014, 2522, 2013, 2009, 2010, 1992, 1989, 1989, + 1942, 1941, 1950, 1877, 1876, 1891, 1882, 1879, 1878, 2510, + 2523, 0, 2527, 0, 2516, 2522, 2534, 2526, 2535, 0, + 0, 2532, 2553, 2549, 2557, 2540, 2544, 2545, 2555, 0, + 2565, 2561, 0, 2543, 2544, 2555, 2556, 2562, 2556, 1436, + 1435, 1107, 832, 833, 829, 0, 802, 799, 767, 764, + 744, 735, 0, 713, 694, 688, 687, 665, 657, 651, + 626, 2572, 2573, 2567, 2565, 2583, 2580, 0, 2574, 2588, + 2579, 2594, 2579, 2600, 2607, 2609, 2595, 2595, 2612, 0, + 0, 2617, 2618, 0, 0, 609, 516, 500, 0, 0, + + 497, 487, 472, 474, 484, 467, 426, 434, 428, 404, + 402, 408, 0, 0, 406, 2616, 2617, 2603, 2619, 2605, + 2606, 0, 0, 2610, 2608, 2626, 2627, 2610, 2612, 2624, + 2635, 2623, 2619, 2624, 0, 0, 405, 394, 378, 0, + 375, 355, 369, 0, 340, 341, 0, 0, 301, 293, + 2652, 2637, 0, 2652, 2657, 0, 0, 0, 2658, 2661, + 0, 0, 2656, 0, 0, 0, 0, 267, 260, 277, + 274, 0, 269, 237, 217, 210, 205, 2650, 0, 2671, + 0, 2669, 2657, 2657, 0, 0, 222, 217, 205, 206, + 0, 0, 0, 2672, 2658, 2662, 0, 2661, 196, 191, + + 168, 176, 2679, 2680, 0, 2686, 148, 144, 0, 121, + 2683, 2683, 2671, 0, 0, 67, 2675, 2690, 2691, 28, + 0, 2679, 0, 0, 0, 2936, 2747, 2751, 86, 2755, + 2759, 2763 } ; -static yyconst flex_int16_t yy_def[1639] = +static yyconst flex_int16_t yy_def[1633] = { 0, - 1632, 1, 1633, 1633, 1634, 1634, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1632, 1635, 1635, 26, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 40, 1635, 1635, 1635, 1635, 1635, 1632, 1636, 1632, - 1632, 1637, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - - 1632, 1632, 1632, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1632, 1632, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1632, 1632, 1636, 1632, - 1637, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1632, 1632, 1632, 1632, 1632, - - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1632, 1632, 1632, 1632, 1632, 1632, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1632, 1632, 1632, 1638, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1632, - 1638, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1632, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1632, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1632, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, 1635, - 1635, 0, 1632, 1632, 1632, 1632, 1632, 1632 + 1626, 1, 1627, 1627, 1628, 1628, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1626, 1629, 1629, 26, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 40, 1629, 1629, 1629, 1629, 1629, 1626, 1630, 1626, + 1626, 1631, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + + 1626, 1626, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1626, 1626, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1626, 1626, 1630, 1626, + 1631, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1626, 1626, 1626, 1626, 1626, + + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1626, 1626, 1626, 1626, 1626, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1626, 1632, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1632, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, 1629, + 1629, 1629, 1629, 1629, 1629, 0, 1626, 1626, 1626, 1626, + 1626, 1626 } ; -static yyconst flex_int16_t yy_nxt[3038] = +static yyconst flex_int16_t yy_nxt[3014] = { 0, - 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, - 8, 18, 19, 20, 20, 20, 20, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 33, 34, 35, 36, 37, 38, 33, 39, 40, - 41, 42, 43, 44, 33, 33, 33, 45, 8, 46, - 47, 48, 49, 50, 51, 52, 53, 54, 33, 33, - 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 67, 67, 68, 70, 70, 76, 86, - 89, 71, 71, 91, 93, 96, 99, 100, 94, 102, - 103, 90, 87, 92, 132, 96, 95, 98, 98, 98, - - 98, 98, 98, 175, 133, 105, 104, 134, 106, 227, - 107, 108, 1630, 77, 109, 176, 97, 110, 398, 234, - 111, 235, 132, 1626, 112, 236, 97, 1622, 399, 78, - 79, 175, 133, 105, 80, 134, 106, 81, 107, 108, - 135, 82, 109, 177, 97, 110, 83, 84, 111, 124, - 137, 125, 112, 119, 97, 113, 114, 120, 138, 115, - 136, 126, 116, 121, 237, 228, 117, 232, 135, 118, - 139, 122, 238, 123, 232, 1288, 140, 124, 137, 125, - 141, 119, 1621, 113, 114, 120, 138, 115, 136, 126, - 116, 121, 127, 1289, 117, 232, 246, 118, 139, 122, - - 142, 123, 240, 128, 140, 147, 129, 143, 141, 130, - 148, 144, 402, 169, 247, 131, 1620, 124, 170, 125, - 127, 145, 403, 171, 246, 1616, 154, 146, 142, 126, - 155, 128, 1615, 147, 129, 143, 149, 130, 148, 144, - 156, 169, 247, 131, 150, 191, 170, 125, 157, 145, - 151, 171, 1418, 152, 154, 146, 153, 126, 155, 1614, - 135, 183, 248, 172, 149, 184, 1613, 173, 156, 249, - 1419, 164, 150, 174, 165, 185, 157, 166, 151, 1608, - 136, 152, 250, 1607, 153, 158, 1606, 167, 135, 127, - 248, 172, 159, 160, 168, 173, 196, 249, 161, 164, - - 128, 174, 165, 129, 162, 166, 130, 163, 136, 251, - 250, 105, 131, 158, 106, 167, 107, 192, 1337, 1338, - 159, 160, 168, 1605, 178, 178, 161, 252, 193, 1599, - 178, 194, 162, 1598, 130, 163, 132, 251, 1597, 105, - 131, 178, 106, 179, 107, 108, 133, 139, 109, 134, - 253, 110, 141, 140, 111, 252, 1596, 137, 112, 1595, - 178, 178, 178, 178, 132, 138, 178, 201, 178, 1594, - 1593, 256, 142, 108, 133, 139, 180, 195, 253, 181, - 203, 202, 111, 182, 204, 197, 112, 119, 143, 147, - 257, 120, 144, 198, 148, 1592, 1591, 121, 199, 256, - - 142, 200, 145, 258, 1583, 122, 259, 123, 146, 208, - 208, 1582, 208, 208, 266, 186, 143, 147, 257, 187, - 144, 1581, 206, 188, 154, 189, 1580, 269, 155, 1579, - 205, 258, 190, 122, 259, 123, 146, 149, 156, 172, - 267, 1578, 266, 173, 270, 150, 157, 1577, 268, 174, - 271, 151, 210, 178, 152, 269, 211, 153, 178, 226, - 226, 226, 226, 1576, 175, 207, 156, 223, 267, 178, - 1575, 173, 270, 150, 157, 212, 268, 224, 271, 151, - 208, 208, 209, 208, 208, 153, 1574, 213, 272, 1556, - 208, 208, 225, 208, 214, 215, 275, 216, 164, 1555, - - 76, 165, 254, 255, 166, 1554, 276, 226, 226, 226, - 226, 277, 1553, 1552, 167, 1551, 272, 169, 260, 261, - 262, 168, 170, 1550, 275, 278, 164, 171, 1549, 217, - 254, 255, 166, 273, 276, 77, 279, 274, 280, 277, - 208, 208, 218, 208, 208, 219, 260, 261, 262, 168, - 220, 78, 79, 278, 1548, 221, 80, 281, 222, 81, - 282, 273, 1547, 82, 279, 274, 280, 283, 83, 84, - 243, 243, 243, 243, 243, 243, 96, 284, 98, 98, - 98, 98, 98, 98, 263, 281, 289, 290, 282, 285, - 264, 291, 286, 287, 265, 283, 292, 288, 293, 294, - - 297, 295, 298, 299, 1546, 284, 302, 97, 296, 303, - 1545, 307, 263, 308, 289, 290, 300, 285, 264, 291, - 286, 287, 265, 313, 292, 288, 293, 294, 297, 295, - 298, 299, 301, 317, 302, 97, 296, 303, 304, 307, - 314, 308, 305, 309, 300, 310, 320, 322, 306, 318, - 311, 313, 323, 325, 326, 1544, 312, 315, 316, 1543, - 301, 317, 327, 319, 335, 321, 304, 336, 314, 324, - 305, 309, 328, 310, 320, 322, 306, 318, 311, 330, - 323, 325, 326, 329, 312, 315, 316, 332, 331, 340, - 327, 319, 335, 321, 341, 336, 337, 324, 343, 333, - - 328, 344, 338, 334, 345, 346, 339, 330, 1542, 342, - 250, 329, 254, 255, 1541, 332, 331, 340, 251, 347, - 347, 257, 341, 1521, 337, 347, 343, 333, 266, 344, - 338, 334, 345, 346, 339, 271, 347, 342, 349, 275, - 352, 255, 347, 347, 276, 277, 350, 263, 347, 353, - 260, 261, 262, 264, 267, 1520, 356, 265, 362, 347, - 1519, 1518, 268, 360, 1517, 290, 291, 361, 1516, 282, - 295, 299, 363, 364, 1515, 355, 317, 296, 260, 261, - 354, 264, 267, 347, 347, 265, 325, 300, 285, 347, - 358, 286, 287, 290, 373, 336, 288, 282, 295, 376, - - 347, 346, 372, 301, 381, 375, 378, 378, 304, 378, - 378, 308, 305, 1514, 385, 300, 285, 1513, 306, 366, - 287, 347, 347, 388, 367, 340, 368, 347, 309, 394, - 310, 301, 377, 323, 327, 311, 379, 337, 347, 308, - 305, 312, 1512, 338, 328, 390, 306, 339, 546, 546, - 324, 546, 546, 340, 332, 329, 309, 344, 310, 341, - 345, 323, 327, 311, 1511, 389, 333, 396, 396, 380, - 334, 338, 328, 409, 342, 339, 378, 378, 383, 378, - 378, 411, 332, 386, 412, 393, 413, 392, 345, 395, - 395, 395, 395, 414, 387, 396, 406, 415, 334, 416, - - 417, 409, 342, 243, 243, 243, 243, 243, 243, 411, - 418, 419, 412, 420, 413, 421, 422, 423, 424, 425, - 426, 414, 427, 428, 429, 415, 430, 416, 417, 431, - 432, 433, 434, 435, 436, 437, 438, 439, 418, 419, - 440, 420, 441, 421, 422, 423, 424, 425, 426, 442, - 427, 428, 429, 443, 430, 444, 445, 431, 432, 433, - 434, 435, 436, 437, 438, 439, 446, 447, 440, 448, - 441, 449, 450, 451, 452, 453, 454, 442, 456, 457, - 458, 443, 459, 444, 445, 455, 460, 461, 462, 463, - 464, 465, 466, 467, 446, 447, 468, 448, 469, 449, - - 450, 470, 471, 472, 473, 474, 456, 457, 458, 475, - 459, 476, 477, 455, 460, 461, 462, 463, 464, 465, - 466, 467, 478, 480, 468, 482, 469, 481, 483, 470, - 471, 472, 473, 474, 484, 485, 486, 475, 487, 476, - 477, 488, 489, 490, 493, 491, 494, 495, 496, 497, - 478, 480, 498, 482, 499, 481, 483, 492, 500, 501, - 502, 503, 484, 485, 486, 506, 487, 507, 508, 488, - 489, 490, 493, 491, 494, 495, 496, 497, 509, 510, - 498, 504, 499, 511, 512, 492, 500, 501, 502, 503, - 505, 513, 514, 506, 413, 507, 508, 515, 515, 414, - - 417, 420, 427, 515, 425, 426, 509, 510, 430, 504, - 432, 511, 512, 435, 515, 439, 440, 449, 505, 513, - 514, 462, 517, 451, 452, 453, 454, 518, 520, 521, - 524, 465, 522, 523, 470, 455, 525, 478, 527, 484, - 491, 529, 1510, 530, 532, 534, 540, 541, 542, 544, - 493, 497, 492, 501, 503, 504, 512, 514, 566, 465, - 566, 579, 547, 455, 505, 548, 580, 549, 491, 1509, - 458, 560, 561, 562, 565, 565, 565, 565, 553, 554, - 551, 555, 556, 557, 563, 564, 566, 581, 576, 579, - 586, 587, 505, 588, 580, 589, 590, 509, 458, 582, - - 583, 584, 585, 591, 592, 593, 596, 597, 594, 598, - 599, 600, 601, 602, 603, 581, 604, 605, 586, 587, - 595, 588, 606, 589, 590, 509, 607, 608, 609, 610, - 611, 591, 592, 593, 596, 597, 594, 598, 599, 600, - 601, 602, 603, 612, 604, 605, 613, 614, 595, 615, - 606, 616, 617, 618, 607, 608, 609, 610, 611, 619, - 620, 621, 622, 623, 624, 626, 627, 628, 629, 630, - 631, 612, 632, 633, 613, 614, 634, 615, 635, 616, - 617, 618, 625, 636, 637, 638, 639, 619, 620, 621, - 622, 623, 624, 626, 627, 628, 629, 630, 631, 640, - - 632, 633, 641, 642, 634, 643, 635, 644, 645, 646, - 625, 636, 637, 638, 639, 647, 648, 649, 650, 651, - 652, 653, 654, 655, 656, 658, 659, 640, 657, 660, - 641, 642, 661, 643, 662, 644, 645, 646, 663, 664, - 665, 666, 1508, 647, 648, 649, 650, 651, 652, 653, - 654, 655, 656, 658, 659, 667, 657, 660, 673, 674, - 661, 675, 662, 676, 677, 668, 663, 664, 665, 666, - 669, 670, 671, 672, 678, 679, 680, 681, 682, 582, - 583, 584, 585, 667, 586, 591, 673, 674, 598, 675, - 599, 676, 677, 668, 685, 686, 687, 596, 597, 602, - - 604, 609, 678, 679, 680, 681, 682, 693, 694, 695, - 610, 617, 684, 688, 630, 636, 690, 644, 691, 697, - 698, 699, 706, 707, 708, 689, 597, 692, 696, 700, - 650, 659, 660, 664, 669, 670, 671, 672, 701, 703, - 673, 682, 714, 716, 730, 717, 726, 727, 728, 730, - 740, 741, 742, 743, 744, 745, 746, 747, 718, 720, - 722, 723, 748, 749, 750, 751, 752, 753, 724, 729, - 755, 756, 730, 757, 758, 759, 760, 737, 740, 741, - 742, 743, 744, 745, 746, 747, 761, 762, 767, 768, - 748, 749, 750, 751, 752, 753, 769, 774, 755, 756, - - 775, 757, 758, 759, 760, 763, 764, 765, 766, 770, - 771, 772, 773, 776, 761, 762, 767, 768, 777, 778, - 779, 780, 797, 1507, 769, 774, 800, 801, 775, 781, - 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, - 792, 776, 793, 794, 795, 796, 777, 778, 779, 780, - 797, 798, 802, 803, 800, 801, 804, 805, 806, 807, - 808, 809, 811, 812, 813, 799, 814, 815, 816, 817, - 818, 819, 820, 821, 810, 822, 823, 824, 825, 798, - 802, 803, 826, 827, 804, 805, 806, 807, 808, 809, - 811, 812, 813, 799, 814, 815, 816, 817, 818, 819, - - 820, 821, 810, 822, 823, 824, 825, 828, 829, 830, - 826, 827, 831, 832, 833, 834, 835, 836, 837, 838, - 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, - 849, 850, 851, 750, 756, 828, 829, 830, 757, 760, - 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, - 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, - 851, 853, 854, 762, 805, 812, 855, 856, 770, 771, - 772, 773, 864, 865, 866, 867, 868, 869, 870, 871, - 872, 820, 826, 833, 834, 838, 846, 885, 885, 891, - 892, 860, 874, 875, 893, 894, 895, 896, 897, 898, - - 899, 900, 901, 902, 903, 904, 905, 910, 911, 876, - 877, 879, 881, 882, 883, 885, 889, 891, 892, 912, - 914, 915, 893, 906, 907, 908, 909, 916, 917, 918, - 919, 920, 921, 922, 927, 910, 911, 923, 924, 925, - 926, 928, 929, 930, 931, 932, 933, 912, 914, 915, - 934, 935, 936, 937, 938, 916, 917, 918, 919, 920, - 921, 922, 927, 939, 940, 941, 942, 943, 944, 928, - 929, 930, 931, 932, 933, 945, 946, 947, 934, 935, - 936, 937, 938, 948, 949, 950, 951, 952, 953, 954, - 955, 939, 940, 941, 942, 943, 944, 956, 957, 958, - - 959, 960, 961, 945, 946, 947, 962, 963, 964, 965, - 966, 948, 949, 950, 951, 952, 953, 954, 955, 967, - 968, 970, 971, 972, 973, 956, 957, 958, 959, 960, - 961, 974, 975, 976, 962, 963, 964, 965, 966, 977, - 978, 979, 980, 981, 994, 995, 998, 967, 968, 970, - 971, 972, 973, 982, 983, 984, 985, 999, 912, 974, - 975, 976, 986, 987, 988, 989, 996, 977, 990, 991, - 992, 993, 994, 995, 998, 918, 919, 921, 948, 997, - 1005, 1006, 1007, 955, 967, 999, 1001, 1008, 1009, 1010, - 1011, 1012, 1013, 970, 996, 923, 924, 925, 926, 974, - - 994, 1024, 1024, 1002, 1003, 1004, 1017, 997, 1028, 1029, - 1030, 955, 1019, 1031, 1032, 1018, 1033, 1034, 1036, 1037, - 1038, 970, 1039, 1040, 1041, 1042, 1035, 1021, 1022, 1043, - 1044, 1045, 1025, 1025, 1506, 1505, 1028, 1029, 1030, 1504, - 1503, 1031, 1032, 1502, 1033, 1034, 1036, 1037, 1038, 1477, - 1039, 1040, 1041, 1042, 1063, 1476, 1475, 1043, 1044, 1045, - 1025, 1025, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, - 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1064, 1065, - 1066, 1067, 1063, 1068, 1069, 1070, 1071, 1072, 1073, 1074, - 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, - - 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, - 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, - 1263, 1264, 1265, 1080, 1081, 1082, 1083, 1084, 1085, 1086, - 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, - 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, - 1107, 1111, 1112, 1113, 1114, 1474, 1115, 1120, 1108, 1116, - 1117, 1118, 1121, 1122, 1123, 1124, 1125, 1032, 1039, 1119, - 1088, 1473, 1472, 1471, 1109, 1470, 1024, 1469, 1140, 1111, - 1112, 1113, 1114, 1110, 1115, 1120, 1108, 1142, 1143, 1144, - 1121, 1122, 1123, 1124, 1125, 1127, 1128, 1119, 1131, 1133, - - 1134, 1135, 1109, 1116, 1117, 1118, 1140, 1025, 1468, 1108, - 1145, 1146, 1147, 1119, 1148, 1142, 1143, 1144, 1149, 1150, - 1151, 1152, 1153, 1170, 1171, 1109, 1154, 1155, 1156, 1157, - 1158, 1159, 1160, 1161, 1110, 1025, 1136, 1137, 1145, 1146, - 1147, 1119, 1148, 1172, 1173, 1174, 1149, 1150, 1151, 1152, - 1153, 1170, 1171, 1109, 1162, 1163, 1164, 1165, 1166, 1167, - 1168, 1169, 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, - 1183, 1172, 1173, 1174, 1184, 1185, 1186, 1187, 1188, 1189, - 1190, 1191, 1192, 1193, 1194, 1195, 1467, 1198, 1199, 1200, - 1175, 1176, 1177, 1178, 1179, 1180, 1181, 1182, 1183, 1201, - - 1202, 1203, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191, - 1192, 1193, 1194, 1195, 1196, 1198, 1199, 1200, 1204, 1205, - 1197, 1206, 1207, 1208, 1210, 1211, 1179, 1201, 1202, 1203, - 1214, 1215, 1216, 1193, 1194, 1195, 1232, 1196, 1227, 1228, - 1229, 1209, 1196, 1197, 1233, 1234, 1204, 1205, 1197, 1206, - 1207, 1208, 1210, 1211, 1219, 1235, 1236, 1237, 1238, 1239, - 1240, 1221, 1222, 1223, 1232, 1196, 1241, 1217, 1218, 1209, - 1242, 1225, 1233, 1234, 1243, 1230, 1231, 1244, 1245, 1246, - 1247, 1248, 1249, 1235, 1236, 1237, 1238, 1239, 1240, 1250, - 1251, 1252, 1253, 1254, 1241, 1255, 1256, 1257, 1242, 1258, - - 1259, 1260, 1243, 1261, 1262, 1244, 1245, 1246, 1247, 1248, - 1249, 1266, 1267, 1268, 1269, 1270, 1271, 1250, 1251, 1252, - 1253, 1254, 1272, 1255, 1256, 1257, 1274, 1258, 1259, 1260, - 1277, 1261, 1262, 1275, 1278, 1279, 1280, 1281, 1252, 1266, - 1267, 1268, 1269, 1270, 1271, 1276, 1466, 1465, 1267, 1302, - 1272, 1303, 1304, 1305, 1274, 1306, 1307, 1290, 1277, 1308, - 1309, 1275, 1278, 1279, 1280, 1281, 1287, 1310, 1311, 1291, - 1312, 1313, 1314, 1276, 1292, 1293, 1295, 1302, 1315, 1303, - 1304, 1305, 1316, 1306, 1307, 1317, 1318, 1308, 1309, 1319, - 1320, 1321, 1322, 1323, 1324, 1310, 1311, 1325, 1312, 1313, - - 1314, 1326, 1327, 1328, 1329, 1330, 1315, 1331, 1332, 1333, - 1316, 1335, 1336, 1317, 1318, 1339, 1340, 1319, 1320, 1321, - 1322, 1323, 1324, 1341, 1342, 1325, 1343, 1344, 1345, 1326, - 1327, 1328, 1329, 1330, 1346, 1331, 1332, 1333, 1317, 1335, - 1336, 1348, 1331, 1339, 1340, 1368, 1369, 1363, 1370, 1371, - 1372, 1341, 1342, 1349, 1343, 1344, 1345, 1373, 1350, 1364, - 1374, 1375, 1346, 1376, 1365, 1377, 1353, 1378, 1379, 1380, - 1361, 1381, 1382, 1368, 1369, 1383, 1370, 1371, 1372, 1384, - 1386, 1387, 1388, 1389, 1390, 1373, 1391, 1392, 1374, 1375, - 1393, 1376, 1394, 1377, 1395, 1378, 1379, 1380, 1396, 1381, - - 1382, 1397, 1398, 1383, 1399, 1400, 1401, 1384, 1386, 1387, - 1388, 1389, 1390, 1402, 1391, 1392, 1403, 1382, 1393, 1426, - 1394, 1427, 1395, 1428, 1429, 1430, 1396, 1431, 1432, 1397, - 1398, 1433, 1399, 1400, 1401, 1434, 1435, 1436, 1437, 1438, - 1439, 1402, 1440, 1441, 1403, 1410, 1442, 1426, 1443, 1427, - 1444, 1428, 1429, 1430, 1445, 1431, 1432, 1446, 1447, 1433, - 1448, 1449, 1450, 1434, 1435, 1436, 1437, 1438, 1439, 1451, - 1440, 1441, 1452, 1453, 1442, 1454, 1443, 1455, 1444, 1436, - 1478, 1479, 1445, 1480, 1481, 1446, 1447, 1482, 1448, 1449, - 1450, 1483, 1484, 1485, 1486, 1487, 1488, 1451, 1489, 1490, - - 1452, 1453, 1491, 1454, 1492, 1455, 1493, 1462, 1478, 1479, - 1494, 1480, 1481, 1495, 1496, 1482, 1497, 1498, 1499, 1483, - 1484, 1485, 1486, 1487, 1488, 1500, 1489, 1490, 1501, 1522, - 1491, 1523, 1492, 1524, 1493, 1525, 1526, 1527, 1494, 1528, - 1529, 1495, 1496, 1530, 1497, 1498, 1499, 1531, 1532, 1533, - 1534, 1535, 1536, 1500, 1537, 1538, 1501, 1522, 1539, 1523, - 1540, 1524, 1557, 1525, 1526, 1527, 1558, 1528, 1529, 1559, - 1560, 1530, 1561, 1562, 1563, 1531, 1532, 1533, 1534, 1535, - 1536, 1564, 1537, 1538, 1565, 1566, 1539, 1567, 1540, 1568, - 1557, 1569, 1570, 1571, 1558, 1572, 1573, 1559, 1560, 1584, - - 1561, 1562, 1563, 1585, 1586, 1587, 1588, 1589, 1590, 1564, - 1600, 1601, 1565, 1566, 1602, 1567, 1603, 1568, 1604, 1569, - 1570, 1571, 1609, 1572, 1573, 1610, 1611, 1584, 1612, 1617, - 1618, 1585, 1586, 1587, 1588, 1589, 1590, 1619, 1600, 1601, - 1623, 1624, 1602, 1625, 1603, 1627, 1604, 1628, 1629, 1631, - 1609, 1464, 1463, 1610, 1611, 1461, 1612, 1617, 1618, 1460, - 1459, 1458, 1457, 1456, 1425, 1619, 1424, 1423, 1623, 1624, - 1422, 1625, 1421, 1627, 1420, 1628, 1629, 1631, 69, 69, - 69, 69, 72, 72, 72, 72, 229, 1417, 1416, 229, - 231, 1415, 231, 231, 1141, 1414, 1141, 1141, 1413, 1412, - - 1411, 1409, 1408, 1407, 1406, 1405, 1404, 1385, 1367, 1366, - 1362, 1360, 1359, 1358, 1357, 1356, 1355, 1354, 1352, 1351, - 1347, 1334, 1301, 1300, 1299, 1298, 1297, 1296, 1294, 1286, - 1285, 1284, 1283, 1282, 1273, 1226, 1224, 1220, 1213, 1212, - 1139, 1138, 1132, 1130, 1129, 1126, 1062, 1027, 1026, 1023, - 1020, 1016, 1015, 1014, 1000, 969, 913, 890, 888, 887, - 886, 884, 880, 878, 873, 863, 862, 861, 859, 858, - 857, 754, 852, 754, 739, 738, 736, 735, 734, 733, - 732, 731, 725, 721, 719, 715, 713, 712, 711, 710, - 709, 705, 704, 702, 683, 578, 577, 575, 574, 573, - - 572, 571, 570, 569, 568, 567, 559, 558, 552, 550, - 545, 543, 539, 538, 537, 536, 535, 533, 531, 528, - 526, 519, 516, 479, 410, 408, 407, 405, 404, 401, - 400, 397, 391, 384, 382, 374, 371, 370, 369, 365, - 359, 357, 351, 348, 245, 244, 242, 241, 239, 233, - 74, 230, 101, 88, 85, 75, 74, 1632, 73, 73, - 7, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632 + 8, 9, 10, 9, 11, 12, 13, 14, 15, 16, + 17, 8, 18, 19, 20, 20, 20, 20, 20, 21, + 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, + 32, 33, 33, 34, 35, 36, 37, 38, 33, 39, + 40, 41, 42, 43, 44, 33, 33, 33, 45, 33, + 46, 47, 48, 49, 50, 51, 52, 53, 54, 33, + 33, 55, 56, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 67, 67, 68, 70, 70, 74, + 76, 74, 85, 71, 71, 88, 92, 90, 95, 103, + 93, 98, 99, 101, 102, 86, 89, 91, 94, 95, + + 1624, 97, 97, 97, 97, 97, 97, 174, 104, 227, + 136, 105, 182, 106, 107, 131, 183, 108, 137, 96, + 109, 236, 74, 110, 74, 132, 184, 111, 133, 237, + 96, 1620, 77, 78, 175, 174, 104, 79, 136, 105, + 80, 106, 107, 131, 81, 108, 137, 96, 109, 82, + 83, 110, 123, 132, 124, 111, 133, 118, 96, 112, + 113, 119, 176, 114, 125, 228, 115, 120, 1332, 1333, + 116, 397, 138, 117, 1616, 121, 401, 122, 139, 126, + 123, 398, 124, 245, 134, 118, 402, 112, 113, 119, + 127, 114, 125, 128, 115, 120, 129, 140, 116, 134, + + 138, 117, 130, 121, 135, 122, 139, 126, 246, 142, + 146, 245, 134, 143, 148, 147, 1615, 141, 127, 135, + 1614, 128, 149, 144, 129, 140, 1610, 134, 150, 145, + 130, 151, 135, 138, 152, 195, 246, 142, 146, 139, + 1609, 143, 148, 147, 153, 141, 247, 135, 154, 248, + 149, 144, 123, 200, 124, 1608, 150, 145, 155, 151, + 1607, 138, 152, 1602, 125, 163, 156, 201, 164, 1601, + 1600, 165, 153, 168, 247, 1599, 154, 248, 169, 1593, + 190, 166, 124, 170, 1592, 146, 155, 171, 167, 1591, + 147, 172, 125, 163, 156, 157, 164, 173, 233, 165, + + 234, 168, 158, 159, 235, 1590, 169, 104, 160, 166, + 105, 170, 106, 146, 161, 171, 167, 162, 205, 172, + 177, 177, 1589, 157, 1588, 173, 177, 1587, 249, 250, + 158, 159, 251, 140, 1586, 104, 160, 177, 105, 178, + 106, 1585, 161, 1577, 252, 162, 107, 255, 1284, 108, + 136, 1576, 109, 141, 256, 110, 249, 250, 137, 111, + 251, 202, 126, 177, 177, 203, 1285, 207, 207, 177, + 207, 207, 252, 127, 107, 255, 128, 179, 196, 129, + 180, 141, 256, 110, 181, 130, 197, 111, 118, 142, + 191, 198, 119, 143, 199, 684, 685, 686, 120, 257, + + 1412, 192, 258, 144, 193, 1575, 121, 129, 122, 145, + 692, 693, 694, 130, 1574, 131, 185, 142, 1413, 1573, + 186, 143, 253, 254, 187, 132, 188, 257, 133, 1572, + 258, 204, 1571, 189, 121, 1570, 122, 145, 153, 177, + 177, 265, 154, 131, 1569, 177, 226, 226, 226, 226, + 253, 254, 155, 132, 168, 1568, 194, 148, 268, 169, + 156, 259, 260, 261, 170, 149, 209, 177, 269, 265, + 210, 150, 177, 1550, 151, 1549, 1548, 152, 1547, 270, + 155, 1546, 218, 177, 1545, 206, 268, 219, 156, 259, + 260, 261, 220, 149, 211, 221, 269, 271, 1544, 150, + + 207, 207, 208, 207, 207, 152, 212, 270, 274, 207, + 207, 171, 207, 213, 214, 172, 215, 163, 275, 276, + 164, 173, 76, 165, 1543, 271, 174, 242, 242, 242, + 242, 242, 242, 166, 1542, 222, 274, 277, 278, 223, + 167, 1343, 1541, 172, 1540, 163, 275, 276, 216, 224, + 279, 165, 272, 1344, 225, 1539, 273, 280, 1345, 207, + 207, 217, 207, 207, 1538, 277, 278, 1537, 167, 226, + 226, 226, 226, 266, 77, 78, 281, 262, 279, 79, + 272, 267, 80, 263, 273, 280, 81, 264, 282, 283, + 1536, 82, 83, 95, 288, 97, 97, 97, 97, 97, + + 97, 266, 289, 290, 281, 262, 291, 292, 293, 267, + 284, 263, 294, 285, 286, 264, 282, 283, 287, 295, + 296, 297, 288, 298, 96, 301, 302, 299, 306, 303, + 289, 290, 307, 304, 291, 292, 293, 312, 284, 305, + 294, 285, 286, 300, 316, 321, 287, 295, 296, 297, + 324, 298, 96, 301, 302, 299, 306, 303, 325, 313, + 307, 304, 308, 319, 309, 312, 317, 305, 322, 310, + 329, 300, 316, 321, 326, 311, 314, 315, 324, 330, + 318, 334, 320, 1535, 327, 323, 325, 313, 335, 339, + 308, 319, 309, 1515, 317, 328, 322, 310, 329, 331, + + 342, 345, 326, 311, 314, 315, 340, 330, 318, 334, + 320, 332, 327, 323, 336, 333, 335, 339, 1514, 343, + 337, 341, 344, 328, 338, 249, 1513, 331, 342, 345, + 250, 256, 1512, 265, 340, 253, 254, 1511, 1510, 332, + 346, 346, 336, 333, 1509, 270, 346, 343, 337, 341, + 344, 274, 338, 348, 346, 346, 275, 346, 349, 352, + 346, 355, 262, 351, 254, 259, 260, 261, 263, 266, + 361, 346, 264, 359, 276, 514, 514, 267, 290, 360, + 1508, 514, 298, 284, 362, 289, 285, 286, 316, 281, + 354, 287, 514, 259, 260, 353, 263, 266, 324, 1507, + + 264, 294, 363, 346, 346, 357, 372, 299, 295, 346, + 375, 284, 1506, 289, 365, 286, 380, 281, 335, 366, + 346, 367, 371, 300, 377, 377, 384, 377, 377, 294, + 303, 1505, 307, 331, 304, 299, 374, 308, 322, 309, + 305, 1504, 346, 346, 310, 332, 387, 345, 346, 333, + 311, 300, 376, 545, 545, 323, 545, 545, 378, 346, + 307, 331, 304, 1503, 336, 308, 322, 309, 305, 326, + 337, 339, 310, 386, 338, 394, 1502, 333, 379, 327, + 340, 377, 377, 382, 377, 377, 343, 408, 410, 344, + 328, 389, 388, 411, 412, 341, 1501, 326, 337, 339, + + 1500, 1499, 338, 395, 395, 395, 395, 327, 392, 413, + 414, 415, 416, 417, 393, 408, 410, 344, 385, 418, + 419, 411, 412, 341, 242, 242, 242, 242, 242, 242, + 420, 421, 422, 423, 424, 425, 426, 413, 414, 415, + 416, 417, 427, 428, 429, 430, 431, 418, 419, 432, + 433, 434, 435, 436, 437, 438, 439, 440, 420, 421, + 422, 423, 424, 425, 426, 441, 442, 443, 444, 445, + 427, 428, 429, 430, 431, 446, 447, 432, 433, 434, + 435, 436, 437, 438, 439, 440, 448, 449, 450, 451, + 452, 453, 455, 441, 442, 443, 444, 445, 456, 457, + + 454, 458, 459, 446, 447, 460, 461, 462, 463, 464, + 465, 466, 467, 468, 448, 449, 469, 470, 471, 472, + 455, 473, 474, 475, 476, 477, 456, 457, 454, 458, + 459, 481, 482, 460, 461, 462, 463, 464, 465, 466, + 467, 468, 483, 484, 469, 470, 471, 472, 485, 473, + 474, 475, 476, 477, 479, 486, 487, 488, 480, 481, + 482, 489, 490, 492, 493, 494, 495, 496, 497, 498, + 483, 484, 499, 500, 491, 501, 485, 502, 503, 505, + 506, 507, 479, 486, 487, 488, 480, 504, 508, 489, + 490, 492, 493, 494, 495, 496, 497, 498, 509, 510, + + 499, 500, 491, 501, 511, 502, 503, 505, 506, 507, + 512, 513, 412, 413, 416, 504, 508, 419, 424, 425, + 426, 429, 431, 434, 438, 439, 509, 510, 448, 696, + 697, 698, 511, 705, 706, 707, 461, 464, 512, 513, + 516, 517, 519, 469, 477, 520, 521, 522, 523, 524, + 526, 528, 529, 531, 483, 490, 533, 450, 451, 452, + 453, 539, 540, 541, 543, 464, 492, 491, 496, 454, + 500, 546, 547, 502, 1498, 503, 560, 561, 562, 511, + 513, 578, 548, 490, 504, 457, 565, 565, 565, 565, + 579, 580, 585, 586, 552, 550, 553, 454, 554, 587, + + 588, 555, 508, 556, 589, 590, 591, 563, 564, 578, + 592, 593, 504, 457, 581, 582, 583, 584, 579, 580, + 585, 586, 597, 594, 595, 596, 598, 587, 588, 599, + 508, 600, 589, 590, 591, 601, 602, 603, 592, 593, + 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, + 597, 594, 595, 596, 598, 614, 615, 599, 616, 600, + 617, 618, 619, 601, 602, 603, 620, 621, 604, 605, + 606, 607, 608, 609, 610, 611, 612, 613, 622, 623, + 625, 626, 627, 614, 615, 628, 616, 629, 617, 618, + 619, 630, 631, 632, 620, 621, 633, 624, 634, 635, + + 636, 637, 638, 639, 640, 641, 622, 623, 625, 626, + 627, 642, 643, 628, 644, 629, 645, 646, 647, 630, + 631, 632, 648, 649, 633, 624, 634, 635, 636, 637, + 638, 639, 640, 641, 650, 651, 652, 653, 654, 642, + 643, 657, 644, 655, 645, 646, 647, 656, 658, 659, + 648, 649, 660, 661, 662, 663, 664, 665, 666, 725, + 726, 727, 650, 651, 652, 653, 654, 672, 667, 657, + 673, 655, 674, 675, 676, 656, 658, 659, 677, 678, + 660, 661, 662, 663, 664, 665, 666, 668, 669, 670, + 671, 679, 680, 681, 585, 672, 667, 590, 673, 597, + + 674, 675, 676, 595, 596, 598, 677, 678, 581, 582, + 583, 584, 601, 603, 608, 609, 616, 629, 635, 679, + 680, 681, 683, 643, 649, 687, 658, 689, 659, 663, + 672, 688, 596, 690, 668, 669, 670, 671, 681, 739, + 691, 695, 699, 700, 702, 713, 715, 740, 741, 742, + 743, 716, 717, 744, 719, 745, 721, 722, 723, 746, + 747, 748, 749, 750, 751, 752, 729, 739, 754, 755, + 756, 757, 758, 759, 760, 740, 741, 742, 743, 761, + 766, 744, 767, 745, 768, 1497, 1496, 746, 747, 748, + 749, 750, 751, 752, 773, 774, 754, 755, 756, 757, + + 758, 759, 760, 762, 763, 764, 765, 761, 766, 775, + 767, 776, 768, 769, 770, 771, 772, 777, 778, 779, + 796, 799, 773, 774, 780, 781, 782, 783, 784, 785, + 786, 787, 788, 789, 790, 791, 797, 775, 800, 776, + 792, 793, 794, 795, 801, 777, 778, 779, 796, 799, + 798, 802, 803, 804, 805, 806, 807, 808, 810, 811, + 812, 813, 814, 815, 797, 816, 800, 817, 818, 819, + 809, 820, 801, 821, 822, 823, 824, 825, 798, 802, + 803, 804, 805, 806, 807, 808, 810, 811, 812, 813, + 814, 815, 826, 816, 827, 817, 818, 819, 809, 820, + + 828, 821, 822, 823, 824, 825, 829, 830, 831, 832, + 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, + 826, 843, 827, 844, 845, 846, 847, 848, 828, 849, + 850, 749, 755, 756, 829, 830, 831, 832, 833, 834, + 835, 836, 837, 838, 839, 840, 841, 842, 759, 843, + 761, 844, 845, 846, 847, 848, 804, 849, 850, 852, + 853, 854, 769, 770, 771, 772, 863, 864, 865, 866, + 867, 868, 869, 870, 871, 811, 855, 819, 859, 825, + 832, 833, 837, 845, 873, 890, 891, 892, 893, 894, + 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, + + 909, 910, 911, 874, 913, 875, 914, 876, 878, 880, + 881, 882, 915, 890, 891, 892, 905, 906, 907, 908, + 916, 917, 918, 919, 920, 921, 926, 927, 909, 910, + 911, 928, 913, 929, 914, 922, 923, 924, 925, 930, + 915, 931, 932, 933, 934, 935, 936, 937, 916, 917, + 918, 919, 920, 921, 926, 927, 938, 939, 940, 928, + 941, 929, 942, 943, 944, 945, 946, 930, 947, 931, + 932, 933, 934, 935, 936, 937, 948, 949, 950, 951, + 952, 953, 954, 955, 938, 939, 940, 956, 941, 957, + 942, 943, 944, 945, 946, 958, 947, 959, 960, 961, + + 962, 963, 964, 965, 948, 949, 950, 951, 952, 953, + 954, 955, 966, 967, 969, 956, 970, 957, 971, 972, + 973, 974, 975, 958, 976, 959, 960, 961, 962, 963, + 964, 965, 977, 978, 979, 980, 981, 982, 983, 984, + 966, 967, 969, 993, 970, 994, 971, 972, 973, 974, + 975, 995, 976, 985, 986, 987, 988, 989, 990, 991, + 992, 997, 998, 911, 996, 917, 918, 920, 1004, 1005, + 1006, 993, 947, 994, 1007, 1008, 1009, 954, 966, 995, + 1010, 1011, 1012, 922, 923, 924, 925, 969, 973, 997, + 998, 1000, 996, 1001, 1002, 1003, 993, 1026, 1027, 1028, + + 1016, 1029, 1030, 1031, 1032, 954, 1018, 1034, 1035, 1017, + 1036, 1037, 1038, 1033, 1039, 969, 1020, 1040, 1041, 1042, + 1043, 1259, 1260, 1261, 1021, 1026, 1027, 1028, 1471, 1029, + 1030, 1031, 1032, 1470, 1469, 1034, 1035, 1061, 1036, 1037, + 1038, 1468, 1039, 1467, 1466, 1040, 1041, 1042, 1043, 1044, + 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, + 1055, 1056, 1057, 1058, 1059, 1061, 1062, 1063, 1064, 1065, + 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, + 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, + 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, + + 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1465, 1464, 1463, + 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, + 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, + 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1109, 1110, + 1111, 1112, 1462, 1113, 1118, 1106, 1114, 1115, 1116, 1119, + 1120, 1121, 1122, 1123, 1030, 1037, 1117, 1086, 1461, 1460, + 1459, 1107, 1458, 1457, 1455, 1139, 1109, 1110, 1111, 1112, + 1108, 1113, 1118, 1106, 1140, 1141, 1142, 1119, 1120, 1121, + 1122, 1123, 1125, 1126, 1117, 1129, 1131, 1132, 1133, 1107, + 1114, 1115, 1116, 1139, 1143, 1454, 1106, 1144, 1145, 1146, + + 1117, 1147, 1140, 1141, 1142, 1148, 1149, 1150, 1151, 1152, + 1153, 1154, 1107, 1155, 1156, 1157, 1158, 1159, 1160, 1161, + 1162, 1108, 1143, 1134, 1135, 1144, 1145, 1146, 1117, 1147, + 1167, 1168, 1169, 1148, 1149, 1150, 1163, 1164, 1165, 1166, + 1107, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, + 1179, 1180, 1181, 1182, 1183, 1184, 1185, 1186, 1167, 1168, + 1169, 1187, 1188, 1189, 1190, 1191, 1192, 1453, 1195, 1170, + 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, + 1181, 1182, 1183, 1184, 1185, 1186, 1196, 1197, 1198, 1187, + 1188, 1189, 1190, 1191, 1192, 1193, 1195, 1199, 1200, 1201, + + 1202, 1194, 1203, 1204, 1205, 1207, 1208, 1211, 1212, 1213, + 1176, 1190, 1191, 1192, 1196, 1197, 1198, 1452, 1193, 1224, + 1225, 1226, 1206, 1193, 1194, 1199, 1200, 1201, 1202, 1194, + 1203, 1204, 1205, 1207, 1208, 1229, 1230, 1231, 1216, 1218, + 1219, 1220, 1232, 1233, 1214, 1215, 1193, 1234, 1235, 1236, + 1206, 1237, 1222, 1238, 1239, 1240, 1227, 1228, 1241, 1242, + 1243, 1244, 1245, 1229, 1230, 1231, 1246, 1247, 1248, 1249, + 1232, 1233, 1250, 1251, 1252, 1234, 1235, 1236, 1253, 1237, + 1254, 1238, 1239, 1240, 1255, 1256, 1241, 1242, 1243, 1244, + 1245, 1257, 1258, 1262, 1246, 1247, 1248, 1249, 1263, 1264, + + 1250, 1251, 1252, 1265, 1266, 1267, 1253, 1268, 1254, 1270, + 1271, 1273, 1255, 1256, 1274, 1275, 1276, 1277, 1248, 1257, + 1258, 1262, 1272, 1263, 1298, 1451, 1263, 1264, 1299, 1300, + 1301, 1265, 1266, 1267, 1302, 1268, 1286, 1270, 1271, 1273, + 1303, 1304, 1274, 1275, 1276, 1277, 1283, 1305, 1287, 1306, + 1272, 1291, 1298, 1288, 1289, 1307, 1299, 1300, 1301, 1308, + 1309, 1310, 1302, 1311, 1312, 1313, 1314, 1315, 1303, 1304, + 1316, 1317, 1318, 1319, 1320, 1305, 1321, 1306, 1322, 1323, + 1324, 1325, 1326, 1307, 1327, 1328, 1330, 1308, 1309, 1310, + 1331, 1311, 1312, 1313, 1314, 1315, 1334, 1335, 1316, 1317, + + 1318, 1319, 1320, 1336, 1321, 1337, 1322, 1323, 1324, 1325, + 1326, 1338, 1327, 1328, 1330, 1339, 1340, 1341, 1331, 1312, + 1326, 1363, 1364, 1358, 1334, 1335, 1365, 1366, 1367, 1368, + 1369, 1336, 1370, 1337, 1371, 1359, 1372, 1373, 1374, 1338, + 1360, 1375, 1376, 1339, 1340, 1341, 1377, 1348, 1356, 1363, + 1364, 1378, 1380, 1381, 1365, 1366, 1367, 1368, 1369, 1382, + 1370, 1383, 1371, 1384, 1372, 1373, 1374, 1385, 1386, 1375, + 1376, 1387, 1388, 1389, 1377, 1390, 1391, 1392, 1393, 1378, + 1380, 1381, 1394, 1395, 1396, 1397, 1376, 1382, 1420, 1383, + 1421, 1384, 1422, 1423, 1424, 1385, 1386, 1425, 1450, 1387, + + 1388, 1389, 1428, 1390, 1391, 1392, 1393, 1429, 1430, 1431, + 1394, 1395, 1396, 1397, 1404, 1432, 1420, 1433, 1421, 1434, + 1422, 1423, 1424, 1426, 1435, 1425, 1427, 1436, 1437, 1438, + 1428, 1439, 1440, 1441, 1442, 1429, 1430, 1431, 1443, 1444, + 1445, 1446, 1447, 1432, 1448, 1433, 1449, 1434, 1430, 1472, + 1473, 1426, 1435, 1474, 1427, 1436, 1437, 1438, 1475, 1439, + 1440, 1441, 1442, 1476, 1477, 1478, 1443, 1444, 1445, 1446, + 1447, 1479, 1448, 1480, 1449, 1481, 1456, 1472, 1473, 1482, + 1483, 1474, 1484, 1485, 1486, 1487, 1475, 1488, 1489, 1490, + 1491, 1476, 1477, 1478, 1492, 1493, 1494, 1495, 1516, 1479, + + 1517, 1480, 1518, 1481, 1519, 1520, 1521, 1482, 1483, 1522, + 1484, 1485, 1486, 1487, 1523, 1488, 1489, 1490, 1491, 1524, + 1525, 1526, 1492, 1493, 1494, 1495, 1516, 1527, 1517, 1528, + 1518, 1529, 1519, 1520, 1521, 1530, 1531, 1522, 1532, 1533, + 1534, 1551, 1523, 1552, 1553, 1554, 1555, 1524, 1525, 1526, + 1556, 1557, 1558, 1559, 1560, 1527, 1561, 1528, 1562, 1529, + 1563, 1564, 1565, 1530, 1531, 1566, 1532, 1533, 1534, 1551, + 1567, 1552, 1553, 1554, 1555, 1578, 1579, 1580, 1556, 1557, + 1558, 1559, 1560, 1581, 1561, 1582, 1562, 1583, 1563, 1564, + 1565, 1584, 1594, 1566, 1595, 1596, 1597, 1598, 1567, 1603, + + 1604, 1605, 1606, 1578, 1579, 1580, 1611, 1612, 1613, 1617, + 1618, 1581, 1619, 1582, 1621, 1583, 1622, 1623, 1625, 1584, + 1594, 1419, 1595, 1596, 1597, 1598, 1418, 1603, 1604, 1605, + 1606, 1417, 1416, 1415, 1611, 1612, 1613, 1617, 1618, 1414, + 1619, 1411, 1621, 1410, 1622, 1623, 1625, 69, 69, 69, + 69, 72, 72, 72, 72, 229, 1409, 1408, 229, 231, + 1407, 231, 231, 1138, 1406, 1138, 1138, 1405, 1403, 1402, + 1401, 1400, 1399, 1398, 1379, 1362, 1361, 1357, 1355, 1354, + 1353, 1352, 1351, 1350, 1349, 1347, 1346, 1342, 1329, 1297, + 1296, 1295, 1294, 1293, 1292, 1290, 1282, 1281, 1280, 1279, + + 1278, 1269, 1223, 1221, 1217, 1210, 1209, 1137, 1136, 1130, + 1128, 1127, 1124, 1060, 1025, 1024, 1023, 1022, 1019, 1015, + 1014, 1013, 999, 968, 912, 889, 888, 887, 886, 885, + 884, 883, 879, 877, 872, 862, 861, 860, 858, 857, + 856, 753, 851, 753, 738, 737, 736, 735, 734, 733, + 732, 731, 730, 728, 724, 720, 718, 714, 712, 711, + 710, 709, 708, 704, 703, 701, 682, 577, 576, 575, + 574, 573, 572, 571, 570, 569, 568, 567, 566, 559, + 558, 557, 551, 549, 544, 542, 538, 537, 536, 535, + 534, 532, 530, 527, 525, 518, 515, 478, 409, 407, + + 406, 405, 404, 403, 400, 399, 396, 391, 390, 383, + 381, 373, 370, 369, 368, 364, 358, 356, 350, 347, + 244, 243, 241, 240, 239, 238, 232, 230, 100, 87, + 84, 75, 1626, 73, 73, 7, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626 } ; -static yyconst flex_int16_t yy_chk[3038] = +static yyconst flex_int16_t yy_chk[3014] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1282,333 +1279,331 @@ static yyconst flex_int16_t yy_chk[3038] = 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 3, 4, 12, 14, - 16, 3, 4, 17, 18, 19, 21, 21, 18, 23, - 23, 16, 14, 17, 30, 20, 18, 20, 20, 20, - - 20, 20, 20, 44, 30, 24, 1635, 30, 24, 68, - 24, 25, 1626, 12, 25, 45, 19, 25, 234, 79, - 25, 79, 30, 1622, 25, 79, 20, 1616, 234, 12, - 12, 44, 30, 24, 12, 30, 24, 12, 24, 25, - 31, 12, 25, 45, 19, 25, 12, 12, 25, 28, - 32, 28, 25, 27, 20, 26, 26, 27, 32, 26, - 31, 28, 26, 27, 80, 68, 26, 77, 31, 26, - 34, 27, 80, 27, 82, 1221, 34, 28, 32, 28, - 35, 27, 1614, 26, 26, 27, 32, 26, 31, 28, - 26, 27, 29, 1221, 26, 77, 105, 26, 34, 27, - - 35, 27, 82, 29, 34, 37, 29, 36, 35, 29, - 37, 36, 237, 42, 106, 29, 1613, 50, 42, 50, - 29, 36, 237, 42, 105, 1608, 39, 36, 35, 50, - 39, 29, 1607, 37, 29, 36, 38, 29, 37, 36, - 39, 42, 106, 29, 38, 50, 42, 50, 39, 36, - 38, 42, 1361, 38, 39, 36, 38, 50, 39, 1606, - 53, 48, 107, 43, 38, 48, 1605, 43, 39, 108, - 1361, 41, 38, 43, 41, 48, 39, 41, 38, 1596, - 53, 38, 109, 1595, 38, 40, 1594, 41, 53, 51, - 107, 43, 40, 40, 41, 43, 53, 108, 40, 41, - - 51, 43, 41, 51, 40, 41, 51, 40, 53, 110, - 109, 46, 51, 40, 46, 41, 46, 51, 1273, 1273, - 40, 40, 41, 1593, 46, 46, 40, 111, 51, 1583, - 46, 51, 40, 1582, 51, 40, 52, 110, 1581, 46, - 51, 46, 46, 46, 46, 47, 52, 55, 47, 52, - 112, 47, 56, 55, 47, 111, 1580, 54, 47, 1579, - 52, 52, 47, 47, 52, 54, 52, 55, 47, 1577, - 1576, 114, 56, 47, 52, 55, 47, 52, 112, 47, - 56, 55, 47, 47, 56, 54, 47, 49, 57, 58, - 115, 49, 57, 54, 58, 1575, 1574, 49, 54, 114, - - 56, 54, 57, 116, 1556, 49, 117, 49, 57, 60, - 60, 1555, 60, 60, 120, 49, 57, 58, 115, 49, - 57, 1552, 58, 49, 61, 49, 1551, 122, 61, 1549, - 57, 116, 49, 49, 117, 49, 57, 59, 61, 65, - 121, 1548, 120, 65, 123, 59, 61, 1547, 121, 65, - 124, 59, 61, 61, 59, 122, 61, 59, 61, 67, - 67, 67, 67, 1545, 66, 59, 61, 65, 121, 61, - 1544, 65, 123, 59, 61, 62, 121, 65, 124, 59, - 59, 59, 59, 59, 59, 59, 1543, 62, 125, 1521, - 62, 62, 66, 62, 62, 62, 127, 62, 63, 1518, - - 76, 63, 113, 113, 63, 1517, 128, 66, 66, 66, - 66, 129, 1516, 1515, 63, 1514, 125, 64, 118, 118, - 118, 63, 64, 1513, 127, 130, 63, 64, 1512, 63, - 113, 113, 63, 126, 128, 76, 131, 126, 132, 129, - 63, 63, 63, 63, 63, 64, 118, 118, 118, 63, - 64, 76, 76, 130, 1511, 64, 76, 133, 64, 76, - 134, 126, 1510, 76, 131, 126, 132, 135, 76, 76, - 96, 96, 96, 96, 96, 96, 98, 136, 98, 98, - 98, 98, 98, 98, 119, 133, 139, 140, 134, 138, - 119, 141, 138, 138, 119, 135, 142, 138, 143, 144, - - 146, 145, 147, 148, 1509, 136, 150, 98, 145, 151, - 1508, 153, 119, 154, 139, 140, 149, 138, 119, 141, - 138, 138, 119, 156, 142, 138, 143, 144, 146, 145, - 147, 148, 149, 158, 150, 98, 145, 151, 152, 153, - 157, 154, 152, 155, 149, 155, 160, 161, 152, 159, - 155, 156, 162, 163, 164, 1507, 155, 157, 157, 1504, - 149, 158, 165, 159, 168, 160, 152, 169, 157, 162, - 152, 155, 165, 155, 160, 161, 152, 159, 155, 166, - 162, 163, 164, 165, 155, 157, 157, 167, 166, 171, - 165, 159, 168, 160, 172, 169, 170, 162, 173, 167, - - 165, 174, 170, 167, 174, 175, 170, 166, 1503, 172, - 180, 165, 183, 183, 1502, 167, 166, 171, 181, 178, - 178, 184, 172, 1477, 170, 178, 173, 167, 187, 174, - 170, 167, 174, 175, 170, 191, 178, 172, 180, 192, - 183, 183, 181, 181, 193, 194, 181, 186, 181, 184, - 185, 185, 185, 186, 189, 1476, 187, 186, 193, 181, - 1475, 1474, 189, 191, 1473, 202, 203, 192, 1472, 195, - 205, 206, 193, 194, 1471, 186, 212, 205, 185, 185, - 185, 186, 189, 195, 195, 186, 216, 207, 198, 195, - 189, 198, 198, 202, 203, 219, 198, 195, 205, 206, - - 195, 225, 202, 207, 212, 205, 208, 208, 209, 208, - 208, 210, 209, 1470, 216, 207, 198, 1468, 209, 198, - 198, 210, 210, 219, 198, 221, 198, 210, 211, 225, - 211, 207, 207, 214, 217, 211, 209, 220, 210, 210, - 209, 211, 1467, 220, 217, 221, 209, 220, 378, 378, - 214, 378, 378, 221, 218, 217, 211, 224, 211, 223, - 224, 214, 217, 211, 1466, 220, 218, 232, 240, 211, - 218, 220, 217, 246, 223, 220, 214, 214, 214, 214, - 214, 248, 218, 217, 249, 224, 250, 223, 224, 226, - 226, 226, 226, 251, 218, 232, 240, 252, 218, 253, - - 254, 246, 223, 243, 243, 243, 243, 243, 243, 248, - 255, 256, 249, 257, 250, 258, 259, 260, 261, 262, - 262, 251, 263, 264, 265, 252, 266, 253, 254, 267, - 268, 269, 270, 271, 272, 273, 274, 275, 255, 256, - 276, 257, 278, 258, 259, 260, 261, 262, 262, 279, - 263, 264, 265, 280, 266, 281, 282, 267, 268, 269, - 270, 271, 272, 273, 274, 275, 283, 284, 276, 285, - 278, 286, 287, 288, 288, 288, 288, 279, 289, 290, - 291, 280, 292, 281, 282, 288, 293, 295, 296, 297, - 298, 299, 300, 301, 283, 284, 302, 285, 303, 286, - - 287, 304, 305, 306, 307, 308, 289, 290, 291, 309, - 292, 310, 311, 288, 293, 295, 296, 297, 298, 299, - 300, 301, 312, 314, 302, 315, 303, 314, 316, 304, - 305, 306, 307, 308, 317, 318, 319, 309, 320, 310, - 311, 321, 322, 323, 325, 324, 326, 327, 328, 329, - 312, 314, 330, 315, 331, 314, 316, 324, 332, 333, - 335, 336, 317, 318, 319, 338, 320, 339, 340, 321, - 322, 323, 325, 324, 326, 327, 328, 329, 341, 342, - 330, 337, 331, 343, 344, 324, 332, 333, 335, 336, - 337, 345, 346, 338, 349, 339, 340, 347, 347, 350, - - 352, 353, 355, 347, 354, 354, 341, 342, 356, 337, - 358, 343, 344, 360, 347, 361, 363, 366, 337, 345, - 346, 375, 349, 367, 367, 367, 367, 350, 352, 353, - 355, 376, 354, 354, 379, 367, 356, 380, 358, 381, - 383, 360, 1465, 361, 363, 366, 373, 373, 373, 375, - 385, 386, 383, 387, 388, 389, 393, 394, 396, 376, - 406, 409, 379, 367, 389, 380, 410, 381, 383, 1464, - 373, 392, 392, 392, 395, 395, 395, 395, 385, 386, - 383, 387, 388, 389, 393, 394, 396, 412, 406, 409, - 414, 415, 389, 416, 410, 418, 419, 392, 373, 413, - - 413, 413, 413, 420, 422, 423, 425, 425, 424, 426, - 427, 428, 429, 430, 431, 412, 432, 433, 414, 415, - 424, 416, 434, 418, 419, 392, 437, 438, 439, 440, - 441, 420, 422, 423, 425, 425, 424, 426, 427, 428, - 429, 430, 431, 442, 432, 433, 443, 445, 424, 447, - 434, 448, 449, 450, 437, 438, 439, 440, 441, 451, - 452, 453, 454, 455, 456, 458, 459, 460, 461, 462, - 464, 442, 465, 466, 443, 445, 468, 447, 469, 448, - 449, 450, 456, 470, 471, 472, 473, 451, 452, 453, - 454, 455, 456, 458, 459, 460, 461, 462, 464, 474, - - 465, 466, 475, 476, 468, 477, 469, 478, 479, 480, - 456, 470, 471, 472, 473, 481, 482, 483, 484, 485, - 486, 487, 488, 489, 490, 491, 492, 474, 490, 493, - 475, 476, 494, 477, 495, 478, 479, 480, 496, 497, - 499, 500, 1463, 481, 482, 483, 484, 485, 486, 487, - 488, 489, 490, 491, 492, 502, 490, 493, 504, 505, - 494, 506, 495, 507, 508, 502, 496, 497, 499, 500, - 503, 503, 503, 503, 509, 510, 511, 513, 514, 517, - 517, 517, 517, 502, 518, 521, 504, 505, 523, 506, - 524, 507, 508, 502, 519, 519, 519, 522, 522, 525, - - 527, 530, 509, 510, 511, 513, 514, 526, 526, 526, - 532, 534, 518, 521, 544, 547, 523, 548, 524, 528, - 528, 528, 537, 537, 537, 522, 522, 525, 527, 530, - 549, 551, 553, 554, 556, 556, 556, 556, 532, 534, - 557, 564, 544, 547, 566, 548, 559, 559, 559, 576, - 579, 580, 581, 582, 583, 584, 585, 587, 549, 551, - 553, 554, 588, 590, 591, 593, 594, 595, 557, 564, - 597, 598, 566, 599, 600, 601, 602, 576, 579, 580, - 581, 582, 583, 584, 585, 587, 603, 604, 606, 607, - 588, 590, 591, 593, 594, 595, 608, 611, 597, 598, - - 612, 599, 600, 601, 602, 605, 605, 605, 605, 610, - 610, 610, 610, 613, 603, 604, 606, 607, 614, 615, - 616, 618, 623, 1461, 608, 611, 625, 626, 612, 619, - 619, 619, 619, 620, 620, 620, 620, 621, 621, 621, - 621, 613, 622, 622, 622, 622, 614, 615, 616, 618, - 623, 624, 627, 628, 625, 626, 629, 630, 631, 632, - 633, 634, 635, 636, 637, 624, 638, 639, 640, 641, - 642, 643, 644, 645, 634, 646, 647, 648, 649, 624, - 627, 628, 650, 651, 629, 630, 631, 632, 633, 634, - 635, 636, 637, 624, 638, 639, 640, 641, 642, 643, - - 644, 645, 634, 646, 647, 648, 649, 653, 654, 656, - 650, 651, 657, 658, 659, 660, 661, 662, 663, 664, - 666, 667, 668, 669, 670, 671, 672, 673, 676, 678, - 679, 680, 681, 688, 690, 653, 654, 656, 691, 692, - 657, 658, 659, 660, 661, 662, 663, 664, 666, 667, - 668, 669, 670, 671, 672, 673, 676, 678, 679, 680, - 681, 688, 690, 696, 714, 716, 691, 692, 701, 701, - 701, 701, 710, 710, 710, 711, 711, 711, 712, 712, - 712, 717, 718, 720, 722, 723, 724, 730, 737, 740, - 741, 696, 714, 716, 742, 743, 743, 743, 743, 744, - - 744, 744, 744, 745, 745, 745, 745, 748, 749, 717, - 718, 720, 722, 723, 724, 730, 737, 740, 741, 750, - 752, 753, 742, 746, 746, 746, 746, 754, 755, 756, - 757, 759, 760, 761, 763, 748, 749, 762, 762, 762, - 762, 764, 765, 766, 767, 768, 770, 750, 752, 753, - 771, 772, 773, 775, 776, 754, 755, 756, 757, 759, - 760, 761, 763, 777, 778, 780, 797, 798, 800, 764, - 765, 766, 767, 768, 770, 802, 803, 804, 771, 772, - 773, 775, 776, 805, 806, 807, 808, 809, 810, 811, - 812, 777, 778, 780, 797, 798, 800, 813, 814, 816, - - 817, 818, 819, 802, 803, 804, 821, 822, 823, 824, - 825, 805, 806, 807, 808, 809, 810, 811, 812, 826, - 830, 833, 835, 836, 837, 813, 814, 816, 817, 818, - 819, 838, 839, 840, 821, 822, 823, 824, 825, 841, - 842, 842, 842, 842, 846, 847, 850, 826, 830, 833, - 835, 836, 837, 843, 843, 843, 843, 851, 853, 838, - 839, 840, 844, 844, 844, 844, 849, 841, 845, 845, - 845, 845, 846, 847, 850, 854, 855, 856, 874, 849, - 857, 857, 857, 875, 877, 851, 853, 858, 858, 858, - 859, 859, 859, 879, 849, 860, 860, 860, 860, 882, - - 883, 885, 889, 854, 855, 856, 874, 849, 891, 892, - 893, 875, 877, 910, 912, 875, 913, 914, 915, 916, - 917, 879, 918, 920, 922, 923, 914, 882, 883, 924, - 925, 926, 885, 889, 1460, 1459, 891, 892, 893, 1458, - 1457, 910, 912, 1456, 913, 914, 915, 916, 917, 1425, - 918, 920, 922, 923, 932, 1424, 1423, 924, 925, 926, - 885, 889, 927, 927, 927, 927, 928, 928, 928, 928, - 929, 929, 929, 929, 930, 930, 930, 930, 933, 933, - 933, 933, 932, 934, 934, 934, 934, 935, 935, 935, - 935, 936, 936, 936, 936, 938, 939, 940, 941, 942, - - 944, 946, 947, 948, 949, 950, 951, 952, 953, 954, - 957, 958, 959, 960, 961, 962, 963, 964, 965, 966, - 1192, 1192, 1192, 938, 939, 940, 941, 942, 944, 946, - 947, 948, 949, 950, 951, 952, 953, 954, 957, 958, - 959, 960, 961, 962, 963, 964, 965, 966, 967, 967, - 967, 968, 969, 970, 972, 1422, 973, 975, 967, 974, - 974, 974, 977, 995, 996, 997, 999, 1001, 1002, 974, - 1017, 1421, 1420, 1419, 967, 1418, 1024, 1417, 1025, 968, - 969, 970, 972, 967, 973, 975, 967, 1028, 1029, 1030, - 977, 995, 996, 997, 999, 1001, 1002, 974, 1017, 1019, - - 1019, 1019, 967, 1021, 1021, 1021, 1025, 1024, 1416, 1019, - 1031, 1033, 1034, 1021, 1035, 1028, 1029, 1030, 1036, 1037, - 1038, 1040, 1041, 1062, 1080, 1019, 1042, 1042, 1042, 1042, - 1043, 1043, 1043, 1043, 1019, 1024, 1019, 1019, 1031, 1033, - 1034, 1021, 1035, 1081, 1082, 1083, 1036, 1037, 1038, 1040, - 1041, 1062, 1080, 1019, 1044, 1044, 1044, 1044, 1045, 1045, - 1045, 1045, 1084, 1085, 1086, 1087, 1088, 1090, 1091, 1092, - 1093, 1081, 1082, 1083, 1094, 1095, 1096, 1098, 1099, 1100, - 1102, 1103, 1104, 1105, 1106, 1107, 1415, 1109, 1110, 1111, - 1084, 1085, 1086, 1087, 1088, 1090, 1091, 1092, 1093, 1112, - - 1113, 1114, 1094, 1095, 1096, 1098, 1099, 1100, 1102, 1103, - 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1116, 1117, - 1108, 1118, 1119, 1120, 1123, 1124, 1131, 1112, 1113, 1114, - 1130, 1130, 1130, 1133, 1134, 1135, 1140, 1137, 1139, 1139, - 1139, 1120, 1108, 1137, 1142, 1143, 1116, 1117, 1108, 1118, - 1119, 1120, 1123, 1124, 1131, 1144, 1145, 1146, 1147, 1148, - 1149, 1133, 1134, 1135, 1140, 1137, 1150, 1130, 1130, 1120, - 1151, 1137, 1142, 1143, 1152, 1139, 1139, 1153, 1170, 1171, - 1172, 1173, 1174, 1144, 1145, 1146, 1147, 1148, 1149, 1176, - 1178, 1179, 1180, 1181, 1150, 1182, 1183, 1184, 1151, 1186, - - 1187, 1188, 1152, 1190, 1191, 1153, 1170, 1171, 1172, 1173, - 1174, 1196, 1197, 1198, 1199, 1200, 1201, 1176, 1178, 1179, - 1180, 1181, 1202, 1182, 1183, 1184, 1204, 1186, 1187, 1188, - 1207, 1190, 1191, 1205, 1208, 1209, 1210, 1211, 1219, 1196, - 1197, 1198, 1199, 1200, 1201, 1205, 1414, 1413, 1225, 1232, - 1202, 1233, 1234, 1236, 1204, 1237, 1238, 1222, 1207, 1239, - 1240, 1205, 1208, 1209, 1210, 1211, 1219, 1242, 1243, 1222, - 1244, 1245, 1246, 1205, 1222, 1222, 1225, 1232, 1247, 1233, - 1234, 1236, 1251, 1237, 1238, 1252, 1253, 1239, 1240, 1255, - 1256, 1257, 1258, 1259, 1260, 1242, 1243, 1261, 1244, 1245, - - 1246, 1262, 1263, 1264, 1265, 1266, 1247, 1267, 1268, 1269, - 1251, 1271, 1272, 1252, 1253, 1274, 1275, 1255, 1256, 1257, - 1258, 1259, 1260, 1276, 1277, 1261, 1278, 1279, 1280, 1262, - 1263, 1264, 1265, 1266, 1281, 1267, 1268, 1269, 1287, 1271, - 1272, 1283, 1295, 1274, 1275, 1302, 1303, 1298, 1304, 1305, - 1306, 1276, 1277, 1283, 1278, 1279, 1280, 1307, 1283, 1298, - 1308, 1309, 1281, 1310, 1298, 1311, 1287, 1312, 1313, 1314, - 1295, 1316, 1317, 1302, 1303, 1319, 1304, 1305, 1306, 1322, - 1324, 1325, 1326, 1327, 1328, 1307, 1330, 1332, 1308, 1309, - 1333, 1310, 1334, 1311, 1336, 1312, 1313, 1314, 1338, 1316, - - 1317, 1339, 1340, 1319, 1341, 1342, 1344, 1322, 1324, 1325, - 1326, 1327, 1328, 1345, 1330, 1332, 1346, 1353, 1333, 1369, - 1334, 1371, 1336, 1373, 1374, 1375, 1338, 1376, 1377, 1339, - 1340, 1377, 1341, 1342, 1344, 1380, 1381, 1382, 1383, 1384, - 1385, 1345, 1386, 1387, 1346, 1353, 1388, 1369, 1389, 1371, - 1390, 1373, 1374, 1375, 1391, 1376, 1377, 1393, 1394, 1377, - 1395, 1396, 1397, 1380, 1381, 1382, 1383, 1384, 1385, 1398, - 1386, 1387, 1399, 1400, 1388, 1401, 1389, 1402, 1390, 1410, - 1426, 1427, 1391, 1429, 1431, 1393, 1394, 1432, 1395, 1396, - 1397, 1433, 1434, 1435, 1438, 1439, 1440, 1398, 1441, 1442, - - 1399, 1400, 1443, 1401, 1444, 1402, 1445, 1410, 1426, 1427, - 1447, 1429, 1431, 1448, 1450, 1432, 1451, 1452, 1453, 1433, - 1434, 1435, 1438, 1439, 1440, 1454, 1441, 1442, 1455, 1478, - 1443, 1479, 1444, 1480, 1445, 1481, 1482, 1483, 1447, 1485, - 1486, 1448, 1450, 1487, 1451, 1452, 1453, 1488, 1489, 1490, - 1491, 1492, 1493, 1454, 1494, 1495, 1455, 1478, 1498, 1479, - 1499, 1480, 1522, 1481, 1482, 1483, 1523, 1485, 1486, 1524, - 1525, 1487, 1526, 1527, 1530, 1488, 1489, 1490, 1491, 1492, - 1493, 1531, 1494, 1495, 1532, 1533, 1498, 1534, 1499, 1535, - 1522, 1536, 1537, 1538, 1523, 1539, 1540, 1524, 1525, 1557, - - 1526, 1527, 1530, 1558, 1560, 1561, 1565, 1566, 1569, 1531, - 1584, 1586, 1532, 1533, 1588, 1534, 1589, 1535, 1590, 1536, - 1537, 1538, 1600, 1539, 1540, 1601, 1602, 1557, 1604, 1609, - 1610, 1558, 1560, 1561, 1565, 1566, 1569, 1612, 1584, 1586, - 1617, 1618, 1588, 1619, 1589, 1623, 1590, 1624, 1625, 1628, - 1600, 1412, 1411, 1601, 1602, 1409, 1604, 1609, 1610, 1408, - 1407, 1406, 1405, 1404, 1367, 1612, 1366, 1365, 1617, 1618, - 1364, 1619, 1363, 1623, 1362, 1624, 1625, 1628, 1633, 1633, - 1633, 1633, 1634, 1634, 1634, 1634, 1636, 1360, 1359, 1636, - 1637, 1358, 1637, 1637, 1638, 1357, 1638, 1638, 1356, 1355, - - 1354, 1352, 1351, 1350, 1349, 1348, 1347, 1323, 1301, 1300, - 1297, 1294, 1293, 1292, 1291, 1290, 1289, 1288, 1286, 1285, - 1282, 1270, 1231, 1230, 1229, 1228, 1227, 1226, 1224, 1218, - 1217, 1216, 1215, 1214, 1203, 1138, 1136, 1132, 1129, 1126, - 1023, 1020, 1018, 1015, 1014, 1000, 931, 890, 888, 884, - 880, 873, 862, 861, 852, 831, 751, 739, 736, 735, - 731, 725, 721, 719, 713, 709, 705, 704, 695, 694, - 693, 689, 683, 596, 578, 577, 574, 573, 572, 571, - 570, 567, 558, 552, 550, 545, 543, 542, 541, 540, - 538, 536, 535, 533, 516, 408, 407, 405, 404, 403, - - 402, 401, 400, 399, 398, 397, 391, 390, 384, 382, - 377, 374, 372, 371, 370, 369, 368, 365, 362, 359, - 357, 351, 348, 313, 247, 242, 241, 239, 238, 236, - 235, 233, 222, 215, 213, 204, 201, 200, 199, 196, - 190, 188, 182, 179, 103, 99, 84, 83, 81, 78, - 74, 71, 22, 15, 13, 11, 9, 7, 6, 5, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, 1632, - 1632, 1632, 1632, 1632, 1632, 1632, 1632 + 1, 1, 1, 1, 1, 1, 1, 3, 4, 9, + 12, 9, 14, 3, 4, 16, 18, 17, 19, 1629, + 18, 21, 21, 23, 23, 14, 16, 17, 18, 20, + + 1620, 20, 20, 20, 20, 20, 20, 44, 24, 68, + 32, 24, 48, 24, 25, 30, 48, 25, 32, 19, + 25, 79, 74, 25, 74, 30, 48, 25, 30, 79, + 20, 1616, 12, 12, 45, 44, 24, 12, 32, 24, + 12, 24, 25, 30, 12, 25, 32, 19, 25, 12, + 12, 25, 28, 30, 28, 25, 30, 27, 20, 26, + 26, 27, 45, 26, 28, 68, 26, 27, 1269, 1269, + 26, 233, 34, 26, 1610, 27, 236, 27, 34, 29, + 28, 233, 28, 104, 31, 27, 236, 26, 26, 27, + 29, 26, 28, 29, 26, 27, 29, 35, 26, 53, + + 34, 26, 29, 27, 31, 27, 34, 29, 105, 36, + 37, 104, 31, 36, 38, 37, 1608, 35, 29, 53, + 1607, 29, 38, 36, 29, 35, 1602, 53, 38, 36, + 29, 38, 31, 55, 38, 53, 105, 36, 37, 55, + 1601, 36, 38, 37, 39, 35, 106, 53, 39, 107, + 38, 36, 50, 55, 50, 1600, 38, 36, 39, 38, + 1599, 55, 38, 1590, 50, 41, 39, 55, 41, 1589, + 1588, 41, 39, 42, 106, 1587, 39, 107, 42, 1577, + 50, 41, 50, 42, 1576, 58, 39, 43, 41, 1575, + 58, 43, 50, 41, 39, 40, 41, 43, 78, 41, + + 78, 42, 40, 40, 78, 1574, 42, 46, 40, 41, + 46, 42, 46, 58, 40, 43, 41, 40, 58, 43, + 46, 46, 1573, 40, 1571, 43, 46, 1570, 108, 109, + 40, 40, 110, 56, 1569, 46, 40, 46, 46, 46, + 46, 1568, 40, 1550, 111, 40, 47, 113, 1218, 47, + 54, 1549, 47, 56, 114, 47, 108, 109, 54, 47, + 110, 56, 51, 47, 47, 56, 1218, 60, 60, 47, + 60, 60, 111, 51, 47, 113, 51, 47, 54, 51, + 47, 56, 114, 47, 47, 51, 54, 47, 49, 57, + 51, 54, 49, 57, 54, 518, 518, 518, 49, 115, + + 1356, 51, 116, 57, 51, 1546, 49, 51, 49, 57, + 525, 525, 525, 51, 1545, 52, 49, 57, 1356, 1543, + 49, 57, 112, 112, 49, 52, 49, 115, 52, 1542, + 116, 57, 1541, 49, 49, 1539, 49, 57, 61, 52, + 52, 119, 61, 52, 1538, 52, 67, 67, 67, 67, + 112, 112, 61, 52, 64, 1537, 52, 59, 121, 64, + 61, 117, 117, 117, 64, 59, 61, 61, 122, 119, + 61, 59, 61, 1515, 59, 1512, 1511, 59, 1510, 123, + 61, 1509, 64, 61, 1508, 59, 121, 64, 61, 117, + 117, 117, 64, 59, 62, 64, 122, 124, 1507, 59, + + 59, 59, 59, 59, 59, 59, 62, 123, 126, 62, + 62, 65, 62, 62, 62, 65, 62, 63, 127, 128, + 63, 65, 76, 63, 1506, 124, 66, 95, 95, 95, + 95, 95, 95, 63, 1505, 65, 126, 129, 130, 65, + 63, 1279, 1504, 65, 1503, 63, 127, 128, 63, 65, + 131, 63, 125, 1279, 66, 1502, 125, 132, 1279, 63, + 63, 63, 63, 63, 1501, 129, 130, 1498, 63, 66, + 66, 66, 66, 120, 76, 76, 133, 118, 131, 76, + 125, 120, 76, 118, 125, 132, 76, 118, 134, 135, + 1497, 76, 76, 97, 138, 97, 97, 97, 97, 97, + + 97, 120, 139, 140, 133, 118, 141, 142, 143, 120, + 137, 118, 144, 137, 137, 118, 134, 135, 137, 144, + 145, 146, 138, 147, 97, 149, 150, 148, 152, 151, + 139, 140, 153, 151, 141, 142, 143, 155, 137, 151, + 144, 137, 137, 148, 157, 160, 137, 144, 145, 146, + 162, 147, 97, 149, 150, 148, 152, 151, 163, 156, + 153, 151, 154, 159, 154, 155, 158, 151, 161, 154, + 165, 148, 157, 160, 164, 154, 156, 156, 162, 165, + 158, 167, 159, 1496, 164, 161, 163, 156, 168, 170, + 154, 159, 154, 1471, 158, 164, 161, 154, 165, 166, + + 172, 174, 164, 154, 156, 156, 171, 165, 158, 167, + 159, 166, 164, 161, 169, 166, 168, 170, 1470, 173, + 169, 171, 173, 164, 169, 179, 1469, 166, 172, 174, + 180, 183, 1468, 186, 171, 182, 182, 1467, 1466, 166, + 177, 177, 169, 166, 1465, 190, 177, 173, 169, 171, + 173, 191, 169, 179, 180, 180, 192, 177, 180, 183, + 180, 186, 185, 182, 182, 184, 184, 184, 185, 188, + 192, 180, 185, 190, 193, 346, 346, 188, 202, 191, + 1464, 346, 205, 197, 192, 201, 197, 197, 211, 194, + 185, 197, 346, 184, 184, 184, 185, 188, 215, 1462, + + 185, 204, 193, 194, 194, 188, 202, 206, 204, 194, + 205, 197, 1461, 201, 197, 197, 211, 194, 218, 197, + 194, 197, 201, 206, 207, 207, 215, 207, 207, 204, + 208, 1460, 209, 217, 208, 206, 204, 210, 213, 210, + 208, 1459, 209, 209, 210, 217, 218, 225, 209, 217, + 210, 206, 206, 377, 377, 213, 377, 377, 208, 209, + 209, 217, 208, 1458, 219, 210, 213, 210, 208, 216, + 219, 220, 210, 217, 219, 225, 1457, 217, 210, 216, + 223, 213, 213, 213, 213, 213, 224, 245, 247, 224, + 216, 220, 219, 248, 249, 223, 1455, 216, 219, 220, + + 1454, 1453, 219, 226, 226, 226, 226, 216, 223, 250, + 251, 252, 253, 254, 224, 245, 247, 224, 216, 255, + 256, 248, 249, 223, 242, 242, 242, 242, 242, 242, + 257, 258, 259, 260, 261, 261, 262, 250, 251, 252, + 253, 254, 263, 264, 265, 266, 267, 255, 256, 268, + 269, 270, 271, 272, 273, 274, 275, 277, 257, 258, + 259, 260, 261, 261, 262, 278, 279, 280, 281, 282, + 263, 264, 265, 266, 267, 283, 284, 268, 269, 270, + 271, 272, 273, 274, 275, 277, 285, 286, 287, 287, + 287, 287, 288, 278, 279, 280, 281, 282, 289, 290, + + 287, 291, 292, 283, 284, 294, 295, 296, 297, 298, + 299, 300, 301, 302, 285, 286, 303, 304, 305, 306, + 288, 307, 308, 309, 310, 311, 289, 290, 287, 291, + 292, 314, 315, 294, 295, 296, 297, 298, 299, 300, + 301, 302, 316, 317, 303, 304, 305, 306, 318, 307, + 308, 309, 310, 311, 313, 319, 320, 321, 313, 314, + 315, 322, 323, 324, 325, 326, 327, 328, 329, 330, + 316, 317, 331, 332, 323, 334, 318, 335, 336, 337, + 338, 339, 313, 319, 320, 321, 313, 336, 340, 322, + 323, 324, 325, 326, 327, 328, 329, 330, 341, 342, + + 331, 332, 323, 334, 343, 335, 336, 337, 338, 339, + 344, 345, 348, 349, 351, 336, 340, 352, 353, 353, + 354, 355, 357, 359, 360, 362, 341, 342, 365, 527, + 527, 527, 343, 536, 536, 536, 374, 375, 344, 345, + 348, 349, 351, 378, 379, 352, 353, 353, 354, 355, + 357, 359, 360, 362, 380, 382, 365, 366, 366, 366, + 366, 372, 372, 372, 374, 375, 384, 382, 385, 366, + 386, 378, 379, 387, 1452, 388, 392, 392, 392, 393, + 394, 408, 380, 382, 388, 372, 395, 395, 395, 395, + 409, 411, 413, 414, 384, 382, 385, 366, 386, 415, + + 417, 387, 392, 388, 418, 419, 421, 393, 394, 408, + 422, 423, 388, 372, 412, 412, 412, 412, 409, 411, + 413, 414, 425, 423, 424, 424, 426, 415, 417, 427, + 392, 428, 418, 419, 421, 429, 430, 431, 422, 423, + 432, 433, 436, 437, 438, 439, 440, 441, 442, 444, + 425, 423, 424, 424, 426, 446, 447, 427, 448, 428, + 449, 450, 451, 429, 430, 431, 452, 453, 432, 433, + 436, 437, 438, 439, 440, 441, 442, 444, 454, 455, + 457, 458, 459, 446, 447, 460, 448, 461, 449, 450, + 451, 463, 464, 465, 452, 453, 467, 455, 468, 469, + + 470, 471, 472, 473, 474, 475, 454, 455, 457, 458, + 459, 476, 477, 460, 478, 461, 479, 480, 481, 463, + 464, 465, 482, 483, 467, 455, 468, 469, 470, 471, + 472, 473, 474, 475, 484, 485, 486, 487, 488, 476, + 477, 490, 478, 489, 479, 480, 481, 489, 491, 492, + 482, 483, 493, 494, 495, 496, 498, 499, 501, 558, + 558, 558, 484, 485, 486, 487, 488, 503, 501, 490, + 504, 489, 505, 506, 507, 489, 491, 492, 508, 509, + 493, 494, 495, 496, 498, 499, 501, 502, 502, 502, + 502, 510, 512, 513, 517, 503, 501, 520, 504, 522, + + 505, 506, 507, 521, 521, 523, 508, 509, 516, 516, + 516, 516, 524, 526, 529, 531, 533, 543, 546, 510, + 512, 513, 517, 547, 548, 520, 550, 522, 552, 553, + 556, 521, 521, 523, 555, 555, 555, 555, 564, 578, + 524, 526, 529, 531, 533, 543, 546, 579, 580, 581, + 582, 547, 548, 583, 550, 584, 552, 553, 556, 586, + 587, 589, 590, 592, 593, 594, 564, 578, 596, 597, + 598, 599, 600, 601, 602, 579, 580, 581, 582, 603, + 605, 583, 606, 584, 607, 1451, 1450, 586, 587, 589, + 590, 592, 593, 594, 610, 611, 596, 597, 598, 599, + + 600, 601, 602, 604, 604, 604, 604, 603, 605, 612, + 606, 613, 607, 609, 609, 609, 609, 614, 615, 617, + 622, 624, 610, 611, 618, 618, 618, 618, 619, 619, + 619, 619, 620, 620, 620, 620, 623, 612, 625, 613, + 621, 621, 621, 621, 626, 614, 615, 617, 622, 624, + 623, 627, 628, 629, 630, 631, 632, 633, 634, 635, + 636, 637, 638, 639, 623, 640, 625, 641, 642, 643, + 633, 644, 626, 645, 646, 647, 648, 649, 623, 627, + 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, + 638, 639, 650, 640, 652, 641, 642, 643, 633, 644, + + 653, 645, 646, 647, 648, 649, 655, 656, 657, 658, + 659, 660, 661, 662, 663, 665, 666, 667, 668, 669, + 650, 670, 652, 671, 672, 675, 677, 678, 653, 679, + 680, 687, 689, 690, 655, 656, 657, 658, 659, 660, + 661, 662, 663, 665, 666, 667, 668, 669, 691, 670, + 695, 671, 672, 675, 677, 678, 713, 679, 680, 687, + 689, 690, 700, 700, 700, 700, 709, 709, 709, 710, + 710, 710, 711, 711, 711, 715, 691, 716, 695, 717, + 719, 721, 722, 723, 713, 739, 740, 741, 742, 742, + 742, 742, 743, 743, 743, 743, 744, 744, 744, 744, + + 747, 748, 749, 715, 751, 716, 752, 717, 719, 721, + 722, 723, 753, 739, 740, 741, 745, 745, 745, 745, + 754, 755, 756, 758, 759, 760, 762, 763, 747, 748, + 749, 764, 751, 765, 752, 761, 761, 761, 761, 766, + 753, 767, 769, 770, 771, 772, 774, 775, 754, 755, + 756, 758, 759, 760, 762, 763, 776, 777, 779, 764, + 796, 765, 797, 799, 801, 802, 803, 766, 804, 767, + 769, 770, 771, 772, 774, 775, 805, 806, 807, 808, + 809, 810, 811, 812, 776, 777, 779, 813, 796, 815, + 797, 799, 801, 802, 803, 816, 804, 817, 818, 820, + + 821, 822, 823, 824, 805, 806, 807, 808, 809, 810, + 811, 812, 825, 829, 832, 813, 834, 815, 835, 836, + 837, 838, 839, 816, 840, 817, 818, 820, 821, 822, + 823, 824, 841, 841, 841, 841, 842, 842, 842, 842, + 825, 829, 832, 845, 834, 846, 835, 836, 837, 838, + 839, 848, 840, 843, 843, 843, 843, 844, 844, 844, + 844, 849, 850, 852, 848, 853, 854, 855, 856, 856, + 856, 845, 873, 846, 857, 857, 857, 874, 876, 848, + 858, 858, 858, 859, 859, 859, 859, 878, 881, 849, + 850, 852, 848, 853, 854, 855, 882, 890, 891, 892, + + 873, 909, 911, 912, 913, 874, 876, 914, 915, 874, + 916, 917, 919, 913, 921, 878, 881, 922, 923, 924, + 925, 1189, 1189, 1189, 882, 890, 891, 892, 1419, 909, + 911, 912, 913, 1418, 1417, 914, 915, 931, 916, 917, + 919, 1416, 921, 1415, 1414, 922, 923, 924, 925, 926, + 926, 926, 926, 927, 927, 927, 927, 928, 928, 928, + 928, 929, 929, 929, 929, 931, 932, 932, 932, 932, + 933, 933, 933, 933, 934, 934, 934, 934, 935, 935, + 935, 935, 937, 938, 939, 940, 941, 943, 945, 946, + 947, 948, 949, 950, 951, 952, 953, 956, 957, 958, + + 959, 960, 961, 962, 963, 964, 965, 1413, 1412, 1411, + 937, 938, 939, 940, 941, 943, 945, 946, 947, 948, + 949, 950, 951, 952, 953, 956, 957, 958, 959, 960, + 961, 962, 963, 964, 965, 966, 966, 966, 967, 968, + 969, 971, 1410, 972, 974, 966, 973, 973, 973, 976, + 994, 995, 996, 998, 1000, 1001, 973, 1016, 1409, 1408, + 1407, 966, 1406, 1405, 1403, 1026, 967, 968, 969, 971, + 966, 972, 974, 966, 1027, 1028, 1029, 976, 994, 995, + 996, 998, 1000, 1001, 973, 1016, 1018, 1018, 1018, 966, + 1020, 1020, 1020, 1026, 1031, 1402, 1018, 1032, 1033, 1034, + + 1020, 1035, 1027, 1028, 1029, 1036, 1038, 1039, 1040, 1040, + 1040, 1040, 1018, 1041, 1041, 1041, 1041, 1042, 1042, 1042, + 1042, 1018, 1031, 1018, 1018, 1032, 1033, 1034, 1020, 1035, + 1060, 1078, 1079, 1036, 1038, 1039, 1043, 1043, 1043, 1043, + 1018, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1088, 1089, + 1090, 1091, 1092, 1093, 1094, 1096, 1097, 1098, 1060, 1078, + 1079, 1100, 1101, 1102, 1103, 1104, 1105, 1401, 1107, 1080, + 1081, 1082, 1083, 1084, 1085, 1086, 1088, 1089, 1090, 1091, + 1092, 1093, 1094, 1096, 1097, 1098, 1108, 1109, 1110, 1100, + 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1111, 1112, 1114, + + 1115, 1106, 1116, 1117, 1118, 1121, 1122, 1128, 1128, 1128, + 1129, 1131, 1132, 1133, 1108, 1109, 1110, 1400, 1135, 1137, + 1137, 1137, 1118, 1106, 1135, 1111, 1112, 1114, 1115, 1106, + 1116, 1117, 1118, 1121, 1122, 1139, 1140, 1141, 1129, 1131, + 1132, 1133, 1142, 1143, 1128, 1128, 1135, 1144, 1145, 1146, + 1118, 1147, 1135, 1148, 1149, 1150, 1137, 1137, 1167, 1168, + 1169, 1170, 1171, 1139, 1140, 1141, 1173, 1175, 1176, 1177, + 1142, 1143, 1178, 1179, 1180, 1144, 1145, 1146, 1181, 1147, + 1183, 1148, 1149, 1150, 1184, 1185, 1167, 1168, 1169, 1170, + 1171, 1187, 1188, 1193, 1173, 1175, 1176, 1177, 1194, 1195, + + 1178, 1179, 1180, 1196, 1197, 1198, 1181, 1199, 1183, 1201, + 1202, 1204, 1184, 1185, 1205, 1206, 1207, 1208, 1216, 1187, + 1188, 1193, 1202, 1222, 1229, 1399, 1194, 1195, 1230, 1232, + 1233, 1196, 1197, 1198, 1234, 1199, 1219, 1201, 1202, 1204, + 1235, 1236, 1205, 1206, 1207, 1208, 1216, 1238, 1219, 1239, + 1202, 1222, 1229, 1219, 1219, 1240, 1230, 1232, 1233, 1241, + 1242, 1243, 1234, 1247, 1248, 1249, 1251, 1252, 1235, 1236, + 1253, 1254, 1255, 1256, 1257, 1238, 1258, 1239, 1259, 1260, + 1261, 1262, 1263, 1240, 1264, 1265, 1267, 1241, 1242, 1243, + 1268, 1247, 1248, 1249, 1251, 1252, 1270, 1271, 1253, 1254, + + 1255, 1256, 1257, 1272, 1258, 1273, 1259, 1260, 1261, 1262, + 1263, 1274, 1264, 1265, 1267, 1275, 1276, 1277, 1268, 1283, + 1291, 1298, 1299, 1294, 1270, 1271, 1300, 1301, 1302, 1303, + 1304, 1272, 1305, 1273, 1306, 1294, 1307, 1308, 1309, 1274, + 1294, 1311, 1312, 1275, 1276, 1277, 1314, 1283, 1291, 1298, + 1299, 1317, 1319, 1320, 1300, 1301, 1302, 1303, 1304, 1321, + 1305, 1322, 1306, 1323, 1307, 1308, 1309, 1325, 1327, 1311, + 1312, 1328, 1329, 1331, 1314, 1333, 1334, 1335, 1336, 1317, + 1319, 1320, 1337, 1339, 1340, 1341, 1348, 1321, 1363, 1322, + 1365, 1323, 1367, 1368, 1369, 1325, 1327, 1370, 1398, 1328, + + 1329, 1331, 1374, 1333, 1334, 1335, 1336, 1375, 1376, 1377, + 1337, 1339, 1340, 1341, 1348, 1378, 1363, 1379, 1365, 1380, + 1367, 1368, 1369, 1371, 1381, 1370, 1371, 1382, 1383, 1384, + 1374, 1385, 1387, 1388, 1389, 1375, 1376, 1377, 1390, 1391, + 1392, 1393, 1394, 1378, 1395, 1379, 1396, 1380, 1404, 1420, + 1421, 1371, 1381, 1423, 1371, 1382, 1383, 1384, 1425, 1385, + 1387, 1388, 1389, 1426, 1427, 1428, 1390, 1391, 1392, 1393, + 1394, 1429, 1395, 1432, 1396, 1433, 1404, 1420, 1421, 1434, + 1435, 1423, 1436, 1437, 1438, 1439, 1425, 1441, 1442, 1444, + 1445, 1426, 1427, 1428, 1446, 1447, 1448, 1449, 1472, 1429, + + 1473, 1432, 1474, 1433, 1475, 1476, 1477, 1434, 1435, 1479, + 1436, 1437, 1438, 1439, 1480, 1441, 1442, 1444, 1445, 1481, + 1482, 1483, 1446, 1447, 1448, 1449, 1472, 1484, 1473, 1485, + 1474, 1486, 1475, 1476, 1477, 1487, 1488, 1479, 1489, 1492, + 1493, 1516, 1480, 1517, 1518, 1519, 1520, 1481, 1482, 1483, + 1521, 1524, 1525, 1526, 1527, 1484, 1528, 1485, 1529, 1486, + 1530, 1531, 1532, 1487, 1488, 1533, 1489, 1492, 1493, 1516, + 1534, 1517, 1518, 1519, 1520, 1551, 1552, 1554, 1521, 1524, + 1525, 1526, 1527, 1555, 1528, 1559, 1529, 1560, 1530, 1531, + 1532, 1563, 1578, 1533, 1580, 1582, 1583, 1584, 1534, 1594, + + 1595, 1596, 1598, 1551, 1552, 1554, 1603, 1604, 1606, 1611, + 1612, 1555, 1613, 1559, 1617, 1560, 1618, 1619, 1622, 1563, + 1578, 1362, 1580, 1582, 1583, 1584, 1361, 1594, 1595, 1596, + 1598, 1360, 1359, 1358, 1603, 1604, 1606, 1611, 1612, 1357, + 1613, 1355, 1617, 1354, 1618, 1619, 1622, 1627, 1627, 1627, + 1627, 1628, 1628, 1628, 1628, 1630, 1353, 1352, 1630, 1631, + 1351, 1631, 1631, 1632, 1350, 1632, 1632, 1349, 1347, 1346, + 1345, 1344, 1343, 1342, 1318, 1297, 1296, 1293, 1290, 1289, + 1288, 1287, 1286, 1285, 1284, 1282, 1281, 1278, 1266, 1228, + 1227, 1226, 1225, 1224, 1223, 1221, 1215, 1214, 1213, 1212, + + 1211, 1200, 1136, 1134, 1130, 1127, 1124, 1022, 1019, 1017, + 1014, 1013, 999, 930, 889, 887, 884, 883, 879, 872, + 861, 860, 851, 830, 750, 738, 736, 735, 734, 730, + 728, 724, 720, 718, 712, 708, 704, 703, 694, 693, + 692, 688, 682, 595, 577, 576, 575, 573, 572, 571, + 570, 569, 566, 559, 557, 551, 549, 544, 542, 541, + 540, 539, 537, 535, 534, 532, 515, 407, 406, 405, + 404, 403, 402, 401, 400, 399, 398, 397, 396, 391, + 390, 389, 383, 381, 376, 373, 371, 370, 369, 368, + 367, 364, 361, 358, 356, 350, 347, 312, 246, 241, + + 240, 239, 238, 237, 235, 234, 232, 222, 221, 214, + 212, 203, 200, 199, 198, 195, 189, 187, 181, 178, + 102, 98, 83, 82, 81, 80, 77, 71, 22, 15, + 13, 11, 7, 6, 5, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + + 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, 1626, + 1626, 1626, 1626 } ; /* The intent behind this definition is that it'll catch @@ -1658,7 +1653,7 @@ typedef lol::LolFxParser::token_type token_type; #define YY_USER_ACTION yylloc->columns(yyleng); -#line 1662 "generated/lolfx-scanner.cpp" +#line 1657 "generated/lolfx-scanner.cpp" #define INITIAL 0 #define C_COMMENT 1 @@ -1779,7 +1774,7 @@ YY_DECL * GLSL keywords */ -#line 1783 "generated/lolfx-scanner.cpp" +#line 1778 "generated/lolfx-scanner.cpp" if ( !(yy_init) ) { @@ -1832,13 +1827,13 @@ yy_match: while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1633 ) + if ( yy_current_state >= 1627 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; ++yy_cp; } - while ( yy_current_state != 1632 ); + while ( yy_current_state != 1626 ); yy_cp = (yy_last_accepting_cpos); yy_current_state = (yy_last_accepting_state); @@ -2101,221 +2096,221 @@ YY_RULE_SETUP #line 112 "gpu/lolfx-scanner.l" { return token::GT_ATTRIBUTE; } YY_BREAK -/* - * GLSL vector types - */ case 49: YY_RULE_SETUP -#line 118 "gpu/lolfx-scanner.l" -{ return token::GT_BVEC2; } +#line 113 "gpu/lolfx-scanner.l" +{ return token::GT_VARYING; } YY_BREAK +/* + * GLSL vector types + */ case 50: YY_RULE_SETUP #line 119 "gpu/lolfx-scanner.l" -{ return token::GT_BVEC3; } +{ return token::GT_BVEC2; } YY_BREAK case 51: YY_RULE_SETUP #line 120 "gpu/lolfx-scanner.l" -{ return token::GT_BVEC4; } +{ return token::GT_BVEC3; } YY_BREAK case 52: YY_RULE_SETUP -#line 122 "gpu/lolfx-scanner.l" -{ return token::GT_IVEC2; } +#line 121 "gpu/lolfx-scanner.l" +{ return token::GT_BVEC4; } YY_BREAK case 53: YY_RULE_SETUP #line 123 "gpu/lolfx-scanner.l" -{ return token::GT_IVEC3; } +{ return token::GT_IVEC2; } YY_BREAK case 54: YY_RULE_SETUP #line 124 "gpu/lolfx-scanner.l" -{ return token::GT_IVEC4; } +{ return token::GT_IVEC3; } YY_BREAK case 55: YY_RULE_SETUP -#line 126 "gpu/lolfx-scanner.l" -{ return token::GT_UVEC2; } +#line 125 "gpu/lolfx-scanner.l" +{ return token::GT_IVEC4; } YY_BREAK case 56: YY_RULE_SETUP #line 127 "gpu/lolfx-scanner.l" -{ return token::GT_UVEC3; } +{ return token::GT_UVEC2; } YY_BREAK case 57: YY_RULE_SETUP #line 128 "gpu/lolfx-scanner.l" -{ return token::GT_UVEC4; } +{ return token::GT_UVEC3; } YY_BREAK case 58: YY_RULE_SETUP -#line 130 "gpu/lolfx-scanner.l" -{ return token::GT_VEC2; } +#line 129 "gpu/lolfx-scanner.l" +{ return token::GT_UVEC4; } YY_BREAK case 59: YY_RULE_SETUP #line 131 "gpu/lolfx-scanner.l" -{ return token::GT_VEC3; } +{ return token::GT_VEC2; } YY_BREAK case 60: YY_RULE_SETUP #line 132 "gpu/lolfx-scanner.l" -{ return token::GT_VEC4; } +{ return token::GT_VEC3; } YY_BREAK case 61: YY_RULE_SETUP #line 133 "gpu/lolfx-scanner.l" -{ return token::GT_MAT2; } +{ return token::GT_VEC4; } YY_BREAK case 62: YY_RULE_SETUP #line 134 "gpu/lolfx-scanner.l" -{ return token::GT_MAT2X2; } +{ return token::GT_MAT2; } YY_BREAK case 63: YY_RULE_SETUP #line 135 "gpu/lolfx-scanner.l" -{ return token::GT_MAT2X3; } +{ return token::GT_MAT2X2; } YY_BREAK case 64: YY_RULE_SETUP #line 136 "gpu/lolfx-scanner.l" -{ return token::GT_MAT2X4; } +{ return token::GT_MAT2X3; } YY_BREAK case 65: YY_RULE_SETUP #line 137 "gpu/lolfx-scanner.l" -{ return token::GT_MAT3; } +{ return token::GT_MAT2X4; } YY_BREAK case 66: YY_RULE_SETUP #line 138 "gpu/lolfx-scanner.l" -{ return token::GT_MAT3X2; } +{ return token::GT_MAT3; } YY_BREAK case 67: YY_RULE_SETUP #line 139 "gpu/lolfx-scanner.l" -{ return token::GT_MAT3X3; } +{ return token::GT_MAT3X2; } YY_BREAK case 68: YY_RULE_SETUP #line 140 "gpu/lolfx-scanner.l" -{ return token::GT_MAT3X4; } +{ return token::GT_MAT3X3; } YY_BREAK case 69: YY_RULE_SETUP #line 141 "gpu/lolfx-scanner.l" -{ return token::GT_MAT4; } +{ return token::GT_MAT3X4; } YY_BREAK case 70: YY_RULE_SETUP #line 142 "gpu/lolfx-scanner.l" -{ return token::GT_MAT4X2; } +{ return token::GT_MAT4; } YY_BREAK case 71: YY_RULE_SETUP #line 143 "gpu/lolfx-scanner.l" -{ return token::GT_MAT4X3; } +{ return token::GT_MAT4X2; } YY_BREAK case 72: YY_RULE_SETUP #line 144 "gpu/lolfx-scanner.l" -{ return token::GT_MAT4X4; } +{ return token::GT_MAT4X3; } YY_BREAK case 73: YY_RULE_SETUP -#line 146 "gpu/lolfx-scanner.l" -{ return token::GT_DVEC2; } +#line 145 "gpu/lolfx-scanner.l" +{ return token::GT_MAT4X4; } YY_BREAK case 74: YY_RULE_SETUP #line 147 "gpu/lolfx-scanner.l" -{ return token::GT_DVEC3; } +{ return token::GT_DVEC2; } YY_BREAK case 75: YY_RULE_SETUP #line 148 "gpu/lolfx-scanner.l" -{ return token::GT_DVEC4; } +{ return token::GT_DVEC3; } YY_BREAK case 76: YY_RULE_SETUP #line 149 "gpu/lolfx-scanner.l" -{ return token::GT_DMAT2; } +{ return token::GT_DVEC4; } YY_BREAK case 77: YY_RULE_SETUP #line 150 "gpu/lolfx-scanner.l" -{ return token::GT_DMAT2X2; } +{ return token::GT_DMAT2; } YY_BREAK case 78: YY_RULE_SETUP #line 151 "gpu/lolfx-scanner.l" -{ return token::GT_DMAT2X3; } +{ return token::GT_DMAT2X2; } YY_BREAK case 79: YY_RULE_SETUP #line 152 "gpu/lolfx-scanner.l" -{ return token::GT_DMAT2X4; } +{ return token::GT_DMAT2X3; } YY_BREAK case 80: YY_RULE_SETUP #line 153 "gpu/lolfx-scanner.l" -{ return token::GT_DMAT3; } +{ return token::GT_DMAT2X4; } YY_BREAK case 81: YY_RULE_SETUP #line 154 "gpu/lolfx-scanner.l" -{ return token::GT_DMAT3X2; } +{ return token::GT_DMAT3; } YY_BREAK case 82: YY_RULE_SETUP #line 155 "gpu/lolfx-scanner.l" -{ return token::GT_DMAT3X3; } +{ return token::GT_DMAT3X2; } YY_BREAK case 83: YY_RULE_SETUP #line 156 "gpu/lolfx-scanner.l" -{ return token::GT_DMAT3X4; } +{ return token::GT_DMAT3X3; } YY_BREAK case 84: YY_RULE_SETUP #line 157 "gpu/lolfx-scanner.l" -{ return token::GT_DMAT4; } +{ return token::GT_DMAT3X4; } YY_BREAK case 85: YY_RULE_SETUP #line 158 "gpu/lolfx-scanner.l" -{ return token::GT_DMAT4X2; } +{ return token::GT_DMAT4; } YY_BREAK case 86: YY_RULE_SETUP #line 159 "gpu/lolfx-scanner.l" -{ return token::GT_DMAT4X3; } +{ return token::GT_DMAT4X2; } YY_BREAK case 87: YY_RULE_SETUP #line 160 "gpu/lolfx-scanner.l" +{ return token::GT_DMAT4X3; } + YY_BREAK +case 88: +YY_RULE_SETUP +#line 161 "gpu/lolfx-scanner.l" { return token::GT_DMAT4X4; } YY_BREAK /* * GLSL constant values */ -case 88: -YY_RULE_SETUP -#line 166 "gpu/lolfx-scanner.l" -{ yylval->ival = 1; return token::BOOLCONSTANT; } - YY_BREAK case 89: YY_RULE_SETUP #line 167 "gpu/lolfx-scanner.l" -{ yylval->ival = 0; return token::BOOLCONSTANT; } +{ yylval->ival = 1; return token::BOOLCONSTANT; } YY_BREAK case 90: YY_RULE_SETUP -#line 169 "gpu/lolfx-scanner.l" -{ return token::FIELDSELECTION; } +#line 168 "gpu/lolfx-scanner.l" +{ yylval->ival = 0; return token::BOOLCONSTANT; } YY_BREAK case 91: YY_RULE_SETUP @@ -2325,1449 +2320,1446 @@ YY_RULE_SETUP case 92: YY_RULE_SETUP #line 171 "gpu/lolfx-scanner.l" +{ return token::FIELDSELECTION; } + YY_BREAK +case 93: +YY_RULE_SETUP +#line 172 "gpu/lolfx-scanner.l" { return token::FIELDSELECTION; } YY_BREAK /* * GLSL keywords that are also valid or reserved in HLSL * and HLSL keywords that are also valid or reserved in GLSL. */ -case 93: -YY_RULE_SETUP -#line 178 "gpu/lolfx-scanner.l" -{ return token::GHT_BOOL; } - YY_BREAK case 94: YY_RULE_SETUP #line 179 "gpu/lolfx-scanner.l" -{ return token::GHT_BREAK; } +{ return token::GHT_BOOL; } YY_BREAK case 95: YY_RULE_SETUP #line 180 "gpu/lolfx-scanner.l" -{ return token::GHT_CASE; } +{ return token::GHT_BREAK; } YY_BREAK case 96: YY_RULE_SETUP #line 181 "gpu/lolfx-scanner.l" -{ return token::GHT_CENTROID; } +{ return token::GHT_CASE; } YY_BREAK case 97: YY_RULE_SETUP #line 182 "gpu/lolfx-scanner.l" -{ return token::GHT_CONST; } +{ return token::GHT_CENTROID; } YY_BREAK case 98: YY_RULE_SETUP #line 183 "gpu/lolfx-scanner.l" -{ return token::GHT_CONTINUE; } +{ return token::GHT_CONST; } YY_BREAK case 99: YY_RULE_SETUP #line 184 "gpu/lolfx-scanner.l" -{ return token::GHT_DEFAULT; } +{ return token::GHT_CONTINUE; } YY_BREAK case 100: YY_RULE_SETUP #line 185 "gpu/lolfx-scanner.l" -{ return token::GHT_DISCARD; } +{ return token::GHT_DEFAULT; } YY_BREAK case 101: YY_RULE_SETUP #line 186 "gpu/lolfx-scanner.l" -{ return token::GHT_DO; } +{ return token::GHT_DISCARD; } YY_BREAK case 102: YY_RULE_SETUP #line 187 "gpu/lolfx-scanner.l" -{ return token::GHT_DOUBLE; } +{ return token::GHT_DO; } YY_BREAK case 103: YY_RULE_SETUP #line 188 "gpu/lolfx-scanner.l" -{ return token::GHT_ELSE; } +{ return token::GHT_DOUBLE; } YY_BREAK case 104: YY_RULE_SETUP #line 189 "gpu/lolfx-scanner.l" -{ return token::GHT_FLOAT; } +{ return token::GHT_ELSE; } YY_BREAK case 105: YY_RULE_SETUP #line 190 "gpu/lolfx-scanner.l" -{ return token::GHT_FOR; } +{ return token::GHT_FLOAT; } YY_BREAK case 106: YY_RULE_SETUP #line 191 "gpu/lolfx-scanner.l" -{ return token::GHT_IF; } +{ return token::GHT_FOR; } YY_BREAK case 107: YY_RULE_SETUP #line 192 "gpu/lolfx-scanner.l" -{ return token::GHT_IN; } +{ return token::GHT_IF; } YY_BREAK case 108: YY_RULE_SETUP #line 193 "gpu/lolfx-scanner.l" -{ return token::GHT_INOUT; } +{ return token::GHT_IN; } YY_BREAK case 109: YY_RULE_SETUP #line 194 "gpu/lolfx-scanner.l" -{ return token::GHT_INT; } +{ return token::GHT_INOUT; } YY_BREAK case 110: YY_RULE_SETUP #line 195 "gpu/lolfx-scanner.l" -{ return token::GHT_NOPERSPECTIVE; } +{ return token::GHT_INT; } YY_BREAK case 111: YY_RULE_SETUP #line 196 "gpu/lolfx-scanner.l" -{ return token::GHT_OUT; } +{ return token::GHT_NOPERSPECTIVE; } YY_BREAK case 112: YY_RULE_SETUP #line 197 "gpu/lolfx-scanner.l" -{ return token::GHT_RETURN; } +{ return token::GHT_OUT; } YY_BREAK case 113: YY_RULE_SETUP #line 198 "gpu/lolfx-scanner.l" -{ return token::GHT_SAMPLER1D; } +{ return token::GHT_RETURN; } YY_BREAK case 114: YY_RULE_SETUP #line 199 "gpu/lolfx-scanner.l" -{ return token::GHT_SAMPLER2D; } +{ return token::GHT_SAMPLER1D; } YY_BREAK case 115: YY_RULE_SETUP #line 200 "gpu/lolfx-scanner.l" -{ return token::GHT_SAMPLER3D; } +{ return token::GHT_SAMPLER2D; } YY_BREAK case 116: YY_RULE_SETUP #line 201 "gpu/lolfx-scanner.l" -{ return token::GHT_SAMPLERCUBE; } +{ return token::GHT_SAMPLER3D; } YY_BREAK case 117: YY_RULE_SETUP #line 202 "gpu/lolfx-scanner.l" -{ return token::GHT_STRUCT; } +{ return token::GHT_SAMPLERCUBE; } YY_BREAK case 118: YY_RULE_SETUP #line 203 "gpu/lolfx-scanner.l" -{ return token::GHT_SWITCH; } +{ return token::GHT_STRUCT; } YY_BREAK case 119: YY_RULE_SETUP #line 204 "gpu/lolfx-scanner.l" -{ return token::GHT_UINT; } +{ return token::GHT_SWITCH; } YY_BREAK case 120: YY_RULE_SETUP #line 205 "gpu/lolfx-scanner.l" -{ return token::GHT_UNIFORM; } +{ return token::GHT_UINT; } YY_BREAK case 121: YY_RULE_SETUP #line 206 "gpu/lolfx-scanner.l" -{ return token::GHT_VOID; } +{ return token::GHT_UNIFORM; } YY_BREAK case 122: YY_RULE_SETUP #line 207 "gpu/lolfx-scanner.l" -{ return token::GHT_WHILE; } +{ return token::GHT_VOID; } YY_BREAK case 123: YY_RULE_SETUP -#line 209 "gpu/lolfx-scanner.l" -{ return token::HGT_BOOL; } +#line 208 "gpu/lolfx-scanner.l" +{ return token::GHT_WHILE; } YY_BREAK case 124: YY_RULE_SETUP #line 210 "gpu/lolfx-scanner.l" -{ return token::HGT_BREAK; } +{ return token::HGT_BOOL; } YY_BREAK case 125: YY_RULE_SETUP #line 211 "gpu/lolfx-scanner.l" -{ return token::HGT_CASE; } +{ return token::HGT_BREAK; } YY_BREAK case 126: YY_RULE_SETUP #line 212 "gpu/lolfx-scanner.l" -{ return token::HGT_CENTROID; } +{ return token::HGT_CASE; } YY_BREAK case 127: YY_RULE_SETUP #line 213 "gpu/lolfx-scanner.l" -{ return token::HGT_CONST; } +{ return token::HGT_CENTROID; } YY_BREAK case 128: YY_RULE_SETUP #line 214 "gpu/lolfx-scanner.l" -{ return token::HGT_CONTINUE; } +{ return token::HGT_CONST; } YY_BREAK case 129: YY_RULE_SETUP #line 215 "gpu/lolfx-scanner.l" -{ return token::HGT_DEFAULT; } +{ return token::HGT_CONTINUE; } YY_BREAK case 130: YY_RULE_SETUP #line 216 "gpu/lolfx-scanner.l" -{ return token::HGT_DISCARD; } +{ return token::HGT_DEFAULT; } YY_BREAK case 131: YY_RULE_SETUP #line 217 "gpu/lolfx-scanner.l" -{ return token::HGT_DO; } +{ return token::HGT_DISCARD; } YY_BREAK case 132: YY_RULE_SETUP #line 218 "gpu/lolfx-scanner.l" -{ return token::HGT_DOUBLE; } +{ return token::HGT_DO; } YY_BREAK case 133: YY_RULE_SETUP #line 219 "gpu/lolfx-scanner.l" -{ return token::HGT_ELSE; } +{ return token::HGT_DOUBLE; } YY_BREAK case 134: YY_RULE_SETUP #line 220 "gpu/lolfx-scanner.l" -{ return token::HGT_FLOAT; } +{ return token::HGT_ELSE; } YY_BREAK case 135: YY_RULE_SETUP #line 221 "gpu/lolfx-scanner.l" -{ return token::HGT_FOR; } +{ return token::HGT_FLOAT; } YY_BREAK case 136: YY_RULE_SETUP #line 222 "gpu/lolfx-scanner.l" -{ return token::HGT_IF; } +{ return token::HGT_FOR; } YY_BREAK case 137: YY_RULE_SETUP #line 223 "gpu/lolfx-scanner.l" -{ return token::HGT_IN; } +{ return token::HGT_IF; } YY_BREAK case 138: YY_RULE_SETUP #line 224 "gpu/lolfx-scanner.l" -{ return token::HGT_INOUT; } +{ return token::HGT_IN; } YY_BREAK case 139: YY_RULE_SETUP #line 225 "gpu/lolfx-scanner.l" -{ return token::HGT_INT; } +{ return token::HGT_INOUT; } YY_BREAK case 140: YY_RULE_SETUP #line 226 "gpu/lolfx-scanner.l" -{ return token::HGT_NOPERSPECTIVE; } +{ return token::HGT_INT; } YY_BREAK case 141: YY_RULE_SETUP #line 227 "gpu/lolfx-scanner.l" -{ return token::HGT_OUT; } +{ return token::HGT_NOPERSPECTIVE; } YY_BREAK case 142: YY_RULE_SETUP #line 228 "gpu/lolfx-scanner.l" -{ return token::HGT_RETURN; } +{ return token::HGT_OUT; } YY_BREAK case 143: YY_RULE_SETUP #line 229 "gpu/lolfx-scanner.l" -{ return token::HGT_SAMPLER1D; } +{ return token::HGT_RETURN; } YY_BREAK case 144: YY_RULE_SETUP #line 230 "gpu/lolfx-scanner.l" -{ return token::HGT_SAMPLER2D; } +{ return token::HGT_SAMPLER1D; } YY_BREAK case 145: YY_RULE_SETUP #line 231 "gpu/lolfx-scanner.l" -{ return token::HGT_SAMPLER3D; } +{ return token::HGT_SAMPLER2D; } YY_BREAK case 146: YY_RULE_SETUP #line 232 "gpu/lolfx-scanner.l" -{ return token::HGT_SAMPLERCUBE; } +{ return token::HGT_SAMPLER3D; } YY_BREAK case 147: YY_RULE_SETUP #line 233 "gpu/lolfx-scanner.l" -{ return token::HGT_STRUCT; } +{ return token::HGT_SAMPLERCUBE; } YY_BREAK case 148: YY_RULE_SETUP #line 234 "gpu/lolfx-scanner.l" -{ return token::HGT_SWITCH; } +{ return token::HGT_STRUCT; } YY_BREAK case 149: YY_RULE_SETUP #line 235 "gpu/lolfx-scanner.l" -{ return token::HGT_UINT; } +{ return token::HGT_SWITCH; } YY_BREAK case 150: YY_RULE_SETUP #line 236 "gpu/lolfx-scanner.l" -{ return token::HGT_UNIFORM; } +{ return token::HGT_UINT; } YY_BREAK case 151: YY_RULE_SETUP #line 237 "gpu/lolfx-scanner.l" -{ return token::HGT_VOID; } +{ return token::HGT_UNIFORM; } YY_BREAK case 152: YY_RULE_SETUP #line 238 "gpu/lolfx-scanner.l" +{ return token::HGT_VOID; } + YY_BREAK +case 153: +YY_RULE_SETUP +#line 239 "gpu/lolfx-scanner.l" { return token::HGT_WHILE; } YY_BREAK /* * HLSL keywords * Gathered from http://msdn.microsoft.com/en-us/library/windows/desktop/bb509568%28v=vs.85%29.aspx */ -case 153: -YY_RULE_SETUP -#line 245 "gpu/lolfx-scanner.l" -{ return token::HT_APPENDSTRUCTUREDBUFFER; } - YY_BREAK case 154: YY_RULE_SETUP #line 246 "gpu/lolfx-scanner.l" -{ return token::HT_ASM; } +{ return token::HT_APPENDSTRUCTUREDBUFFER; } YY_BREAK case 155: YY_RULE_SETUP #line 247 "gpu/lolfx-scanner.l" -{ return token::HT_ASM_FRAGMENT; } +{ return token::HT_ASM; } YY_BREAK case 156: YY_RULE_SETUP #line 248 "gpu/lolfx-scanner.l" -{ return token::HT_BLENDSTATE; } +{ return token::HT_ASM_FRAGMENT; } YY_BREAK case 157: YY_RULE_SETUP #line 249 "gpu/lolfx-scanner.l" -{ return token::HT_BUFFER; } +{ return token::HT_BLENDSTATE; } YY_BREAK case 158: YY_RULE_SETUP #line 250 "gpu/lolfx-scanner.l" -{ return token::HT_BYTEADDRESSBUFFER; } +{ return token::HT_BUFFER; } YY_BREAK case 159: YY_RULE_SETUP #line 251 "gpu/lolfx-scanner.l" -{ return token::HT_CBUFFER; } +{ return token::HT_BYTEADDRESSBUFFER; } YY_BREAK case 160: YY_RULE_SETUP #line 252 "gpu/lolfx-scanner.l" -{ return token::HT_COLUMN_MAJOR; } +{ return token::HT_CBUFFER; } YY_BREAK case 161: YY_RULE_SETUP #line 253 "gpu/lolfx-scanner.l" -{ return token::HT_COMPILE; } +{ return token::HT_COLUMN_MAJOR; } YY_BREAK case 162: YY_RULE_SETUP #line 254 "gpu/lolfx-scanner.l" -{ return token::HT_COMPILE_FRAGMENT; } +{ return token::HT_COMPILE; } YY_BREAK case 163: YY_RULE_SETUP #line 255 "gpu/lolfx-scanner.l" -{ return token::HT_COMPILESHADER; } +{ return token::HT_COMPILE_FRAGMENT; } YY_BREAK case 164: YY_RULE_SETUP #line 256 "gpu/lolfx-scanner.l" -{ return token::HT_COMPUTESHADER; } +{ return token::HT_COMPILESHADER; } YY_BREAK case 165: YY_RULE_SETUP #line 257 "gpu/lolfx-scanner.l" -{ return token::HT_CONSUMESTRUCTUREDBUFFER; } +{ return token::HT_COMPUTESHADER; } YY_BREAK case 166: YY_RULE_SETUP #line 258 "gpu/lolfx-scanner.l" -{ return token::HT_DEPTHSTENCILSTATE; } +{ return token::HT_CONSUMESTRUCTUREDBUFFER; } YY_BREAK case 167: YY_RULE_SETUP #line 259 "gpu/lolfx-scanner.l" -{ return token::HT_DEPTHSTENCILVIEW; } +{ return token::HT_DEPTHSTENCILSTATE; } YY_BREAK case 168: YY_RULE_SETUP #line 260 "gpu/lolfx-scanner.l" -{ return token::HT_DOMAINSHADER; } +{ return token::HT_DEPTHSTENCILVIEW; } YY_BREAK case 169: YY_RULE_SETUP #line 261 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD; } +{ return token::HT_DOMAINSHADER; } YY_BREAK case 170: YY_RULE_SETUP #line 262 "gpu/lolfx-scanner.l" -{ return token::HT_EXTERN; } +{ return token::HT_DWORD; } YY_BREAK case 171: YY_RULE_SETUP #line 263 "gpu/lolfx-scanner.l" -{ return token::HT_FALSE; } +{ return token::HT_EXTERN; } YY_BREAK case 172: YY_RULE_SETUP #line 264 "gpu/lolfx-scanner.l" -{ return token::HT_FXGROUP; } +{ return token::HT_FALSE; } YY_BREAK case 173: YY_RULE_SETUP #line 265 "gpu/lolfx-scanner.l" -{ return token::HT_GEOMETRYSHADER; } +{ return token::HT_FXGROUP; } YY_BREAK case 174: YY_RULE_SETUP #line 266 "gpu/lolfx-scanner.l" -{ return token::HT_GROUPSHARED; } +{ return token::HT_GEOMETRYSHADER; } YY_BREAK case 175: YY_RULE_SETUP #line 267 "gpu/lolfx-scanner.l" -{ return token::HT_HALF; } +{ return token::HT_GROUPSHARED; } YY_BREAK case 176: YY_RULE_SETUP #line 268 "gpu/lolfx-scanner.l" -{ return token::HT_HULLSHADER; } +{ return token::HT_HALF; } YY_BREAK case 177: YY_RULE_SETUP #line 269 "gpu/lolfx-scanner.l" -{ return token::HT_INLINE; } +{ return token::HT_HULLSHADER; } YY_BREAK case 178: YY_RULE_SETUP #line 270 "gpu/lolfx-scanner.l" -{ return token::HT_INPUTPATCH; } +{ return token::HT_INLINE; } YY_BREAK case 179: YY_RULE_SETUP #line 271 "gpu/lolfx-scanner.l" -{ return token::HT_INTERFACE; } +{ return token::HT_INPUTPATCH; } YY_BREAK case 180: YY_RULE_SETUP #line 272 "gpu/lolfx-scanner.l" -{ return token::HT_LINE; } +{ return token::HT_INTERFACE; } YY_BREAK case 181: YY_RULE_SETUP #line 273 "gpu/lolfx-scanner.l" -{ return token::HT_LINEADJ; } +{ return token::HT_LINE; } YY_BREAK case 182: YY_RULE_SETUP #line 274 "gpu/lolfx-scanner.l" -{ return token::HT_LINEAR; } +{ return token::HT_LINEADJ; } YY_BREAK case 183: YY_RULE_SETUP #line 275 "gpu/lolfx-scanner.l" -{ return token::HT_LINESTREAM; } +{ return token::HT_LINEAR; } YY_BREAK case 184: YY_RULE_SETUP #line 276 "gpu/lolfx-scanner.l" -{ return token::HT_MATRIX; } +{ return token::HT_LINESTREAM; } YY_BREAK case 185: YY_RULE_SETUP #line 277 "gpu/lolfx-scanner.l" -{ return token::HT_NAMESPACE; } +{ return token::HT_MATRIX; } YY_BREAK case 186: YY_RULE_SETUP #line 278 "gpu/lolfx-scanner.l" -{ return token::HT_NOINTERPOLATION; } +{ return token::HT_NAMESPACE; } YY_BREAK case 187: YY_RULE_SETUP #line 279 "gpu/lolfx-scanner.l" -{ return token::HT_NULL; } +{ return token::HT_NOINTERPOLATION; } YY_BREAK case 188: YY_RULE_SETUP #line 280 "gpu/lolfx-scanner.l" -{ return token::HT_OUTPUTPATCH; } +{ return token::HT_NULL; } YY_BREAK case 189: YY_RULE_SETUP #line 281 "gpu/lolfx-scanner.l" -{ return token::HT_PACKOFFSET; } +{ return token::HT_OUTPUTPATCH; } YY_BREAK case 190: YY_RULE_SETUP #line 282 "gpu/lolfx-scanner.l" -{ return token::HT_PASS; } +{ return token::HT_PACKOFFSET; } YY_BREAK case 191: YY_RULE_SETUP #line 283 "gpu/lolfx-scanner.l" -{ return token::HT_PIXELFRAGMENT; } +{ return token::HT_PASS; } YY_BREAK case 192: YY_RULE_SETUP #line 284 "gpu/lolfx-scanner.l" -{ return token::HT_PIXELSHADER; } +{ return token::HT_PIXELFRAGMENT; } YY_BREAK case 193: YY_RULE_SETUP #line 285 "gpu/lolfx-scanner.l" -{ return token::HT_POINT; } +{ return token::HT_PIXELSHADER; } YY_BREAK case 194: YY_RULE_SETUP #line 286 "gpu/lolfx-scanner.l" -{ return token::HT_POINTSTREAM; } +{ return token::HT_POINT; } YY_BREAK case 195: YY_RULE_SETUP #line 287 "gpu/lolfx-scanner.l" -{ return token::HT_PRECISE; } +{ return token::HT_POINTSTREAM; } YY_BREAK case 196: YY_RULE_SETUP #line 288 "gpu/lolfx-scanner.l" -{ return token::HT_RASTERIZERSTATE; } +{ return token::HT_PRECISE; } YY_BREAK case 197: YY_RULE_SETUP #line 289 "gpu/lolfx-scanner.l" -{ return token::HT_RENDERTARGETVIEW; } +{ return token::HT_RASTERIZERSTATE; } YY_BREAK case 198: YY_RULE_SETUP #line 290 "gpu/lolfx-scanner.l" -{ return token::HT_REGISTER; } +{ return token::HT_RENDERTARGETVIEW; } YY_BREAK case 199: YY_RULE_SETUP #line 291 "gpu/lolfx-scanner.l" -{ return token::HT_ROW_MAJOR; } +{ return token::HT_REGISTER; } YY_BREAK case 200: YY_RULE_SETUP #line 292 "gpu/lolfx-scanner.l" -{ return token::HT_RWBUFFER; } +{ return token::HT_ROW_MAJOR; } YY_BREAK case 201: YY_RULE_SETUP #line 293 "gpu/lolfx-scanner.l" -{ return token::HT_RWBYTEADDRESSBUFFER; } +{ return token::HT_RWBUFFER; } YY_BREAK case 202: YY_RULE_SETUP #line 294 "gpu/lolfx-scanner.l" -{ return token::HT_RWSTRUCTUREDBUFFER; } +{ return token::HT_RWBYTEADDRESSBUFFER; } YY_BREAK case 203: YY_RULE_SETUP #line 295 "gpu/lolfx-scanner.l" -{ return token::HT_RWTEXTURE1D; } +{ return token::HT_RWSTRUCTUREDBUFFER; } YY_BREAK case 204: YY_RULE_SETUP #line 296 "gpu/lolfx-scanner.l" -{ return token::HT_RWTEXTURE1DARRAY; } +{ return token::HT_RWTEXTURE1D; } YY_BREAK case 205: YY_RULE_SETUP #line 297 "gpu/lolfx-scanner.l" -{ return token::HT_RWTEXTURE2D; } +{ return token::HT_RWTEXTURE1DARRAY; } YY_BREAK case 206: YY_RULE_SETUP #line 298 "gpu/lolfx-scanner.l" -{ return token::HT_RWTEXTURE2DARRAY; } +{ return token::HT_RWTEXTURE2D; } YY_BREAK case 207: YY_RULE_SETUP #line 299 "gpu/lolfx-scanner.l" -{ return token::HT_RWTEXTURE3D; } +{ return token::HT_RWTEXTURE2DARRAY; } YY_BREAK case 208: YY_RULE_SETUP #line 300 "gpu/lolfx-scanner.l" -{ return token::HT_SAMPLER; } +{ return token::HT_RWTEXTURE3D; } YY_BREAK case 209: YY_RULE_SETUP #line 301 "gpu/lolfx-scanner.l" -{ return token::HT_SAMPLER_STATE; } +{ return token::HT_SAMPLER; } YY_BREAK case 210: YY_RULE_SETUP #line 302 "gpu/lolfx-scanner.l" -{ return token::HT_SAMPLERSTATE; } +{ return token::HT_SAMPLER_STATE; } YY_BREAK case 211: YY_RULE_SETUP #line 303 "gpu/lolfx-scanner.l" -{ return token::HT_SAMPLERCOMPARISONSTATE; } +{ return token::HT_SAMPLERSTATE; } YY_BREAK case 212: YY_RULE_SETUP #line 304 "gpu/lolfx-scanner.l" -{ return token::HT_SHARED; } +{ return token::HT_SAMPLERCOMPARISONSTATE; } YY_BREAK case 213: YY_RULE_SETUP #line 305 "gpu/lolfx-scanner.l" -{ return token::HT_SNORM; } +{ return token::HT_SHARED; } YY_BREAK case 214: YY_RULE_SETUP #line 306 "gpu/lolfx-scanner.l" -{ return token::HT_STATEBLOCK; } +{ return token::HT_SNORM; } YY_BREAK case 215: YY_RULE_SETUP #line 307 "gpu/lolfx-scanner.l" -{ return token::HT_STATEBLOCK_STATE; } +{ return token::HT_STATEBLOCK; } YY_BREAK case 216: YY_RULE_SETUP #line 308 "gpu/lolfx-scanner.l" -{ return token::HT_STATIC; } +{ return token::HT_STATEBLOCK_STATE; } YY_BREAK case 217: YY_RULE_SETUP #line 309 "gpu/lolfx-scanner.l" -{ return token::HT_STRING; } +{ return token::HT_STATIC; } YY_BREAK case 218: YY_RULE_SETUP #line 310 "gpu/lolfx-scanner.l" -{ return token::HT_STRUCTUREDBUFFER; } +{ return token::HT_STRING; } YY_BREAK case 219: YY_RULE_SETUP #line 311 "gpu/lolfx-scanner.l" -{ return token::HT_TBUFFER; } +{ return token::HT_STRUCTUREDBUFFER; } YY_BREAK case 220: YY_RULE_SETUP #line 312 "gpu/lolfx-scanner.l" -{ return token::HT_TECHNIQUE; } +{ return token::HT_TBUFFER; } YY_BREAK case 221: YY_RULE_SETUP #line 313 "gpu/lolfx-scanner.l" -{ return token::HT_TECHNIQUE10; } +{ return token::HT_TECHNIQUE; } YY_BREAK case 222: YY_RULE_SETUP #line 314 "gpu/lolfx-scanner.l" -{ return token::HT_TECHNIQUE11XZ; } +{ return token::HT_TECHNIQUE10; } YY_BREAK case 223: YY_RULE_SETUP #line 315 "gpu/lolfx-scanner.l" -{ return token::HT_TEXTURE; } +{ return token::HT_TECHNIQUE11XZ; } YY_BREAK case 224: YY_RULE_SETUP #line 316 "gpu/lolfx-scanner.l" -{ return token::HT_TEXTURE1D; } +{ return token::HT_TEXTURE; } YY_BREAK case 225: YY_RULE_SETUP #line 317 "gpu/lolfx-scanner.l" -{ return token::HT_TEXTURE1DARRAY; } +{ return token::HT_TEXTURE1D; } YY_BREAK case 226: YY_RULE_SETUP #line 318 "gpu/lolfx-scanner.l" -{ return token::HT_TEXTURE2D; } +{ return token::HT_TEXTURE1DARRAY; } YY_BREAK case 227: YY_RULE_SETUP #line 319 "gpu/lolfx-scanner.l" -{ return token::HT_TEXTURE2DARRAY; } +{ return token::HT_TEXTURE2D; } YY_BREAK case 228: YY_RULE_SETUP #line 320 "gpu/lolfx-scanner.l" -{ return token::HT_TEXTURE2DMS; } +{ return token::HT_TEXTURE2DARRAY; } YY_BREAK case 229: YY_RULE_SETUP #line 321 "gpu/lolfx-scanner.l" -{ return token::HT_TEXTURE2DMSARRAY; } +{ return token::HT_TEXTURE2DMS; } YY_BREAK case 230: YY_RULE_SETUP #line 322 "gpu/lolfx-scanner.l" -{ return token::HT_TEXTURE3D; } +{ return token::HT_TEXTURE2DMSARRAY; } YY_BREAK case 231: YY_RULE_SETUP #line 323 "gpu/lolfx-scanner.l" -{ return token::HT_TEXTURECUBE; } +{ return token::HT_TEXTURE3D; } YY_BREAK case 232: YY_RULE_SETUP #line 324 "gpu/lolfx-scanner.l" -{ return token::HT_TEXTURECUBEARRAY; } +{ return token::HT_TEXTURECUBE; } YY_BREAK case 233: YY_RULE_SETUP #line 325 "gpu/lolfx-scanner.l" -{ return token::HT_TRUE; } +{ return token::HT_TEXTURECUBEARRAY; } YY_BREAK case 234: YY_RULE_SETUP #line 326 "gpu/lolfx-scanner.l" -{ return token::HT_TYPEDEF; } +{ return token::HT_TRUE; } YY_BREAK case 235: YY_RULE_SETUP #line 327 "gpu/lolfx-scanner.l" -{ return token::HT_TRIANGLE; } +{ return token::HT_TYPEDEF; } YY_BREAK case 236: YY_RULE_SETUP #line 328 "gpu/lolfx-scanner.l" -{ return token::HT_TRIANGLEADJ; } +{ return token::HT_TRIANGLE; } YY_BREAK case 237: YY_RULE_SETUP #line 329 "gpu/lolfx-scanner.l" -{ return token::HT_TRIANGLESTREAM; } +{ return token::HT_TRIANGLEADJ; } YY_BREAK case 238: YY_RULE_SETUP #line 330 "gpu/lolfx-scanner.l" -{ return token::HT_UNORM; } +{ return token::HT_TRIANGLESTREAM; } YY_BREAK case 239: YY_RULE_SETUP #line 331 "gpu/lolfx-scanner.l" -{ return token::HT_VECTOR; } +{ return token::HT_UNORM; } YY_BREAK case 240: YY_RULE_SETUP #line 332 "gpu/lolfx-scanner.l" -{ return token::HT_VERTEXFRAGMENT; } +{ return token::HT_VECTOR; } YY_BREAK case 241: YY_RULE_SETUP #line 333 "gpu/lolfx-scanner.l" -{ return token::HT_VERTEXSHADER; } +{ return token::HT_VERTEXFRAGMENT; } YY_BREAK case 242: YY_RULE_SETUP #line 334 "gpu/lolfx-scanner.l" +{ return token::HT_VERTEXSHADER; } + YY_BREAK +case 243: +YY_RULE_SETUP +#line 335 "gpu/lolfx-scanner.l" { return token::HT_VOLATILE; } YY_BREAK /* * HLSL vector types * TODO: this can probably be factored somehow */ -case 243: -YY_RULE_SETUP -#line 341 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL1; } - YY_BREAK case 244: YY_RULE_SETUP #line 342 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL1x1; } +{ return token::HT_BOOL1; } YY_BREAK case 245: YY_RULE_SETUP #line 343 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL2x1; } +{ return token::HT_BOOL1x1; } YY_BREAK case 246: YY_RULE_SETUP #line 344 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL3x1; } +{ return token::HT_BOOL2x1; } YY_BREAK case 247: YY_RULE_SETUP #line 345 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL4x1; } +{ return token::HT_BOOL3x1; } YY_BREAK case 248: YY_RULE_SETUP #line 346 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL2; } +{ return token::HT_BOOL4x1; } YY_BREAK case 249: YY_RULE_SETUP #line 347 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL1x2; } +{ return token::HT_BOOL2; } YY_BREAK case 250: YY_RULE_SETUP #line 348 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL2x2; } +{ return token::HT_BOOL1x2; } YY_BREAK case 251: YY_RULE_SETUP #line 349 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL3x2; } +{ return token::HT_BOOL2x2; } YY_BREAK case 252: YY_RULE_SETUP #line 350 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL4x2; } +{ return token::HT_BOOL3x2; } YY_BREAK case 253: YY_RULE_SETUP #line 351 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL3; } +{ return token::HT_BOOL4x2; } YY_BREAK case 254: YY_RULE_SETUP #line 352 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL1x3; } +{ return token::HT_BOOL3; } YY_BREAK case 255: YY_RULE_SETUP #line 353 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL2x3; } +{ return token::HT_BOOL1x3; } YY_BREAK case 256: YY_RULE_SETUP #line 354 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL3x3; } +{ return token::HT_BOOL2x3; } YY_BREAK case 257: YY_RULE_SETUP #line 355 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL4x3; } +{ return token::HT_BOOL3x3; } YY_BREAK case 258: YY_RULE_SETUP #line 356 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL4; } +{ return token::HT_BOOL4x3; } YY_BREAK case 259: YY_RULE_SETUP #line 357 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL1x4; } +{ return token::HT_BOOL4; } YY_BREAK case 260: YY_RULE_SETUP #line 358 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL2x4; } +{ return token::HT_BOOL1x4; } YY_BREAK case 261: YY_RULE_SETUP #line 359 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL3x4; } +{ return token::HT_BOOL2x4; } YY_BREAK case 262: YY_RULE_SETUP #line 360 "gpu/lolfx-scanner.l" -{ return token::HT_BOOL4x4; } +{ return token::HT_BOOL3x4; } YY_BREAK case 263: YY_RULE_SETUP -#line 362 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT1; } +#line 361 "gpu/lolfx-scanner.l" +{ return token::HT_BOOL4x4; } YY_BREAK case 264: YY_RULE_SETUP #line 363 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT1x1; } +{ return token::HT_FLOAT1; } YY_BREAK case 265: YY_RULE_SETUP #line 364 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT2x1; } +{ return token::HT_FLOAT1x1; } YY_BREAK case 266: YY_RULE_SETUP #line 365 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT3x1; } +{ return token::HT_FLOAT2x1; } YY_BREAK case 267: YY_RULE_SETUP #line 366 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT4x1; } +{ return token::HT_FLOAT3x1; } YY_BREAK case 268: YY_RULE_SETUP #line 367 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT2; } +{ return token::HT_FLOAT4x1; } YY_BREAK case 269: YY_RULE_SETUP #line 368 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT1x2; } +{ return token::HT_FLOAT2; } YY_BREAK case 270: YY_RULE_SETUP #line 369 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT2x2; } +{ return token::HT_FLOAT1x2; } YY_BREAK case 271: YY_RULE_SETUP #line 370 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT3x2; } +{ return token::HT_FLOAT2x2; } YY_BREAK case 272: YY_RULE_SETUP #line 371 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT4x2; } +{ return token::HT_FLOAT3x2; } YY_BREAK case 273: YY_RULE_SETUP #line 372 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT3; } +{ return token::HT_FLOAT4x2; } YY_BREAK case 274: YY_RULE_SETUP #line 373 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT1x3; } +{ return token::HT_FLOAT3; } YY_BREAK case 275: YY_RULE_SETUP #line 374 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT2x3; } +{ return token::HT_FLOAT1x3; } YY_BREAK case 276: YY_RULE_SETUP #line 375 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT3x3; } +{ return token::HT_FLOAT2x3; } YY_BREAK case 277: YY_RULE_SETUP #line 376 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT4x3; } +{ return token::HT_FLOAT3x3; } YY_BREAK case 278: YY_RULE_SETUP #line 377 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT4; } +{ return token::HT_FLOAT4x3; } YY_BREAK case 279: YY_RULE_SETUP #line 378 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT1x4; } +{ return token::HT_FLOAT4; } YY_BREAK case 280: YY_RULE_SETUP #line 379 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT2x4; } +{ return token::HT_FLOAT1x4; } YY_BREAK case 281: YY_RULE_SETUP #line 380 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT3x4; } +{ return token::HT_FLOAT2x4; } YY_BREAK case 282: YY_RULE_SETUP #line 381 "gpu/lolfx-scanner.l" -{ return token::HT_FLOAT4x4; } +{ return token::HT_FLOAT3x4; } YY_BREAK case 283: YY_RULE_SETUP -#line 383 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE1; } +#line 382 "gpu/lolfx-scanner.l" +{ return token::HT_FLOAT4x4; } YY_BREAK case 284: YY_RULE_SETUP #line 384 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE1x1; } +{ return token::HT_DOUBLE1; } YY_BREAK case 285: YY_RULE_SETUP #line 385 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE2x1; } +{ return token::HT_DOUBLE1x1; } YY_BREAK case 286: YY_RULE_SETUP #line 386 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE3x1; } +{ return token::HT_DOUBLE2x1; } YY_BREAK case 287: YY_RULE_SETUP #line 387 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE4x1; } +{ return token::HT_DOUBLE3x1; } YY_BREAK case 288: YY_RULE_SETUP #line 388 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE2; } +{ return token::HT_DOUBLE4x1; } YY_BREAK case 289: YY_RULE_SETUP #line 389 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE1x2; } +{ return token::HT_DOUBLE2; } YY_BREAK case 290: YY_RULE_SETUP #line 390 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE2x2; } +{ return token::HT_DOUBLE1x2; } YY_BREAK case 291: YY_RULE_SETUP #line 391 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE3x2; } +{ return token::HT_DOUBLE2x2; } YY_BREAK case 292: YY_RULE_SETUP #line 392 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE4x2; } +{ return token::HT_DOUBLE3x2; } YY_BREAK case 293: YY_RULE_SETUP #line 393 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE3; } +{ return token::HT_DOUBLE4x2; } YY_BREAK case 294: YY_RULE_SETUP #line 394 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE1x3; } +{ return token::HT_DOUBLE3; } YY_BREAK case 295: YY_RULE_SETUP #line 395 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE2x3; } +{ return token::HT_DOUBLE1x3; } YY_BREAK case 296: YY_RULE_SETUP #line 396 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE3x3; } +{ return token::HT_DOUBLE2x3; } YY_BREAK case 297: YY_RULE_SETUP #line 397 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE4x3; } +{ return token::HT_DOUBLE3x3; } YY_BREAK case 298: YY_RULE_SETUP #line 398 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE4; } +{ return token::HT_DOUBLE4x3; } YY_BREAK case 299: YY_RULE_SETUP #line 399 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE1x4; } +{ return token::HT_DOUBLE4; } YY_BREAK case 300: YY_RULE_SETUP #line 400 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE2x4; } +{ return token::HT_DOUBLE1x4; } YY_BREAK case 301: YY_RULE_SETUP #line 401 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE3x4; } +{ return token::HT_DOUBLE2x4; } YY_BREAK case 302: YY_RULE_SETUP #line 402 "gpu/lolfx-scanner.l" -{ return token::HT_DOUBLE4x4; } +{ return token::HT_DOUBLE3x4; } YY_BREAK case 303: YY_RULE_SETUP -#line 404 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD1; } +#line 403 "gpu/lolfx-scanner.l" +{ return token::HT_DOUBLE4x4; } YY_BREAK case 304: YY_RULE_SETUP #line 405 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD1x1; } +{ return token::HT_DWORD1; } YY_BREAK case 305: YY_RULE_SETUP #line 406 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD2x1; } +{ return token::HT_DWORD1x1; } YY_BREAK case 306: YY_RULE_SETUP #line 407 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD3x1; } +{ return token::HT_DWORD2x1; } YY_BREAK case 307: YY_RULE_SETUP #line 408 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD4x1; } +{ return token::HT_DWORD3x1; } YY_BREAK case 308: YY_RULE_SETUP #line 409 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD2; } +{ return token::HT_DWORD4x1; } YY_BREAK case 309: YY_RULE_SETUP #line 410 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD1x2; } +{ return token::HT_DWORD2; } YY_BREAK case 310: YY_RULE_SETUP #line 411 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD2x2; } +{ return token::HT_DWORD1x2; } YY_BREAK case 311: YY_RULE_SETUP #line 412 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD3x2; } +{ return token::HT_DWORD2x2; } YY_BREAK case 312: YY_RULE_SETUP #line 413 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD4x2; } +{ return token::HT_DWORD3x2; } YY_BREAK case 313: YY_RULE_SETUP #line 414 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD3; } +{ return token::HT_DWORD4x2; } YY_BREAK case 314: YY_RULE_SETUP #line 415 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD1x3; } +{ return token::HT_DWORD3; } YY_BREAK case 315: YY_RULE_SETUP #line 416 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD2x3; } +{ return token::HT_DWORD1x3; } YY_BREAK case 316: YY_RULE_SETUP #line 417 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD3x3; } +{ return token::HT_DWORD2x3; } YY_BREAK case 317: YY_RULE_SETUP #line 418 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD4x3; } +{ return token::HT_DWORD3x3; } YY_BREAK case 318: YY_RULE_SETUP #line 419 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD4; } +{ return token::HT_DWORD4x3; } YY_BREAK case 319: YY_RULE_SETUP #line 420 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD1x4; } +{ return token::HT_DWORD4; } YY_BREAK case 320: YY_RULE_SETUP #line 421 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD2x4; } +{ return token::HT_DWORD1x4; } YY_BREAK case 321: YY_RULE_SETUP #line 422 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD3x4; } +{ return token::HT_DWORD2x4; } YY_BREAK case 322: YY_RULE_SETUP #line 423 "gpu/lolfx-scanner.l" -{ return token::HT_DWORD4x4; } +{ return token::HT_DWORD3x4; } YY_BREAK case 323: YY_RULE_SETUP -#line 425 "gpu/lolfx-scanner.l" -{ return token::HT_INT1; } +#line 424 "gpu/lolfx-scanner.l" +{ return token::HT_DWORD4x4; } YY_BREAK case 324: YY_RULE_SETUP #line 426 "gpu/lolfx-scanner.l" -{ return token::HT_INT1x1; } +{ return token::HT_INT1; } YY_BREAK case 325: YY_RULE_SETUP #line 427 "gpu/lolfx-scanner.l" -{ return token::HT_INT2x1; } +{ return token::HT_INT1x1; } YY_BREAK case 326: YY_RULE_SETUP #line 428 "gpu/lolfx-scanner.l" -{ return token::HT_INT3x1; } +{ return token::HT_INT2x1; } YY_BREAK case 327: YY_RULE_SETUP #line 429 "gpu/lolfx-scanner.l" -{ return token::HT_INT4x1; } +{ return token::HT_INT3x1; } YY_BREAK case 328: YY_RULE_SETUP #line 430 "gpu/lolfx-scanner.l" -{ return token::HT_INT2; } +{ return token::HT_INT4x1; } YY_BREAK case 329: YY_RULE_SETUP #line 431 "gpu/lolfx-scanner.l" -{ return token::HT_INT1x2; } +{ return token::HT_INT2; } YY_BREAK case 330: YY_RULE_SETUP #line 432 "gpu/lolfx-scanner.l" -{ return token::HT_INT2x2; } +{ return token::HT_INT1x2; } YY_BREAK case 331: YY_RULE_SETUP #line 433 "gpu/lolfx-scanner.l" -{ return token::HT_INT3x2; } +{ return token::HT_INT2x2; } YY_BREAK case 332: YY_RULE_SETUP #line 434 "gpu/lolfx-scanner.l" -{ return token::HT_INT4x2; } +{ return token::HT_INT3x2; } YY_BREAK case 333: YY_RULE_SETUP #line 435 "gpu/lolfx-scanner.l" -{ return token::HT_INT3; } +{ return token::HT_INT4x2; } YY_BREAK case 334: YY_RULE_SETUP #line 436 "gpu/lolfx-scanner.l" -{ return token::HT_INT1x3; } +{ return token::HT_INT3; } YY_BREAK case 335: YY_RULE_SETUP #line 437 "gpu/lolfx-scanner.l" -{ return token::HT_INT2x3; } +{ return token::HT_INT1x3; } YY_BREAK case 336: YY_RULE_SETUP #line 438 "gpu/lolfx-scanner.l" -{ return token::HT_INT3x3; } +{ return token::HT_INT2x3; } YY_BREAK case 337: YY_RULE_SETUP #line 439 "gpu/lolfx-scanner.l" -{ return token::HT_INT4x3; } +{ return token::HT_INT3x3; } YY_BREAK case 338: YY_RULE_SETUP #line 440 "gpu/lolfx-scanner.l" -{ return token::HT_INT4; } +{ return token::HT_INT4x3; } YY_BREAK case 339: YY_RULE_SETUP #line 441 "gpu/lolfx-scanner.l" -{ return token::HT_INT1x4; } +{ return token::HT_INT4; } YY_BREAK case 340: YY_RULE_SETUP #line 442 "gpu/lolfx-scanner.l" -{ return token::HT_INT2x4; } +{ return token::HT_INT1x4; } YY_BREAK case 341: YY_RULE_SETUP #line 443 "gpu/lolfx-scanner.l" -{ return token::HT_INT3x4; } +{ return token::HT_INT2x4; } YY_BREAK case 342: YY_RULE_SETUP #line 444 "gpu/lolfx-scanner.l" -{ return token::HT_INT4x4; } +{ return token::HT_INT3x4; } YY_BREAK case 343: YY_RULE_SETUP -#line 446 "gpu/lolfx-scanner.l" -{ return token::HT_UINT1; } +#line 445 "gpu/lolfx-scanner.l" +{ return token::HT_INT4x4; } YY_BREAK case 344: YY_RULE_SETUP #line 447 "gpu/lolfx-scanner.l" -{ return token::HT_UINT1x1; } +{ return token::HT_UINT1; } YY_BREAK case 345: YY_RULE_SETUP #line 448 "gpu/lolfx-scanner.l" -{ return token::HT_UINT2x1; } +{ return token::HT_UINT1x1; } YY_BREAK case 346: YY_RULE_SETUP #line 449 "gpu/lolfx-scanner.l" -{ return token::HT_UINT3x1; } +{ return token::HT_UINT2x1; } YY_BREAK case 347: YY_RULE_SETUP #line 450 "gpu/lolfx-scanner.l" -{ return token::HT_UINT4x1; } +{ return token::HT_UINT3x1; } YY_BREAK case 348: YY_RULE_SETUP #line 451 "gpu/lolfx-scanner.l" -{ return token::HT_UINT2; } +{ return token::HT_UINT4x1; } YY_BREAK case 349: YY_RULE_SETUP #line 452 "gpu/lolfx-scanner.l" -{ return token::HT_UINT1x2; } +{ return token::HT_UINT2; } YY_BREAK case 350: YY_RULE_SETUP #line 453 "gpu/lolfx-scanner.l" -{ return token::HT_UINT2x2; } +{ return token::HT_UINT1x2; } YY_BREAK case 351: YY_RULE_SETUP #line 454 "gpu/lolfx-scanner.l" -{ return token::HT_UINT3x2; } +{ return token::HT_UINT2x2; } YY_BREAK case 352: YY_RULE_SETUP #line 455 "gpu/lolfx-scanner.l" -{ return token::HT_UINT4x2; } +{ return token::HT_UINT3x2; } YY_BREAK case 353: YY_RULE_SETUP #line 456 "gpu/lolfx-scanner.l" -{ return token::HT_UINT3; } +{ return token::HT_UINT4x2; } YY_BREAK case 354: YY_RULE_SETUP #line 457 "gpu/lolfx-scanner.l" -{ return token::HT_UINT1x3; } +{ return token::HT_UINT3; } YY_BREAK case 355: YY_RULE_SETUP #line 458 "gpu/lolfx-scanner.l" -{ return token::HT_UINT2x3; } +{ return token::HT_UINT1x3; } YY_BREAK case 356: YY_RULE_SETUP #line 459 "gpu/lolfx-scanner.l" -{ return token::HT_UINT3x3; } +{ return token::HT_UINT2x3; } YY_BREAK case 357: YY_RULE_SETUP #line 460 "gpu/lolfx-scanner.l" -{ return token::HT_UINT4x3; } +{ return token::HT_UINT3x3; } YY_BREAK case 358: YY_RULE_SETUP #line 461 "gpu/lolfx-scanner.l" -{ return token::HT_UINT4; } +{ return token::HT_UINT4x3; } YY_BREAK case 359: YY_RULE_SETUP #line 462 "gpu/lolfx-scanner.l" -{ return token::HT_UINT1x4; } +{ return token::HT_UINT4; } YY_BREAK case 360: YY_RULE_SETUP #line 463 "gpu/lolfx-scanner.l" -{ return token::HT_UINT2x4; } +{ return token::HT_UINT1x4; } YY_BREAK case 361: YY_RULE_SETUP #line 464 "gpu/lolfx-scanner.l" -{ return token::HT_UINT3x4; } +{ return token::HT_UINT2x4; } YY_BREAK case 362: YY_RULE_SETUP #line 465 "gpu/lolfx-scanner.l" +{ return token::HT_UINT3x4; } + YY_BREAK +case 363: +YY_RULE_SETUP +#line 466 "gpu/lolfx-scanner.l" { return token::HT_UINT4x4; } YY_BREAK /* * HLSL preprocessor directives * Gathered from http://msdn.microsoft.com/en-us/library/windows/desktop/bb943993%28v=vs.85%29.aspx */ -case 363: -YY_RULE_SETUP -#line 472 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_DEFINE; } - YY_BREAK case 364: YY_RULE_SETUP #line 473 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_ELIF; } +{ return token::PREPROCESSOR_DEFINE; } YY_BREAK case 365: YY_RULE_SETUP #line 474 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_ELSE; } +{ return token::PREPROCESSOR_ELIF; } YY_BREAK case 366: YY_RULE_SETUP #line 475 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_ENDIF; } +{ return token::PREPROCESSOR_ELSE; } YY_BREAK case 367: YY_RULE_SETUP #line 476 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_ERROR; } +{ return token::PREPROCESSOR_ENDIF; } YY_BREAK case 368: YY_RULE_SETUP #line 477 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_IF; } +{ return token::PREPROCESSOR_ERROR; } YY_BREAK case 369: YY_RULE_SETUP #line 478 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_IFDEF; } +{ return token::PREPROCESSOR_IF; } YY_BREAK case 370: YY_RULE_SETUP #line 479 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_IFNDEF; } +{ return token::PREPROCESSOR_IFDEF; } YY_BREAK case 371: YY_RULE_SETUP #line 480 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_INCLUDE; } +{ return token::PREPROCESSOR_IFNDEF; } YY_BREAK case 372: YY_RULE_SETUP #line 481 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_LINE; } +{ return token::PREPROCESSOR_INCLUDE; } YY_BREAK case 373: YY_RULE_SETUP #line 482 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_PRAGMA; } +{ return token::PREPROCESSOR_LINE; } YY_BREAK case 374: YY_RULE_SETUP #line 483 "gpu/lolfx-scanner.l" -{ return token::PREPROCESSOR_UNDEF; } +{ return token::PREPROCESSOR_PRAGMA; } YY_BREAK -/* - * GLSL preprocessor directives - */ case 375: YY_RULE_SETUP -#line 489 "gpu/lolfx-scanner.l" -{ /* ignore for now */ } +#line 484 "gpu/lolfx-scanner.l" +{ return token::PREPROCESSOR_UNDEF; } YY_BREAK /* - * LolFx preprocessor directives + * GLSL preprocessor directives */ case 376: YY_RULE_SETUP -#line 495 "gpu/lolfx-scanner.l" -{ return token::PRAGMA_LOLFX; } +#line 490 "gpu/lolfx-scanner.l" +{ /* ignore for now */ } YY_BREAK /* * HLSL reserved keywords @@ -3775,162 +3767,162 @@ YY_RULE_SETUP */ case 377: YY_RULE_SETUP -#line 502 "gpu/lolfx-scanner.l" +#line 497 "gpu/lolfx-scanner.l" { return token::HT_AUTO; } YY_BREAK case 378: YY_RULE_SETUP -#line 503 "gpu/lolfx-scanner.l" +#line 498 "gpu/lolfx-scanner.l" { return token::HT_CATCH; } YY_BREAK case 379: YY_RULE_SETUP -#line 504 "gpu/lolfx-scanner.l" +#line 499 "gpu/lolfx-scanner.l" { return token::HT_CHAR; } YY_BREAK case 380: YY_RULE_SETUP -#line 505 "gpu/lolfx-scanner.l" +#line 500 "gpu/lolfx-scanner.l" { return token::HT_CLASS; } YY_BREAK case 381: YY_RULE_SETUP -#line 506 "gpu/lolfx-scanner.l" +#line 501 "gpu/lolfx-scanner.l" { return token::HT_CONST_CAST; } YY_BREAK case 382: YY_RULE_SETUP -#line 507 "gpu/lolfx-scanner.l" +#line 502 "gpu/lolfx-scanner.l" { return token::HT_DELETE; } YY_BREAK case 383: YY_RULE_SETUP -#line 508 "gpu/lolfx-scanner.l" +#line 503 "gpu/lolfx-scanner.l" { return token::HT_DYNAMIC_CAST; } YY_BREAK case 384: YY_RULE_SETUP -#line 509 "gpu/lolfx-scanner.l" +#line 504 "gpu/lolfx-scanner.l" { return token::HT_ENUM; } YY_BREAK case 385: YY_RULE_SETUP -#line 510 "gpu/lolfx-scanner.l" +#line 505 "gpu/lolfx-scanner.l" { return token::HT_EXPLICIT; } YY_BREAK case 386: YY_RULE_SETUP -#line 511 "gpu/lolfx-scanner.l" +#line 506 "gpu/lolfx-scanner.l" { return token::HT_FRIEND; } YY_BREAK case 387: YY_RULE_SETUP -#line 512 "gpu/lolfx-scanner.l" +#line 507 "gpu/lolfx-scanner.l" { return token::HT_GOTO; } YY_BREAK case 388: YY_RULE_SETUP -#line 513 "gpu/lolfx-scanner.l" +#line 508 "gpu/lolfx-scanner.l" { return token::HT_LONG; } YY_BREAK case 389: YY_RULE_SETUP -#line 514 "gpu/lolfx-scanner.l" +#line 509 "gpu/lolfx-scanner.l" { return token::HT_MUTABLE; } YY_BREAK case 390: YY_RULE_SETUP -#line 515 "gpu/lolfx-scanner.l" +#line 510 "gpu/lolfx-scanner.l" { return token::HT_NEW; } YY_BREAK case 391: YY_RULE_SETUP -#line 516 "gpu/lolfx-scanner.l" +#line 511 "gpu/lolfx-scanner.l" { return token::HT_OPERATOR; } YY_BREAK case 392: YY_RULE_SETUP -#line 517 "gpu/lolfx-scanner.l" +#line 512 "gpu/lolfx-scanner.l" { return token::HT_PRIVATE; } YY_BREAK case 393: YY_RULE_SETUP -#line 518 "gpu/lolfx-scanner.l" +#line 513 "gpu/lolfx-scanner.l" { return token::HT_PROTECTED; } YY_BREAK case 394: YY_RULE_SETUP -#line 519 "gpu/lolfx-scanner.l" +#line 514 "gpu/lolfx-scanner.l" { return token::HT_PUBLIC; } YY_BREAK case 395: YY_RULE_SETUP -#line 520 "gpu/lolfx-scanner.l" +#line 515 "gpu/lolfx-scanner.l" { return token::HT_REINTERPRET_CAST; } YY_BREAK case 396: YY_RULE_SETUP -#line 521 "gpu/lolfx-scanner.l" +#line 516 "gpu/lolfx-scanner.l" { return token::HT_SHORT; } YY_BREAK case 397: YY_RULE_SETUP -#line 522 "gpu/lolfx-scanner.l" +#line 517 "gpu/lolfx-scanner.l" { return token::HT_SIGNED; } YY_BREAK case 398: YY_RULE_SETUP -#line 523 "gpu/lolfx-scanner.l" +#line 518 "gpu/lolfx-scanner.l" { return token::HT_SIZEOF; } YY_BREAK case 399: YY_RULE_SETUP -#line 524 "gpu/lolfx-scanner.l" +#line 519 "gpu/lolfx-scanner.l" { return token::HT_STATIC_CAST; } YY_BREAK case 400: YY_RULE_SETUP -#line 525 "gpu/lolfx-scanner.l" +#line 520 "gpu/lolfx-scanner.l" { return token::HT_TEMPLATE; } YY_BREAK case 401: YY_RULE_SETUP -#line 526 "gpu/lolfx-scanner.l" +#line 521 "gpu/lolfx-scanner.l" { return token::HT_THIS; } YY_BREAK case 402: YY_RULE_SETUP -#line 527 "gpu/lolfx-scanner.l" +#line 522 "gpu/lolfx-scanner.l" { return token::HT_THROW; } YY_BREAK case 403: YY_RULE_SETUP -#line 528 "gpu/lolfx-scanner.l" +#line 523 "gpu/lolfx-scanner.l" { return token::HT_TRY; } YY_BREAK case 404: YY_RULE_SETUP -#line 529 "gpu/lolfx-scanner.l" +#line 524 "gpu/lolfx-scanner.l" { return token::HT_TYPENAME; } YY_BREAK case 405: YY_RULE_SETUP -#line 530 "gpu/lolfx-scanner.l" +#line 525 "gpu/lolfx-scanner.l" { return token::HT_UNION; } YY_BREAK case 406: YY_RULE_SETUP -#line 531 "gpu/lolfx-scanner.l" +#line 526 "gpu/lolfx-scanner.l" { return token::HT_UNSIGNED; } YY_BREAK case 407: YY_RULE_SETUP -#line 532 "gpu/lolfx-scanner.l" +#line 527 "gpu/lolfx-scanner.l" { return token::HT_USING; } YY_BREAK case 408: YY_RULE_SETUP -#line 533 "gpu/lolfx-scanner.l" +#line 528 "gpu/lolfx-scanner.l" { return token::HT_VIRTUAL; } YY_BREAK /* @@ -3938,112 +3930,112 @@ YY_RULE_SETUP */ case 409: YY_RULE_SETUP -#line 539 "gpu/lolfx-scanner.l" +#line 534 "gpu/lolfx-scanner.l" { return token::T_INC; } YY_BREAK case 410: YY_RULE_SETUP -#line 540 "gpu/lolfx-scanner.l" +#line 535 "gpu/lolfx-scanner.l" { return token::T_DEC; } YY_BREAK case 411: YY_RULE_SETUP -#line 541 "gpu/lolfx-scanner.l" +#line 536 "gpu/lolfx-scanner.l" { return token::T_LE; } YY_BREAK case 412: YY_RULE_SETUP -#line 542 "gpu/lolfx-scanner.l" +#line 537 "gpu/lolfx-scanner.l" { return token::T_GE; } YY_BREAK case 413: YY_RULE_SETUP -#line 543 "gpu/lolfx-scanner.l" +#line 538 "gpu/lolfx-scanner.l" { return token::T_EQ; } YY_BREAK case 414: YY_RULE_SETUP -#line 544 "gpu/lolfx-scanner.l" +#line 539 "gpu/lolfx-scanner.l" { return token::T_NE; } YY_BREAK case 415: YY_RULE_SETUP -#line 545 "gpu/lolfx-scanner.l" +#line 540 "gpu/lolfx-scanner.l" { return token::T_LEFT; } YY_BREAK case 416: YY_RULE_SETUP -#line 546 "gpu/lolfx-scanner.l" +#line 541 "gpu/lolfx-scanner.l" { return token::T_RIGHT; } YY_BREAK case 417: YY_RULE_SETUP -#line 547 "gpu/lolfx-scanner.l" +#line 542 "gpu/lolfx-scanner.l" { return token::T_AND; } YY_BREAK case 418: YY_RULE_SETUP -#line 548 "gpu/lolfx-scanner.l" +#line 543 "gpu/lolfx-scanner.l" { return token::T_OR; } YY_BREAK case 419: YY_RULE_SETUP -#line 549 "gpu/lolfx-scanner.l" +#line 544 "gpu/lolfx-scanner.l" { return token::T_XOR; } YY_BREAK case 420: YY_RULE_SETUP -#line 551 "gpu/lolfx-scanner.l" +#line 546 "gpu/lolfx-scanner.l" { return token::T_MULEQ; } YY_BREAK case 421: YY_RULE_SETUP -#line 552 "gpu/lolfx-scanner.l" +#line 547 "gpu/lolfx-scanner.l" { return token::T_DIVEQ; } YY_BREAK case 422: YY_RULE_SETUP -#line 553 "gpu/lolfx-scanner.l" +#line 548 "gpu/lolfx-scanner.l" { return token::T_MODEQ; } YY_BREAK case 423: YY_RULE_SETUP -#line 554 "gpu/lolfx-scanner.l" +#line 549 "gpu/lolfx-scanner.l" { return token::T_ADDEQ; } YY_BREAK case 424: YY_RULE_SETUP -#line 555 "gpu/lolfx-scanner.l" +#line 550 "gpu/lolfx-scanner.l" { return token::T_SUBEQ; } YY_BREAK case 425: YY_RULE_SETUP -#line 556 "gpu/lolfx-scanner.l" +#line 551 "gpu/lolfx-scanner.l" { return token::T_LEFTEQ; } YY_BREAK case 426: YY_RULE_SETUP -#line 557 "gpu/lolfx-scanner.l" +#line 552 "gpu/lolfx-scanner.l" { return token::T_RIGHTEQ; } YY_BREAK case 427: YY_RULE_SETUP -#line 558 "gpu/lolfx-scanner.l" +#line 553 "gpu/lolfx-scanner.l" { return token::T_ANDEQ; } YY_BREAK case 428: YY_RULE_SETUP -#line 559 "gpu/lolfx-scanner.l" +#line 554 "gpu/lolfx-scanner.l" { return token::T_XOREQ; } YY_BREAK case 429: YY_RULE_SETUP -#line 560 "gpu/lolfx-scanner.l" +#line 555 "gpu/lolfx-scanner.l" { return token::T_OREQ; } YY_BREAK case 430: YY_RULE_SETUP -#line 562 "gpu/lolfx-scanner.l" +#line 557 "gpu/lolfx-scanner.l" { yylval->fval = std::atof(yytext); return token::FLOATCONSTANT; @@ -4051,7 +4043,7 @@ YY_RULE_SETUP YY_BREAK case 431: YY_RULE_SETUP -#line 566 "gpu/lolfx-scanner.l" +#line 561 "gpu/lolfx-scanner.l" { yylval->uval = std::atoi(yytext); return token::UINTCONSTANT; @@ -4059,7 +4051,7 @@ YY_RULE_SETUP YY_BREAK case 432: YY_RULE_SETUP -#line 570 "gpu/lolfx-scanner.l" +#line 565 "gpu/lolfx-scanner.l" { yylval->ival = std::atoi(yytext); return token::INTCONSTANT; @@ -4067,7 +4059,7 @@ YY_RULE_SETUP YY_BREAK case 433: YY_RULE_SETUP -#line 575 "gpu/lolfx-scanner.l" +#line 570 "gpu/lolfx-scanner.l" { /* Copy token for now */ yylval->sval = strdup(yytext); @@ -4076,47 +4068,47 @@ YY_RULE_SETUP YY_BREAK case 434: YY_RULE_SETUP -#line 581 "gpu/lolfx-scanner.l" +#line 576 "gpu/lolfx-scanner.l" { /* ignore whitespace */ } YY_BREAK case 435: /* rule 435 can match eol */ YY_RULE_SETUP -#line 582 "gpu/lolfx-scanner.l" -{ ++yylineno; } +#line 577 "gpu/lolfx-scanner.l" +{ yylloc->lines(1); } YY_BREAK case 436: YY_RULE_SETUP -#line 583 "gpu/lolfx-scanner.l" -{ return token::T_ERROR; } +#line 578 "gpu/lolfx-scanner.l" +{ return (token_type)*yytext; /* accept all characters */ } YY_BREAK /* * Ignore C comments */ case 437: YY_RULE_SETUP -#line 589 "gpu/lolfx-scanner.l" +#line 584 "gpu/lolfx-scanner.l" { BEGIN(C_COMMENT); } YY_BREAK case 438: YY_RULE_SETUP -#line 590 "gpu/lolfx-scanner.l" +#line 585 "gpu/lolfx-scanner.l" { BEGIN(INITIAL); } YY_BREAK case 439: YY_RULE_SETUP -#line 591 "gpu/lolfx-scanner.l" +#line 586 "gpu/lolfx-scanner.l" { } YY_BREAK case 440: /* rule 440 can match eol */ YY_RULE_SETUP -#line 592 "gpu/lolfx-scanner.l" -{ ++yylineno; } +#line 587 "gpu/lolfx-scanner.l" +{ yylloc->lines(1); } YY_BREAK case 441: YY_RULE_SETUP -#line 593 "gpu/lolfx-scanner.l" +#line 588 "gpu/lolfx-scanner.l" { } YY_BREAK /* @@ -4124,26 +4116,26 @@ YY_RULE_SETUP */ case 442: YY_RULE_SETUP -#line 599 "gpu/lolfx-scanner.l" +#line 594 "gpu/lolfx-scanner.l" { BEGIN(CPP_COMMENT); } YY_BREAK case 443: /* rule 443 can match eol */ YY_RULE_SETUP -#line 600 "gpu/lolfx-scanner.l" -{ ++yylineno; BEGIN(INITIAL); } +#line 595 "gpu/lolfx-scanner.l" +{ yylloc->lines(1); BEGIN(INITIAL); } YY_BREAK case 444: YY_RULE_SETUP -#line 601 "gpu/lolfx-scanner.l" +#line 596 "gpu/lolfx-scanner.l" { } YY_BREAK case 445: YY_RULE_SETUP -#line 603 "gpu/lolfx-scanner.l" +#line 598 "gpu/lolfx-scanner.l" ECHO; YY_BREAK -#line 4147 "generated/lolfx-scanner.cpp" +#line 4139 "generated/lolfx-scanner.cpp" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(C_COMMENT): case YY_STATE_EOF(CPP_COMMENT): @@ -4527,7 +4519,7 @@ int yyFlexLexer::yy_get_next_buffer() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1633 ) + if ( yy_current_state >= 1627 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; @@ -4555,11 +4547,11 @@ int yyFlexLexer::yy_get_next_buffer() while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1633 ) + if ( yy_current_state >= 1627 ) yy_c = yy_meta[(unsigned int) yy_c]; } yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 1632); + yy_is_jam = (yy_current_state == 1626); return yy_is_jam ? 0 : yy_current_state; } @@ -5046,7 +5038,7 @@ void LolFxfree (void * ptr ) #define YYTABLES_NAME "yytables" -#line 603 "gpu/lolfx-scanner.l" +#line 598 "gpu/lolfx-scanner.l" diff --git a/src/gpu/lolfx-compiler.cpp b/src/gpu/lolfx-compiler.cpp index 86d73836..3084f094 100644 --- a/src/gpu/lolfx-compiler.cpp +++ b/src/gpu/lolfx-compiler.cpp @@ -37,13 +37,13 @@ bool LolFxCompiler::ParseString(char const *command) void LolFxCompiler::Error(const class location& l, const std::string& m) { - Log::Error("Syntax error line %d column %d: %s", + Log::Error("LolFx syntax error line %d column %d: %s\n", l.begin.line, l.begin.column, m.c_str()); } void LolFxCompiler::Error(const std::string& m) { - Log::Error("Syntax error: %s", m.c_str()); + Log::Error("LolFx syntax error: %s\n", m.c_str()); } } /* namespace lol */ diff --git a/src/gpu/lolfx-parser.y b/src/gpu/lolfx-parser.y index 68c62bb9..3f4adfa3 100644 --- a/src/gpu/lolfx-parser.y +++ b/src/gpu/lolfx-parser.y @@ -48,7 +48,7 @@ %token INTCONSTANT %token UINTCONSTANT %token FLOATCONSTANT -%token /* TODO */ FIELDSELECTION +%token FIELDSELECTION %token IDENTIFIER %token TYPENAME @@ -64,7 +64,7 @@ * Deprecated GLSL keywords */ -%token GT_ATTRIBUTE +%token GT_ATTRIBUTE GT_VARYING /* * GLSL types @@ -199,8 +199,6 @@ %token PREPROCESSOR_LINE PREPROCESSOR_PRAGMA PREPROCESSOR_UNDEF %token PREPROCESSOR_REGION -%token PRAGMA_LOLFX - /* * HLSL reserved keywords */ @@ -265,7 +263,8 @@ group_glsl_keyword: | GT_MEDIUMP | GT_LOWP | GT_PRECISION - | GT_ATTRIBUTE + | GT_ATTRIBUTE /* deprecated */ + | GT_VARYING /* deprecated */ ; group_glsl_type: @@ -726,7 +725,16 @@ lolfx_section: */ lolfx_technique: - HT_TECHNIQUE IDENTIFIER '{' pass_list '}' { std::cout << "New tech " << $2 << std::endl; } + HT_TECHNIQUE lolfx_identifier '{' pass_list '}' { std::cout << "New tech " << std::endl; } + ; + + /* + * The valid LolFx identifiers + */ + +lolfx_identifier: + IDENTIFIER { std::cout << "New name " << $1 << std::endl; } + | FIELDSELECTION { std::cout << "New name " << $1 << std::endl; } ; /* @@ -739,7 +747,7 @@ pass_list: ; pass: - HT_PASS IDENTIFIER '{' pass_stmt_list '}' { std::cout << "New pass " << $2 << std::endl; } + HT_PASS lolfx_identifier '{' pass_stmt_list '}' { std::cout << "New pass " << std::endl; } ; pass_stmt_list: @@ -775,22 +783,16 @@ lolfx_shader: ; lolfx_shader_declaration: - PRAGMA_LOLFX lolfx_shader_type '(' lolfx_shader_description_list ')' { std::cout << "new shader" << std::endl; } - ; - -lolfx_shader_type: - HT_VERTEXSHADER - | HT_PIXELSHADER + '[' lolfx_shader_name_list ']' { std::cout << "new shader" << std::endl; } ; -lolfx_shader_description_list: - lolfx_shader_description ',' lolfx_shader_description - | lolfx_shader_description +lolfx_shader_name_list: + lolfx_shader_name '.' lolfx_shader_name_list + | lolfx_shader_name ; -lolfx_shader_description: - IDENTIFIER '=' IDENTIFIER FLOATCONSTANT - | IDENTIFIER '=' IDENTIFIER +lolfx_shader_name: + lolfx_identifier ; /* @@ -971,10 +973,10 @@ glsl_declaration: glsl_function_prototype ';' | glsl_init_declarator_list ';' | GT_PRECISION glsl_precision_qualifier glsl_type_specifier_no_prec ';' - | glsl_type_qualifier IDENTIFIER '{' glsl_struct_declaration_list '}' ';' - | glsl_type_qualifier IDENTIFIER '{' glsl_struct_declaration_list '}' IDENTIFIER ';' - | glsl_type_qualifier IDENTIFIER '{' glsl_struct_declaration_list '}' IDENTIFIER '[' ']' ';' - | glsl_type_qualifier IDENTIFIER '{' glsl_struct_declaration_list '}' IDENTIFIER '[' glsl_constant_expression ']' ';' + | glsl_type_qualifier lolfx_identifier '{' glsl_struct_declaration_list '}' ';' + | glsl_type_qualifier lolfx_identifier '{' glsl_struct_declaration_list '}' lolfx_identifier ';' + | glsl_type_qualifier lolfx_identifier '{' glsl_struct_declaration_list '}' lolfx_identifier '[' ']' ';' + | glsl_type_qualifier lolfx_identifier '{' glsl_struct_declaration_list '}' lolfx_identifier '[' glsl_constant_expression ']' ';' | glsl_type_qualifier ';' ; @@ -988,24 +990,34 @@ glsl_function_declarator: ; glsl_function_header_with_parameters: - glsl_function_header glsl_parameter_declaration - | glsl_function_header_with_parameters ',' glsl_parameter_declaration + glsl_function_header lolfx_parameter_declaration + | glsl_function_header_with_parameters ',' lolfx_parameter_declaration ; glsl_function_header: - glsl_fully_specified_type IDENTIFIER '(' + glsl_fully_specified_type lolfx_identifier '(' ; glsl_parameter_declarator: - glsl_type_specifier IDENTIFIER - | glsl_type_specifier IDENTIFIER '[' glsl_constant_expression ']' + glsl_type_specifier lolfx_identifier + | glsl_type_specifier lolfx_identifier '[' glsl_constant_expression ']' + ; + +lolfx_parameter_declaration: + glsl_parameter_declaration ':' lolfx_identifier /* HLSL only */ + | glsl_parameter_declaration ; glsl_parameter_declaration: - glsl_parameter_type_qualifier glsl_parameter_qualifier glsl_parameter_declarator - | glsl_parameter_qualifier glsl_parameter_declarator - | glsl_parameter_type_qualifier glsl_parameter_qualifier glsl_parameter_type_specifier - | glsl_parameter_qualifier glsl_parameter_type_specifier + glsl_parameter_type_qualifier lolfx_parameter_qualifier glsl_parameter_declarator + | lolfx_parameter_qualifier glsl_parameter_declarator + | glsl_parameter_type_qualifier lolfx_parameter_qualifier glsl_parameter_type_specifier + | lolfx_parameter_qualifier glsl_parameter_type_specifier + ; + +lolfx_parameter_qualifier: + glsl_parameter_qualifier + | GHT_UNIFORM /* HLSL only */ ; glsl_parameter_qualifier: @@ -1014,6 +1026,7 @@ glsl_parameter_qualifier: | GHT_OUT | GHT_INOUT | GT_ATTRIBUTE /* deprecated */ + | GT_VARYING /* deprecated */ ; glsl_parameter_type_specifier: @@ -1022,23 +1035,23 @@ glsl_parameter_type_specifier: glsl_init_declarator_list: glsl_single_declaration - | glsl_init_declarator_list ',' IDENTIFIER - | glsl_init_declarator_list ',' IDENTIFIER '[' ']' - | glsl_init_declarator_list ',' IDENTIFIER '[' glsl_constant_expression ']' - | glsl_init_declarator_list ',' IDENTIFIER '[' ']' '=' glsl_initializer - | glsl_init_declarator_list ',' IDENTIFIER '[' glsl_constant_expression ']' '=' glsl_initializer - | glsl_init_declarator_list ',' IDENTIFIER '=' glsl_initializer + | glsl_init_declarator_list ',' lolfx_identifier + | glsl_init_declarator_list ',' lolfx_identifier '[' ']' + | glsl_init_declarator_list ',' lolfx_identifier '[' glsl_constant_expression ']' + | glsl_init_declarator_list ',' lolfx_identifier '[' ']' '=' glsl_initializer + | glsl_init_declarator_list ',' lolfx_identifier '[' glsl_constant_expression ']' '=' glsl_initializer + | glsl_init_declarator_list ',' lolfx_identifier '=' glsl_initializer ; glsl_single_declaration: glsl_fully_specified_type - | glsl_fully_specified_type IDENTIFIER - | glsl_fully_specified_type IDENTIFIER '[' ']' - | glsl_fully_specified_type IDENTIFIER '[' glsl_constant_expression ']' - | glsl_fully_specified_type IDENTIFIER '[' ']' '=' glsl_initializer - | glsl_fully_specified_type IDENTIFIER '[' glsl_constant_expression ']' '=' glsl_initializer - | glsl_fully_specified_type IDENTIFIER '=' glsl_initializer - | GT_INVARIANT IDENTIFIER + | glsl_fully_specified_type lolfx_identifier + | glsl_fully_specified_type lolfx_identifier '[' ']' + | glsl_fully_specified_type lolfx_identifier '[' glsl_constant_expression ']' + | glsl_fully_specified_type lolfx_identifier '[' ']' '=' glsl_initializer + | glsl_fully_specified_type lolfx_identifier '[' glsl_constant_expression ']' '=' glsl_initializer + | glsl_fully_specified_type lolfx_identifier '=' glsl_initializer + | GT_INVARIANT lolfx_identifier ; glsl_fully_specified_type: @@ -1066,8 +1079,8 @@ glsl_layout_qualifier_id_list: ; glsl_layout_qualifier_id: - IDENTIFIER - | IDENTIFIER '=' INTCONSTANT + lolfx_identifier + | lolfx_identifier '=' INTCONSTANT ; glsl_parameter_type_qualifier: @@ -1097,6 +1110,7 @@ glsl_storage_qualifier: | GT_SAMPLE GHT_OUT | GHT_UNIFORM | GT_ATTRIBUTE /* deprecated */ + | GT_VARYING /* deprecated */ ; glsl_type_specifier: @@ -1105,9 +1119,14 @@ glsl_type_specifier: ; glsl_type_specifier_no_prec: + lolfx_type_specifier_nonarray + | lolfx_type_specifier_nonarray '[' ']' + | lolfx_type_specifier_nonarray '[' glsl_constant_expression ']' + +lolfx_type_specifier_nonarray: glsl_type_specifier_nonarray - | glsl_type_specifier_nonarray '[' ']' - | glsl_type_specifier_nonarray '[' glsl_constant_expression ']' + | group_hlsl_type /* HLSL only */ + ; glsl_type_specifier_nonarray: GHT_VOID @@ -1116,85 +1135,11 @@ glsl_type_specifier_nonarray: | GHT_INT | GHT_UINT | GHT_BOOL - | GT_VEC2 - | GT_VEC3 - | GT_VEC4 - | GT_DVEC2 - | GT_DVEC3 - | GT_DVEC4 - | GT_BVEC2 - | GT_BVEC3 - | GT_BVEC4 - | GT_IVEC2 - | GT_IVEC3 - | GT_IVEC4 - | GT_UVEC2 - | GT_UVEC3 - | GT_UVEC4 - | GT_MAT2 - | GT_MAT3 - | GT_MAT4 - | GT_MAT2X2 - | GT_MAT2X3 - | GT_MAT2X4 - | GT_MAT3X2 - | GT_MAT3X3 - | GT_MAT3X4 - | GT_MAT4X2 - | GT_MAT4X3 - | GT_MAT4X4 - | GT_DMAT2 - | GT_DMAT3 - | GT_DMAT4 - | GT_DMAT2X2 - | GT_DMAT2X3 - | GT_DMAT2X4 - | GT_DMAT3X2 - | GT_DMAT3X3 - | GT_DMAT3X4 - | GT_DMAT4X2 - | GT_DMAT4X3 - | GT_DMAT4X4 + | group_glsl_type | GHT_SAMPLER1D | GHT_SAMPLER2D | GHT_SAMPLER3D | GHT_SAMPLERCUBE - | GT_SAMPLER1DSHADOW - | GT_SAMPLER2DSHADOW - | GT_SAMPLERCUBESHADOW - | GT_SAMPLER1DARRAY - | GT_SAMPLER2DARRAY - | GT_SAMPLER1DARRAYSHADOW - | GT_SAMPLER2DARRAYSHADOW - | GT_SAMPLERCUBEARRAY - | GT_SAMPLERCUBEARRAYSHADOW - | GT_ISAMPLER1D - | GT_ISAMPLER2D - | GT_ISAMPLER3D - | GT_ISAMPLERCUBE - | GT_ISAMPLER1DARRAY - | GT_ISAMPLER2DARRAY - | GT_ISAMPLERCUBEARRAY - | GT_USAMPLER1D - | GT_USAMPLER2D - | GT_USAMPLER3D - | GT_USAMPLERCUBE - | GT_USAMPLER1DARRAY - | GT_USAMPLER2DARRAY - | GT_USAMPLERCUBEARRAY - | GT_SAMPLER2DRECT - | GT_SAMPLER2DRECTSHADOW - | GT_ISAMPLER2DRECT - | GT_USAMPLER2DRECT - | GT_SAMPLERBUFFER - | GT_ISAMPLERBUFFER - | GT_USAMPLERBUFFER - | GT_SAMPLER2DMS - | GT_ISAMPLER2DMS - | GT_USAMPLER2DMS - | GT_SAMPLER2DMSARRAY - | GT_ISAMPLER2DMSARRAY - | GT_USAMPLER2DMSARRAY | glsl_struct_specifier | TYPENAME ; @@ -1206,7 +1151,7 @@ glsl_precision_qualifier: ; glsl_struct_specifier: - GHT_STRUCT IDENTIFIER '{' glsl_struct_declaration_list '}' + GHT_STRUCT lolfx_identifier '{' glsl_struct_declaration_list '}' | GHT_STRUCT '{' glsl_struct_declaration_list '}' ; @@ -1226,9 +1171,9 @@ glsl_struct_declarator_list: ; glsl_struct_declarator: - IDENTIFIER - | IDENTIFIER '[' ']' - | IDENTIFIER '[' glsl_constant_expression ']' + lolfx_identifier + | lolfx_identifier '[' ']' + | lolfx_identifier '[' glsl_constant_expression ']' ; glsl_initializer: @@ -1290,7 +1235,7 @@ glsl_selection_rest_statement: glsl_condition: glsl_expression - | glsl_fully_specified_type IDENTIFIER '=' glsl_initializer + | glsl_fully_specified_type lolfx_identifier '=' glsl_initializer ; glsl_switch_statement: diff --git a/src/gpu/lolfx-scanner.l b/src/gpu/lolfx-scanner.l index cf4841a5..b27ad9d4 100644 --- a/src/gpu/lolfx-scanner.l +++ b/src/gpu/lolfx-scanner.l @@ -110,6 +110,7 @@ typedef lol::LolFxParser::token_type token_type; */ "attribute" { return token::GT_ATTRIBUTE; } +"varying" { return token::GT_VARYING; } /* * GLSL vector types @@ -488,12 +489,6 @@ typedef lol::LolFxParser::token_type token_type; "#"[ \t]*"version".* { /* ignore for now */ } - /* - * LolFx preprocessor directives - */ - -"#"[ \t]*(?i:pragma)[ \t]*(?i:lolfx) { return token::PRAGMA_LOLFX; } - /* * HLSL reserved keywords * Gathered from http://msdn.microsoft.com/en-us/library/windows/desktop/bb509569%28v=vs.85%29.aspx @@ -572,15 +567,15 @@ typedef lol::LolFxParser::token_type token_type; return token::INTCONSTANT; } -[a-zA-Z][a-zA-Z0-9_]* { +[a-zA-Z_][a-zA-Z0-9_]* { /* Copy token for now */ yylval->sval = strdup(yytext); return token::IDENTIFIER; } -[ \t]+ { /* ignore whitespace */ } -[\n] { ++yylineno; } -. { return token::T_ERROR; } +[ \t\r]+ { /* ignore whitespace */ } +[\n] { yylloc->lines(1); } +. { return (token_type)*yytext; /* accept all characters */ } /* * Ignore C comments @@ -589,7 +584,7 @@ typedef lol::LolFxParser::token_type token_type; "/*" { BEGIN(C_COMMENT); } "*/" { BEGIN(INITIAL); } [^*\n]* { } -\n { ++yylineno; } +\n { yylloc->lines(1); } . { } /* @@ -597,7 +592,7 @@ typedef lol::LolFxParser::token_type token_type; */ "//" { BEGIN(CPP_COMMENT); } -\n { ++yylineno; BEGIN(INITIAL); } +\n { yylloc->lines(1); BEGIN(INITIAL); } .* { } %% diff --git a/tutorial/01_triangle.lolfx b/tutorial/01_triangle.lolfx index 5d7abca7..881f936c 100644 --- a/tutorial/01_triangle.lolfx +++ b/tutorial/01_triangle.lolfx @@ -2,9 +2,9 @@ * Awesome triangle shader */ -technique Triangle +technique FlatColor { - pass FirstPass + pass DefaultPass { vertexshader = vert; pixelshader = frag;