diff options
Diffstat (limited to 'src/libs/glsl')
-rw-r--r-- | src/libs/glsl/glsl.g | 35 | ||||
-rw-r--r-- | src/libs/glsl/glslparser.cpp | 23 | ||||
-rw-r--r-- | src/libs/glsl/glslparser.h | 2 | ||||
-rw-r--r-- | src/libs/glsl/glslparsertable.cpp | 2479 | ||||
-rw-r--r-- | src/libs/glsl/glslparsertable_p.h | 426 |
5 files changed, 1509 insertions, 1456 deletions
diff --git a/src/libs/glsl/glsl.g b/src/libs/glsl/glsl.g index e5fff79691..ccd80ae8f1 100644 --- a/src/libs/glsl/glsl.g +++ b/src/libs/glsl/glsl.g @@ -321,7 +321,7 @@ private: inline int consumeToken() { if (_index < int(_tokens.size())) return _index++; - return _tokens.size() - 1; + return static_cast<int>(_tokens.size()) - 1; } inline const Token &tokenAt(int index) const { if (index == 0) @@ -468,30 +468,30 @@ Parser::Parser(Engine *engine, const char *source, unsigned size, int variant) switch (tk.kind) { case T_LEFT_PAREN: - parenStack.push(_tokens.size()); + parenStack.push(static_cast<int>(_tokens.size())); break; case T_LEFT_BRACKET: - bracketStack.push(_tokens.size()); + bracketStack.push(static_cast<int>(_tokens.size())); break; case T_LEFT_BRACE: - braceStack.push(_tokens.size()); + braceStack.push(static_cast<int>(_tokens.size())); break; case T_RIGHT_PAREN: if (! parenStack.empty()) { - _tokens[parenStack.top()].matchingBrace = _tokens.size(); + _tokens[parenStack.top()].matchingBrace = static_cast<int>(_tokens.size()); parenStack.pop(); } break; case T_RIGHT_BRACKET: if (! bracketStack.empty()) { - _tokens[bracketStack.top()].matchingBrace = _tokens.size(); + _tokens[bracketStack.top()].matchingBrace = static_cast<int>(_tokens.size()); bracketStack.pop(); } break; case T_RIGHT_BRACE: if (! braceStack.empty()) { - _tokens[braceStack.top()].matchingBrace = _tokens.size(); + _tokens[braceStack.top()].matchingBrace = static_cast<int>(_tokens.size()); braceStack.pop(); } break; @@ -519,9 +519,13 @@ AST *Parser::parse(int startToken) _recovered = false; _tos = -1; _startToken.kind = startToken; + int recoveryAttempts = 0; + do { - again: + recoveryAttempts = 0; + + againAfterRecovery: if (unsigned(++_tos) == _stateStack.size()) { _stateStack.resize(_tos * 2); _locationStack.resize(_tos * 2); @@ -564,6 +568,7 @@ AST *Parser::parse(int startToken) reduce(ruleno); action = nt_action(_stateStack[_tos], lhs[ruleno] - TERMINAL_COUNT); } else if (action == 0) { + ++recoveryAttempts; const int line = _tokens[yyloc].line + 1; QString message = QLatin1String("Syntax error"); if (yytoken != -1) { @@ -574,7 +579,7 @@ AST *Parser::parse(int startToken) for (; _tos; --_tos) { const int state = _stateStack[_tos]; - static int tks[] = { + static int tks1[] = { T_RIGHT_BRACE, T_RIGHT_PAREN, T_RIGHT_BRACKET, T_SEMICOLON, T_COLON, T_COMMA, T_NUMBER, T_TYPE_NAME, T_IDENTIFIER, @@ -582,6 +587,16 @@ AST *Parser::parse(int startToken) T_WHILE, 0 }; + static int tks2[] = { + T_RIGHT_BRACE, T_RIGHT_PAREN, T_RIGHT_BRACKET, + T_SEMICOLON, T_COLON, T_COMMA, + 0 + }; + int *tks; + if (recoveryAttempts < 2) + tks = tks1; + else + tks = tks2; // Avoid running into an endless loop for e.g.: for(int x=0; x y for (int *tptr = tks; *tptr; ++tptr) { const int next = t_action(state, *tptr); @@ -604,7 +619,7 @@ AST *Parser::parse(int startToken) yytoken = -1; action = next; - goto again; + goto againAfterRecovery; } } } diff --git a/src/libs/glsl/glslparser.cpp b/src/libs/glsl/glslparser.cpp index 6d8401531e..a746a6050b 100644 --- a/src/libs/glsl/glslparser.cpp +++ b/src/libs/glsl/glslparser.cpp @@ -1,5 +1,5 @@ -#line 423 "./glsl.g" +#line 413 "./glsl.g" /**************************************************************************** ** @@ -109,9 +109,13 @@ AST *Parser::parse(int startToken) _recovered = false; _tos = -1; _startToken.kind = startToken; + int recoveryAttempts = 0; + do { - again: + recoveryAttempts = 0; + + againAfterRecovery: if (unsigned(++_tos) == _stateStack.size()) { _stateStack.resize(_tos * 2); _locationStack.resize(_tos * 2); @@ -154,6 +158,7 @@ AST *Parser::parse(int startToken) reduce(ruleno); action = nt_action(_stateStack[_tos], lhs[ruleno] - TERMINAL_COUNT); } else if (action == 0) { + ++recoveryAttempts; const int line = _tokens[yyloc].line + 1; QString message = QLatin1String("Syntax error"); if (yytoken != -1) { @@ -164,7 +169,7 @@ AST *Parser::parse(int startToken) for (; _tos; --_tos) { const int state = _stateStack[_tos]; - static int tks[] = { + static int tks1[] = { T_RIGHT_BRACE, T_RIGHT_PAREN, T_RIGHT_BRACKET, T_SEMICOLON, T_COLON, T_COMMA, T_NUMBER, T_TYPE_NAME, T_IDENTIFIER, @@ -172,6 +177,16 @@ AST *Parser::parse(int startToken) T_WHILE, 0 }; + static int tks2[] = { + T_RIGHT_BRACE, T_RIGHT_PAREN, T_RIGHT_BRACKET, + T_SEMICOLON, T_COLON, T_COMMA, + 0 + }; + int *tks; + if (recoveryAttempts < 2) + tks = tks1; + else + tks = tks2; // Avoid running into an endless loop for e.g.: for(int x=0; x y for (int *tptr = tks; *tptr; ++tptr) { const int next = t_action(state, *tptr); @@ -194,7 +209,7 @@ AST *Parser::parse(int startToken) yytoken = -1; action = next; - goto again; + goto againAfterRecovery; } } } diff --git a/src/libs/glsl/glslparser.h b/src/libs/glsl/glslparser.h index 7b44f2870f..f0ccf82cb9 100644 --- a/src/libs/glsl/glslparser.h +++ b/src/libs/glsl/glslparser.h @@ -1,5 +1,5 @@ -#line 215 "./glsl.g" +#line 210 "./glsl.g" /**************************************************************************** ** diff --git a/src/libs/glsl/glslparsertable.cpp b/src/libs/glsl/glslparsertable.cpp index 75a3521ce9..67666dba7e 100644 --- a/src/libs/glsl/glslparsertable.cpp +++ b/src/libs/glsl/glslparsertable.cpp @@ -3,8 +3,9 @@ ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** -** This file is part of Qt Creator. +** This file is part of the Qt Toolkit. ** +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the @@ -21,6 +22,8 @@ ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** +** $QT_END_LICENSE$ +** ****************************************************************************/ // This file was generated by qlalr - DO NOT EDIT! @@ -29,1252 +32,1266 @@ QT_BEGIN_NAMESPACE const char *const GLSLParserTable::spell [] = { - "end of file", "feed GLSL", "feed expression", "+=", "&", "&=", "&&", "attribute", "!", "bool", - "break", "bvec2", "bvec3", "bvec4", "^", "case", "centroid", ":", ",", "const", - "continue", "-", "--", "default", "discard", "/=", "dmat2", "dmat2x2", "dmat2x3", "dmat2x4", - "dmat3", "dmat3x2", "dmat3x3", "dmat3x4", "dmat4", "dmat4x2", "dmat4x3", "dmat4x4", "do", ".", - "double", "dvec2", "dvec3", "dvec4", "else", "=", "==", "flat", "float", "for", - ">=", "highp", "identifier", "if", "in", "++", "inout", "int", "invariant", "isampler1D", - "isampler1DArray", "isampler2D", "isampler2DArray", "isampler2DMS", "isampler2DMSArray", "isampler2DRect", "isampler3D", "isamplerBuffer", "isamplerCube", "isamplerCubeArray", - "ivec2", "ivec3", "ivec4", "layout", "<", "<<=", "{", "[", "<<", "(", - "<=", "lowp", "mat2", "mat2x2", "mat2x3", "mat2x4", "mat3", "mat3x2", "mat3x3", "mat3x4", - "mat4", "mat4x2", "mat4x3", "mat4x4", "mediump", "%=", "*=", "!=", "noperspective", "number constant", - "|=", "||", "out", "patch", "%", "plus", "precision", "?", "return", ">", - ">>=", "}", "]", ">>", ")", "sample", "sampler1D", "sampler1DArray", "sampler1DArrayShadow", "sampler1DShadow", - "sampler2D", "sampler2DArray", "sampler2DArrayShadow", "sampler2DMS", "sampler2DMSArray", "sampler2DRect", "sampler2DRectShadow", "sampler2DShadow", "sampler3D", "samplerBuffer", - "samplerCube", "samplerCubeArray", "samplerCubeArrayShadow", "samplerCubeShadow", ";", "/", "smooth", "*", "struct", "subroutine", - "-=", "switch", "~", "type_name", "uint", "uniform", "usampler1D", "usampler1DArray", "usampler2D", "usampler2DArray", - "usampler2DMS", "usampler2DMSarray", "usampler2DRect", "usampler3D", "usamplerBuffer", "usamplerCube", "usamplerCubeArray", "uvec2", "uvec3", "uvec4", - "varying", "vec2", "vec3", "vec4", "|", "void", "while", "^=", "^^", "true", - "false", "preprocessor directive", "comment", "error", "reserved word"}; + "end of file", "feed GLSL", "feed expression", "+=", "&", "&=", "&&", "attribute", "!", "bool", + "break", "bvec2", "bvec3", "bvec4", "^", "case", "centroid", ":", ",", "const", + "continue", "-", "--", "default", "discard", "/=", "dmat2", "dmat2x2", "dmat2x3", "dmat2x4", + "dmat3", "dmat3x2", "dmat3x3", "dmat3x4", "dmat4", "dmat4x2", "dmat4x3", "dmat4x4", "do", ".", + "double", "dvec2", "dvec3", "dvec4", "else", "=", "==", "flat", "float", "for", + ">=", "highp", "identifier", "if", "in", "++", "inout", "int", "invariant", "isampler1D", + "isampler1DArray", "isampler2D", "isampler2DArray", "isampler2DMS", "isampler2DMSArray", "isampler2DRect", "isampler3D", "isamplerBuffer", "isamplerCube", "isamplerCubeArray", + "ivec2", "ivec3", "ivec4", "layout", "<", "<<=", "{", "[", "<<", "(", + "<=", "lowp", "mat2", "mat2x2", "mat2x3", "mat2x4", "mat3", "mat3x2", "mat3x3", "mat3x4", + "mat4", "mat4x2", "mat4x3", "mat4x4", "mediump", "%=", "*=", "!=", "noperspective", "number constant", + "|=", "||", "out", "patch", "%", "plus", "precision", "?", "return", ">", + ">>=", "}", "]", ">>", ")", "sample", "sampler1D", "sampler1DArray", "sampler1DArrayShadow", "sampler1DShadow", + "sampler2D", "sampler2DArray", "sampler2DArrayShadow", "sampler2DMS", "sampler2DMSArray", "sampler2DRect", "sampler2DRectShadow", "sampler2DShadow", "sampler3D", "samplerBuffer", + "samplerCube", "samplerCubeArray", "samplerCubeArrayShadow", "samplerCubeShadow", ";", "/", "smooth", "*", "struct", "subroutine", + "-=", "switch", "~", "type_name", "uint", "uniform", "usampler1D", "usampler1DArray", "usampler2D", "usampler2DArray", + "usampler2DMS", "usampler2DMSarray", "usampler2DRect", "usampler3D", "usamplerBuffer", "usamplerCube", "usamplerCubeArray", "uvec2", "uvec3", "uvec4", + "varying", "vec2", "vec3", "vec4", "|", "void", "while", "^=", "^^", "true", + "false", "preprocessor directive", "comment", "error", "reserved word" +}; const short GLSLParserTable::lhs [] = { - 176, 177, 177, 177, 177, 177, 179, 179, 179, 179, - 179, 179, 180, 181, 182, 182, 183, 183, 185, 185, - 184, 184, 186, 188, 188, 190, 190, 190, 190, 191, - 191, 191, 191, 192, 192, 192, 192, 193, 193, 193, - 194, 194, 194, 195, 195, 195, 195, 195, 196, 196, - 196, 197, 197, 198, 198, 199, 199, 200, 200, 201, - 201, 202, 202, 203, 203, 187, 187, 204, 204, 204, - 204, 204, 204, 204, 204, 204, 204, 204, 178, 178, - 205, 206, 206, 206, 206, 206, 206, 206, 206, 207, - 213, 213, 215, 215, 214, 218, 218, 216, 216, 216, - 216, 220, 220, 220, 220, 221, 208, 208, 208, 208, - 208, 208, 208, 223, 223, 223, 223, 223, 223, 223, - 223, 217, 217, 225, 226, 226, 226, 227, 228, 228, - 229, 229, 219, 211, 211, 211, 211, 211, 211, 211, - 211, 230, 230, 230, 230, 230, 230, 230, 230, 230, - 230, 230, 230, 230, 189, 189, 210, 210, 210, 231, - 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, - 231, 231, 231, 231, 231, 231, 209, 209, 209, 232, - 232, 212, 212, 233, 233, 234, 234, 235, 235, 235, - 224, 236, 237, 237, 239, 239, 239, 239, 239, 239, - 239, 238, 238, 247, 247, 248, 248, 246, 246, 240, - 240, 241, 249, 249, 250, 250, 242, 251, 251, 243, - 243, 244, 244, 244, 252, 252, 254, 254, 253, 253, - 245, 245, 245, 245, 245, 255, 256, 256, 257, 257, - 257, 258, 222, 175, 175, 259}; + 176, 177, 177, 177, 177, 177, 179, 179, 179, 179, + 179, 179, 180, 181, 182, 182, 183, 183, 185, 185, + 184, 184, 186, 188, 188, 190, 190, 190, 190, 191, + 191, 191, 191, 192, 192, 192, 192, 193, 193, 193, + 194, 194, 194, 195, 195, 195, 195, 195, 196, 196, + 196, 197, 197, 198, 198, 199, 199, 200, 200, 201, + 201, 202, 202, 203, 203, 187, 187, 204, 204, 204, + 204, 204, 204, 204, 204, 204, 204, 204, 178, 178, + 205, 206, 206, 206, 206, 206, 206, 206, 206, 207, + 213, 213, 215, 215, 214, 218, 218, 216, 216, 216, + 216, 220, 220, 220, 220, 221, 208, 208, 208, 208, + 208, 208, 208, 223, 223, 223, 223, 223, 223, 223, + 223, 217, 217, 225, 226, 226, 226, 227, 228, 228, + 229, 229, 219, 211, 211, 211, 211, 211, 211, 211, + 211, 230, 230, 230, 230, 230, 230, 230, 230, 230, + 230, 230, 230, 230, 189, 189, 210, 210, 210, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 231, 231, 231, 231, + 231, 231, 231, 231, 231, 231, 209, 209, 209, 232, + 232, 212, 212, 233, 233, 234, 234, 235, 235, 235, + 224, 236, 237, 237, 239, 239, 239, 239, 239, 239, + 239, 238, 238, 247, 247, 248, 248, 246, 246, 240, + 240, 241, 249, 249, 250, 250, 242, 251, 251, 243, + 243, 244, 244, 244, 252, 252, 254, 254, 253, 253, + 245, 245, 245, 245, 245, 255, 256, 256, 257, 257, + 257, 258, 222, 175, 175, 259 +}; const short GLSLParserTable::rhs [] = { - 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, 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, 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, 1, 1, 2, 2, 2, - 2, 2, 2, 1, 1, 2, 1, 3, 4, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 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, 1, 1, 3, - 2, 5, 7, 6, 1, 1, 1, 1, 2, 3, - 2, 2, 2, 3, 2, 1, 1, 2, 1, 1, - 1, 2, 0, 2, 2, 2}; + 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, 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, 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, 1, 1, 2, 2, 2, + 2, 2, 2, 1, 1, 2, 1, 3, 4, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 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, 1, 1, 3, + 2, 5, 7, 6, 1, 1, 1, 1, 2, 3, + 2, 2, 2, 3, 2, 1, 1, 2, 1, 1, + 1, 2, 0, 2, 2, 2 +}; const short GLSLParserTable::action_default [] = { - 0, 0, 0, 0, 32, 165, 172, 173, 174, 31, - 0, 193, 196, 197, 198, 194, 199, 200, 201, 195, - 202, 203, 204, 162, 169, 170, 171, 4, 161, 247, - 1, 0, 163, 218, 222, 219, 223, 240, 243, 234, - 220, 237, 221, 224, 175, 176, 177, 0, 249, 181, - 184, 185, 186, 182, 187, 188, 189, 183, 190, 191, - 192, 248, 2, 30, 205, 212, 214, 209, 206, 213, - 215, 239, 242, 232, 233, 210, 207, 236, 208, 216, - 217, 211, 0, 33, 3, 246, 164, 225, 229, 226, - 230, 241, 244, 235, 227, 238, 228, 231, 178, 179, - 180, 166, 167, 168, 160, 41, 54, 79, 66, 52, - 56, 315, 9, 15, 20, 0, 0, 14, 0, 58, - 60, 64, 62, 38, 26, 0, 7, 49, 44, 245, - 24, 155, 157, 34, 0, 5, 28, 27, 0, 0, - 6, 80, 0, 0, 0, 143, 0, 142, 126, 146, - 141, 0, 127, 147, 0, 0, 125, 154, 144, 138, - 0, 135, 134, 252, 0, 0, 0, 148, 149, 145, - 0, 131, 129, 0, 0, 132, 0, 128, 130, 150, - 151, 152, 153, 137, 0, 139, 140, 136, 250, 253, - 0, 258, 256, 0, 0, 259, 81, 0, 34, 260, - 0, 255, 257, 0, 254, 0, 251, 0, 0, 40, - 0, 0, 0, 37, 36, 35, 39, 0, 53, 0, - 0, 50, 0, 0, 0, 0, 48, 0, 0, 42, - 43, 45, 47, 46, 51, 0, 55, 160, 21, 18, - 0, 17, 22, 23, 0, 57, 0, 59, 0, 0, - 63, 0, 61, 0, 0, 65, 12, 0, 11, 0, - 10, 16, 13, 0, 8, 156, 0, 158, 0, 159, - 72, 76, 70, 68, 74, 71, 69, 78, 75, 73, - 77, 0, 67, 29, 141, 0, 311, 310, 307, 306, - 114, 0, 309, 313, 92, 0, 0, 107, 314, 0, - 122, 121, 0, 0, 84, 308, 115, 0, 0, 95, - 261, 120, 116, 0, 0, 118, 117, 0, 119, 90, - 133, 103, 105, 104, 102, 93, 0, 313, 99, 101, - 106, 96, 0, 0, 97, 0, 98, 100, 106, 313, - 94, 0, 82, 312, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 276, 280, 0, 0, 269, 263, - 262, 265, 0, 266, 0, 270, 271, 267, 264, 278, - 0, 268, 122, 302, 0, 290, 301, 291, 305, 0, - 0, 0, 0, 0, 293, 0, 296, 295, 313, 122, - 298, 0, 297, 285, 0, 0, 0, 299, 300, 0, - 274, 275, 294, 0, 0, 286, 123, 0, 0, 0, - 282, 284, 0, 283, 272, 0, 273, 279, 303, 0, - 304, 0, 0, 0, 313, 288, 289, 0, 287, 0, - 0, 0, 292, 281, 277, 0, 83, 108, 0, 0, - 113, 109, 0, 0, 111, 110, 0, 112, 0, 89, - 0, 0, 0, 0, 85, 0, 86, 0, 0, 87, - 0, 88, 316}; + 0, 0, 0, 0, 32, 165, 172, 173, 174, 31, + 0, 193, 196, 197, 198, 194, 199, 200, 201, 195, + 202, 203, 204, 162, 169, 170, 171, 4, 161, 247, + 1, 0, 163, 218, 222, 219, 223, 240, 243, 234, + 220, 237, 221, 224, 175, 176, 177, 0, 249, 181, + 184, 185, 186, 182, 187, 188, 189, 183, 190, 191, + 192, 248, 2, 30, 205, 212, 214, 209, 206, 213, + 215, 239, 242, 232, 233, 210, 207, 236, 208, 216, + 217, 211, 0, 33, 3, 246, 164, 225, 229, 226, + 230, 241, 244, 235, 227, 238, 228, 231, 178, 179, + 180, 166, 167, 168, 160, 41, 54, 79, 66, 52, + 56, 315, 9, 15, 20, 0, 0, 14, 0, 58, + 60, 64, 62, 38, 26, 0, 7, 49, 44, 245, + 24, 155, 157, 34, 0, 5, 28, 27, 0, 0, + 6, 80, 0, 0, 0, 143, 0, 142, 126, 146, + 141, 0, 127, 147, 0, 0, 125, 154, 144, 138, + 0, 135, 134, 252, 0, 0, 0, 148, 149, 145, + 0, 131, 129, 0, 0, 132, 0, 128, 130, 150, + 151, 152, 153, 137, 0, 139, 140, 136, 250, 253, + 0, 258, 256, 0, 0, 259, 81, 0, 34, 260, + 0, 255, 257, 0, 254, 0, 251, 0, 0, 40, + 0, 0, 0, 37, 36, 35, 39, 0, 53, 0, + 0, 50, 0, 0, 0, 0, 48, 0, 0, 42, + 43, 45, 47, 46, 51, 0, 55, 160, 21, 18, + 0, 17, 22, 23, 0, 57, 0, 59, 0, 0, + 63, 0, 61, 0, 0, 65, 12, 0, 11, 0, + 10, 16, 13, 0, 8, 156, 0, 158, 0, 159, + 72, 76, 70, 68, 74, 71, 69, 78, 75, 73, + 77, 0, 67, 29, 141, 0, 311, 310, 307, 306, + 114, 0, 309, 313, 92, 0, 0, 107, 314, 0, + 122, 121, 0, 0, 84, 308, 115, 0, 0, 95, + 261, 120, 116, 0, 0, 118, 117, 0, 119, 90, + 133, 103, 105, 104, 102, 93, 0, 313, 99, 101, + 106, 96, 0, 0, 97, 0, 98, 100, 106, 313, + 94, 0, 82, 312, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 276, 280, 0, 0, 269, 263, + 262, 265, 0, 266, 0, 270, 271, 267, 264, 278, + 0, 268, 122, 302, 0, 290, 301, 291, 305, 0, + 0, 0, 0, 0, 293, 0, 296, 295, 313, 122, + 298, 0, 297, 285, 0, 0, 0, 299, 300, 0, + 274, 275, 294, 0, 0, 286, 123, 0, 0, 0, + 282, 284, 0, 283, 272, 0, 273, 279, 303, 0, + 304, 0, 0, 0, 313, 288, 289, 0, 287, 0, + 0, 0, 292, 281, 277, 0, 83, 108, 0, 0, + 113, 109, 0, 0, 111, 110, 0, 112, 0, 89, + 0, 0, 0, 0, 85, 0, 86, 0, 0, 87, + 0, 88, 316 +}; const short GLSLParserTable::goto_default [] = { - 3, 135, 126, 362, 124, 263, 112, 117, 113, 116, - 115, 114, 107, 118, 130, 133, 134, 123, 105, 128, - 127, 109, 106, 110, 119, 120, 122, 121, 108, 281, - 197, 360, 364, 296, 125, 131, 299, 205, 291, 293, - 294, 325, 290, 328, 327, 326, 329, 324, 297, 311, - 160, 159, 161, 173, 172, 162, 132, 129, 163, 203, - 192, 361, 369, 359, 368, 363, 367, 371, 358, 365, - 366, 370, 402, 400, 410, 390, 427, 388, 394, 391, - 298, 289, 288, 292, 0}; + 3, 135, 126, 362, 124, 263, 112, 117, 113, 116, + 115, 114, 107, 118, 130, 133, 134, 123, 105, 128, + 127, 109, 106, 110, 119, 120, 122, 121, 108, 281, + 197, 360, 364, 296, 125, 131, 299, 205, 291, 293, + 294, 325, 290, 328, 327, 326, 329, 324, 297, 311, + 160, 159, 161, 173, 172, 162, 132, 129, 163, 203, + 192, 361, 369, 359, 368, 363, 367, 371, 358, 365, + 366, 370, 402, 400, 410, 390, 427, 388, 394, 391, + 298, 289, 288, 292, 0 +}; const short GLSLParserTable::action_index [] = { - 96, 1153, 3162, 24, -175, -175, -175, -175, -175, -175, - 1153, -175, -175, -175, -175, -175, -175, -175, -175, -175, - -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, - -12, 1153, -175, -175, -175, -175, -175, -175, -175, -175, - -175, -175, -175, -175, -175, -175, -175, 1153, -175, -175, - -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, - -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, - -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, - -175, -175, 47, -175, -175, -175, -175, -175, -175, -175, - -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, - -175, -175, -175, -175, -175, 85, 53, -175, -175, 65, - 55, 52, -175, -175, 1320, -51, 66, -175, -52, -158, - 154, -11, -157, 18, 94, 488, -175, 118, 31, -175, - -175, -175, -46, 183, 1153, -175, -175, -175, 71, 1153, - -175, -175, -58, 2490, 2490, -175, 77, -175, -175, -175, - 198, -65, -175, -175, 39, 32, -175, -175, -175, 322, - 200, 322, -175, -175, 2994, 654, -16, -175, -175, -175, - 7, 15, -175, 83, -31, -175, 21, -175, -175, -175, - -175, -175, -175, -175, 322, -175, -175, -175, -175, -175, - -5, -23, -175, 84, 1988, -175, -175, -63, -175, -175, - 4, -175, -175, 86, -175, 2826, -175, 1153, 1153, 28, - 1153, 1153, 1153, -175, -175, -175, 13, 1153, 61, 1153, - 1153, 93, 1153, 1153, 1153, 1153, 27, 1153, 1153, 64, - 73, 5, 17, 22, 101, 1153, 35, -64, -175, -175, - 1153, -175, -175, -175, 1153, 37, 1153, -116, 1153, 1153, - -115, 1153, 154, 74, 1153, -175, -175, 820, -175, 1153, - -39, -175, 19, -71, -175, -175, 1654, -175, -66, -175, - -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, - -175, 1153, -175, -175, 210, 78, -175, -175, -175, 3162, - 10, -53, -175, 147, 48, 11, 70, -175, -175, 986, - -175, -175, 488, -125, -175, -175, 75, 1153, 1487, -175, - -175, -175, -41, -110, 1153, -175, -17, 1153, -175, -175, - -175, -175, -175, -175, -175, -175, 654, 54, -175, -175, - -36, -57, 1153, -89, -175, 654, -175, -175, -33, 128, - -175, 4170, -175, -175, -117, 1153, -109, 12, -124, 3666, - -74, -67, 4506, 1821, -175, -175, -78, -15, -175, -175, - -175, -175, 62, -175, -90, -175, -175, -175, -175, -175, - 4338, -175, -27, -175, 58, -175, -175, -175, -175, -121, - -37, 1153, 63, -62, -175, 3498, -175, -175, 3330, -14, - -175, -131, -175, 16, -79, -19, 654, 1153, 8, 3834, - -175, -175, -175, -24, 1153, -175, -175, 1153, 60, 3666, - -175, -1, 3666, -175, -175, 4002, -175, -175, -175, 59, - -175, 1153, 56, -68, 3666, -175, 3666, -111, -175, 3330, - -84, 3834, -175, -175, -175, 3, -175, 26, 1153, 2322, - -175, -13, -97, 1153, -175, -32, 1153, -175, -69, -175, - 2490, 2658, 30, 2, -175, 2155, -175, -96, -54, -175, - -112, -175, -175, + 86, 1180, 3189, 58, -175, -175, -175, -175, -175, -175, + 1180, -175, -175, -175, -175, -175, -175, -175, -175, -175, + -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, + -79, 1180, -175, -175, -175, -175, -175, -175, -175, -175, + -175, -175, -175, -175, -175, -175, -175, 1180, -175, -175, + -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, + -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, + -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, + -175, -175, 32, -175, -175, -175, -175, -175, -175, -175, + -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, + -175, -175, -175, -175, -175, 82, 61, -175, -175, 60, + 181, 45, -175, -175, 1347, -55, 87, -175, -25, -113, + -3, 6, -159, 40, 128, 515, -175, 112, 26, -175, + -175, -175, -58, 197, 1180, -175, -175, -175, 84, 1180, + -175, -175, -62, 2517, 2517, -175, 56, -175, -175, -175, + 187, -54, -175, -175, 46, 25, -175, -175, -175, 349, + 207, 349, -175, -175, 2685, 681, 10, -175, -175, -175, + 3, 11, -175, 83, -38, -175, 0, -175, -175, -175, + -175, -175, -175, -175, 349, -175, -175, -175, -175, -175, + 18, -6, -175, 79, 1514, -175, -175, -77, -175, -175, + -16, -175, -175, 76, -175, 3021, -175, 1180, 1180, 12, + 1180, 1180, 1180, -175, -175, -175, 37, 1180, 49, 1180, + 1180, 90, 1180, 1180, 1180, 1180, 15, 1180, 1180, 71, + 68, -4, 8, 7, 80, 1180, 33, -75, -175, -175, + 1180, -175, -175, -175, 1180, 181, 1180, -132, 1180, 1180, + -137, 1180, 34, 73, 1180, -175, -175, 847, -175, 1180, + -10, -175, 48, -44, -175, -175, 2349, -175, -45, -175, + -175, -175, -175, -175, -175, -175, -175, -175, -175, -175, + -175, 1180, -175, -175, 217, 72, -175, -175, -175, 3189, + -47, -107, -175, 163, -14, 22, 81, -175, -175, 1013, + -175, -175, 515, -105, -175, -175, 66, 1180, 2015, -175, + -175, -175, -21, -91, 1180, -175, -34, 1180, -175, -175, + -175, -175, -175, -175, -175, -175, 681, 63, -175, -175, + -40, -76, 1180, -78, -175, 681, -175, -175, 5, 105, + -175, 4365, -175, -175, -81, 1180, -121, -2, -114, 3861, + -56, -53, 4533, 2182, -175, -175, -57, -69, -175, -175, + -175, -175, 54, -175, -74, -175, -175, -175, -175, -175, + 4029, -175, -46, -175, 59, -175, -175, -175, -175, -128, + -49, 1180, 55, -93, -175, 3525, -175, -175, 3357, -37, + -175, -90, -175, 27, -68, -5, 681, 1180, 30, 3693, + -175, -175, -175, 4, 1180, -175, -175, 1180, 57, 3861, + -175, -1, 3861, -175, -175, 4197, -175, -175, -175, 62, + -175, 1180, 64, 20, 3861, -175, 3861, -103, -175, 3357, + -86, 3693, -175, -175, -175, -35, -175, 38, 1180, 1848, + -175, -27, -85, 1180, -175, -43, 1180, -175, -70, -175, + 2517, 2853, 29, 1, -175, 1681, -175, -84, -48, -175, + -118, -175, -175, - -85, 68, 99, -85, -85, -85, -85, -85, -85, -85, - 0, -85, -85, -85, -85, -85, -85, -85, -85, -85, - -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, - -85, -4, -85, -85, -85, -85, -85, -85, -85, -85, - -85, -85, -85, -85, -85, -85, -85, -2, -85, -85, - -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, - -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, - -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, - -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, - -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, - -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, - -85, -85, -85, -85, 22, -85, -85, -85, -85, -85, - -85, -85, -85, -85, -85, 3, -85, -85, -85, -85, - -85, -85, -85, -85, 6, -85, -85, -85, -85, 21, - -85, -85, -85, 60, 131, -85, -85, -85, -85, -85, - -85, -85, -85, -85, -85, -85, -85, -85, -85, -35, - 37, -18, -85, -85, 86, -11, -85, -85, -85, -85, - -85, -85, -85, -85, -85, -85, -45, -85, -85, -85, - -85, -85, -85, -85, -51, -85, -85, -85, -85, -85, - -49, -85, -85, -85, 34, -85, -85, -85, -85, -85, - -48, -85, -85, -85, -85, 114, -85, 39, 36, -85, - -8, -1, -9, -85, -85, -85, -85, 24, -85, 26, - 35, -85, 71, 78, 84, 72, -85, 45, 49, -85, - -85, -85, -85, -85, -85, 79, -85, -85, -85, -85, - -10, -85, -85, -85, 83, -85, 58, -85, 50, 33, - -85, 44, -85, -85, 16, -85, -85, 11, -85, 19, - -85, -85, -85, -85, -85, -85, 106, -85, -85, -85, - -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, - -85, 13, -85, -85, -85, -7, -85, -85, -85, 210, - -85, -85, -85, -85, -85, -38, -85, -85, -85, 17, - -85, -85, -3, -85, -85, -85, -85, 4, 87, -85, - -85, -85, -85, -85, 30, -85, -85, 31, -85, -85, - -85, -85, -85, -85, -85, -85, 15, -27, -85, -85, - -85, -85, 109, -85, -85, 115, -85, -85, -85, -17, - -85, 12, -85, -85, -85, 20, -85, -85, -85, 64, - -85, -85, 139, 14, -85, -85, -85, -85, -85, -85, - -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, - 52, -85, -85, -85, -85, -85, -85, -85, -85, -85, - -85, 27, -85, -85, -85, 90, -85, -85, 135, -85, - -85, -85, -85, -85, -85, -85, -14, 2, -85, 56, - -85, -85, -85, -85, 46, -85, -85, 5, -85, 54, - -85, -85, 47, -85, -85, 61, -85, -85, -85, -85, - -85, 10, -85, -85, 105, -85, 43, -85, -85, 156, - -85, 93, -85, -85, -85, -85, -85, -85, 32, 118, - -85, -85, -85, 40, -85, -85, 28, -85, -85, -85, - 104, 96, -85, -85, -85, 97, -85, -85, -85, -85, - -85, -85, -85}; + -85, 11, 90, -85, -85, -85, -85, -85, -85, -85, + -3, -85, -85, -85, -85, -85, -85, -85, -85, -85, + -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, + -85, -9, -85, -85, -85, -85, -85, -85, -85, -85, + -85, -85, -85, -85, -85, -85, -85, 70, -85, -85, + -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, + -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, + -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, + -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, + -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, + -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, + -85, -85, -85, -85, 20, -85, -85, -85, -85, -85, + -85, -85, -85, -85, -85, 3, -85, -85, -85, -85, + -85, -85, -85, -85, 9, -85, -85, -85, -85, 5, + -85, -85, -85, 56, 110, -85, -85, -85, -85, -85, + -85, -85, -85, -85, -85, -85, -85, -85, -85, -39, + 21, -21, -85, -85, 96, -7, -85, -85, -85, -85, + -85, -85, -85, -85, -85, -85, -49, -85, -85, -85, + -85, -85, -85, -85, -47, -85, -85, -85, -85, -85, + -46, -85, -85, -85, 35, -85, -85, -85, -85, -85, + -45, -85, -85, -85, -85, 109, -85, 29, 30, -85, + -4, -5, -6, -85, -85, -85, -85, 38, -85, 40, + 41, -85, 43, 78, 84, 81, -85, 80, 66, -85, + -85, -85, -85, -85, -85, 67, -85, -85, -85, -85, + -12, -85, -85, -85, 42, -85, 51, -85, 52, 27, + -85, 49, -85, -85, 24, -85, -85, 18, -85, 22, + -85, -85, -85, -85, -85, -85, 114, -85, -85, -85, + -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, + -85, 6, -85, -85, -85, -11, -85, -85, -85, 129, + -85, -85, -85, -85, -85, -38, -85, -85, -85, 23, + -85, -85, -2, -85, -85, -85, -85, 19, 79, -85, + -85, -85, -85, -85, 39, -85, -85, 37, -85, -85, + -85, -85, -85, -85, -85, -85, 14, -18, -85, -85, + -85, -85, 121, -85, -85, 94, -85, -85, -85, -19, + -85, 7, -85, -85, -85, 16, -85, -85, -85, 77, + -85, -85, 87, 17, -85, -85, -85, -85, -85, -85, + -85, -85, -85, -85, -85, -85, -85, -85, -85, -85, + 65, -85, -85, -85, -85, -85, -85, -85, -85, -85, + -85, 26, -85, -85, -85, 91, -85, -85, 159, -85, + -85, -85, -85, -85, -85, -85, -13, -1, -85, 54, + -85, -85, -85, -85, 57, -85, -85, 1, -85, 69, + -85, -85, 141, -85, -85, 76, -85, -85, -85, -85, + -85, 0, -85, -85, 88, -85, 25, -85, -85, 223, + -85, 100, -85, -85, -85, -85, -85, -85, 36, 138, + -85, -85, -85, 31, -85, -85, 28, -85, -85, -85, + 97, 105, -85, -85, -85, 98, -85, -85, -85, -85, + -85, -85, -85 +}; const short GLSLParserTable::action_info [] = { - 428, 421, 316, 397, 314, 385, 244, 450, 424, 304, - 378, 251, 407, 446, 170, 445, 331, 373, 144, 331, - 332, 404, 461, 334, 462, 376, 139, 243, 317, 377, - 431, 266, 443, 403, 139, 399, 191, 139, 459, 217, - -25, 264, 381, 412, 342, 380, 269, 191, 244, 199, - -19, 235, -24, 251, 194, 437, 191, 217, 460, 171, - 174, 319, 306, 239, 429, -24, 339, -25, 175, 235, - 139, 438, 384, 171, 139, 375, 139, 139, 139, 455, - 139, 139, 453, 227, 240, 207, 181, 341, 435, 139, - 248, 254, 139, 179, 207, 227, 249, 2, 1, 142, - 227, 176, 200, 439, 200, 227, 207, 219, 321, 227, - 322, 219, 0, 0, 0, 0, 256, 210, 228, 0, - 307, 0, 210, 143, 0, 0, 0, 0, 0, 29, - 228, 167, 210, 257, 182, 228, 456, 0, 0, 0, - 228, 180, 0, 222, 228, 342, 0, 320, 211, 258, - 212, 222, 308, 211, 309, 212, 323, 0, 220, 48, - 246, 0, 220, 211, 454, 212, 320, 223, 222, 208, - 423, 259, 61, 224, 409, 223, 0, 383, 208, 168, - 241, 224, 321, 0, 322, 140, 270, 0, 271, 0, - 208, 0, 223, 420, 0, 0, 433, 177, 224, 0, - 0, 321, 225, 322, 436, -124, 0, 145, 272, 0, - 225, 0, 0, 0, -124, 0, 146, -124, 201, 147, - 204, 0, 0, 0, 0, 0, -124, 225, 273, -124, - 323, 0, 0, 0, 0, 0, 0, 169, 0, 0, - 0, 0, 0, 0, 0, -124, 0, 148, 0, 323, - 0, 0, -124, 0, 149, 0, 0, -124, 274, 0, - 0, -91, 301, 0, -124, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 275, 276, - 0, 0, 0, 277, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 278, 0, 0, -124, 0, 152, 0, - -124, -124, 153, 154, 0, 0, 0, 0, -124, 0, - 0, 0, -124, -124, 0, 155, 0, 0, 0, 0, - 0, 0, 0, 279, 0, -124, 0, 0, 0, 145, - 0, 0, 0, 0, -124, 0, 156, 0, 146, 0, - 0, 147, 0, -124, 0, 157, -124, 0, 0, 0, - 280, 0, 0, 0, 0, -124, 0, 0, -124, 0, - 158, 0, 0, 0, 0, 0, 0, 0, 0, 0, - -124, 0, 0, 0, 0, 0, 149, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 153, 154, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 155, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 157, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 158, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 5, 0, 6, - 7, 8, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 0, 0, 23, 24, - 25, 26, 0, 0, 0, 0, 28, 0, 0, 0, - 0, 0, 0, 0, 0, 32, 0, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 0, 0, 0, 0, 82, 0, 0, 0, - 0, 85, 86, 0, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 0, 101, - 102, 103, 0, 104, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 5, 0, 6, 7, 8, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 0, 0, 23, 24, 25, 26, 0, 0, - 0, 0, 28, 0, 0, 29, 0, 0, 0, 0, - 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 0, 0, 0, - 0, 0, 0, 0, 0, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 0, 0, - 0, 0, 82, 0, 0, 0, 0, 85, 86, 0, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 0, 101, 102, 103, 0, 104, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, - 0, 6, 7, 8, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 0, 0, - 23, 24, 25, 26, 0, 0, 0, 0, 28, 0, - 0, 29, 260, 0, 0, 0, 0, 32, 0, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 0, 0, 0, 0, 0, 0, 0, - 0, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 0, 0, 0, 0, 82, 0, - 0, 0, 0, 85, 86, 0, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 0, 101, 102, 103, 0, 104, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 5, 0, 6, 7, 8, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 0, 0, 23, 24, 25, 26, - 0, 0, 0, 0, 28, 0, 0, 29, 448, 0, - 0, 0, 0, 32, 0, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 0, - 0, 0, 0, 0, 0, 0, 0, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 449, 0, 0, 0, 82, 0, 0, 0, 0, 85, - 86, 0, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 0, 101, 102, 103, - 0, 104, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 4, 5, 0, 6, 7, 8, 0, 0, 0, - 0, 0, 0, 0, 9, 10, 0, 0, 0, 11, - 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, - 22, 0, 0, 23, 24, 25, 26, 0, 0, 0, - 0, 28, 0, 0, 29, 30, 0, 0, 31, 0, - 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, - 41, 42, 43, 44, 45, 46, 0, 0, 0, 0, - 0, 0, 47, 0, 48, 49, 50, 51, 52, 53, - 54, 55, 56, 57, 58, 59, 60, 61, 0, 0, - 0, 0, 62, 0, 0, 0, 0, 0, 63, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, - 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, - 75, 76, 77, 78, 79, 80, 81, 0, 0, 0, - 0, 82, 0, 0, 0, 83, 85, 86, 0, 87, - 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, 99, 100, 0, 101, 102, 103, 0, 104, 0, - 0, 0, 84, 27, 0, 0, 0, 0, 4, 5, - 0, 6, 7, 8, 0, 0, 0, 0, 0, 0, - 0, 9, 10, 0, 0, 0, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 0, 0, - 23, 24, 25, 26, 0, 0, 0, 0, 28, 0, - 0, 29, 30, 0, 0, 31, 0, 32, 0, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 0, 0, 0, 0, 0, 0, 47, - 0, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 0, 0, 0, 0, 62, - 0, 0, 0, 0, 0, 63, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 0, 0, 0, 0, 82, 0, - 0, 0, 83, 85, 86, 0, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 0, 101, 102, 103, 0, 237, 0, 0, 0, 84, - 27, 0, 0, 0, 0, 4, 5, 0, 6, 7, - 8, 0, 0, 0, 0, 0, 0, 0, 9, 10, - 0, 0, 0, 11, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 0, 0, 23, 24, 25, - 26, 0, 0, 0, 0, 28, 0, 0, 29, 30, - 0, 0, 31, 0, 32, 0, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, - 0, 0, 0, 0, 0, 0, 47, 0, 48, 49, - 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, - 60, 61, 0, 0, 0, 0, 62, 0, 0, 0, - 0, 0, 63, 0, 0, 0, 0, 0, 0, 312, - 0, 0, 0, 64, 65, 66, 67, 68, 69, 70, - 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, - 81, 0, 0, 0, 0, 82, 0, 0, 0, 83, - 85, 86, 0, 87, 88, 89, 90, 91, 92, 93, - 94, 95, 96, 97, 98, 99, 100, 0, 101, 102, - 103, 0, 104, 0, 0, 0, 84, 27, 0, 0, - 0, 0, 4, 5, 0, 6, 7, 8, 0, 0, - 0, 0, 0, 0, 0, 9, 10, 0, 0, 0, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 0, 0, 23, 24, 25, 26, 0, 0, - 0, 0, 28, 0, 0, 29, 30, 0, 0, 31, - 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 0, 0, 0, - 0, 0, 0, 47, 0, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 0, - 0, 0, 0, 62, 0, 0, 0, 0, 0, 63, - 0, 0, 0, 0, 0, 0, 267, 0, 0, 0, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 0, 0, - 0, 0, 82, 0, 0, 0, 83, 85, 86, 0, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 0, 101, 102, 103, 0, 104, - 0, 0, 0, 84, 27, 0, 0, 0, 0, 4, - 5, 0, 6, 7, 8, 0, 0, 0, 0, 0, - 0, 0, 9, 10, 0, 0, 0, 11, 12, 13, - 14, 15, 16, 17, 18, 19, 20, 21, 22, 0, - 0, 23, 24, 25, 26, 0, 0, 0, 0, 28, - 0, 0, 29, 30, 0, 0, 31, 0, 32, 0, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, 44, 45, 46, 0, 0, 0, 0, 0, 0, - 47, 0, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 57, 58, 59, 60, 61, 0, 0, 0, 0, - 62, 0, 0, 0, 0, 0, 63, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 64, 65, 66, - 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, - 77, 78, 79, 80, 81, 418, 0, 0, 0, 82, - 0, 0, 0, 83, 85, 86, 0, 87, 88, 89, - 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, - 100, 0, 101, 102, 103, 0, 104, 0, 0, 0, - 84, 27, 0, 0, 0, 0, 4, 5, 0, 6, - 7, 8, 0, 0, 0, 0, 0, 0, 0, 9, - 10, 0, 0, 0, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 0, 0, 23, 24, - 25, 26, 0, 0, 0, 0, 28, 0, 0, 29, - 30, 0, 0, 31, 0, 32, 0, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 0, 0, 0, 0, 0, 0, 47, 0, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 0, 0, 0, 0, 62, 0, 0, - 0, 0, 0, 63, 0, 0, 0, 0, 0, 0, - 195, 0, 0, 0, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 0, 0, 0, 0, 82, 0, 0, 0, - 83, 85, 86, 0, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 0, 101, - 102, 103, 0, 104, 0, 0, 0, 84, 27, 0, - 0, 0, 0, 4, 5, 0, 6, 7, 8, 0, - 0, 0, 0, 0, 0, 0, 9, 10, 0, 0, - 0, 11, 12, 13, 14, 15, 16, 17, 18, 19, - 20, 21, 22, 0, 0, 23, 24, 25, 26, 0, - 0, 0, 0, 28, 0, 0, 29, 30, 0, 0, - 31, 0, 32, 0, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, 44, 45, 46, 0, 0, - 0, 0, 0, 0, 47, 0, 48, 49, 50, 51, - 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, - 0, 0, 0, 0, 62, 0, 0, 0, 0, 0, - 63, 0, 0, 0, 0, 0, 0, 457, 0, 0, - 0, 64, 65, 66, 67, 68, 69, 70, 71, 72, - 73, 74, 75, 76, 77, 78, 79, 80, 81, 0, - 0, 0, 0, 82, 0, 0, 0, 83, 85, 86, - 0, 87, 88, 89, 90, 91, 92, 93, 94, 95, - 96, 97, 98, 99, 100, 0, 101, 102, 103, 0, - 104, 0, 0, 0, 84, 27, 0, 0, 0, 0, - 4, 5, 0, 6, 7, 8, 0, 0, 0, 0, - 0, 0, 0, 9, 10, 0, 0, 0, 11, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 0, 0, 23, 24, 25, 26, 0, 0, 0, 0, - 28, 0, 0, 29, 30, 0, 0, 31, 0, 32, - 0, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 0, 0, 0, 0, 0, - 0, 47, 0, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 0, 0, 0, - 0, 62, 0, 0, 0, 0, 0, 63, 0, 0, - 0, 0, 0, 0, 441, 0, 0, 0, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 0, 0, 0, 0, - 82, 0, 0, 0, 83, 85, 86, 0, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 0, 101, 102, 103, 0, 104, 0, 0, - 0, 84, 27, 0, 0, 0, 0, 145, 0, 5, - 0, 6, 7, 8, 0, 0, 146, 0, 0, 147, - 0, 0, 0, 0, 0, 0, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 0, 0, - 23, 24, 25, 26, 0, 0, 0, 148, 28, 0, - 0, 29, 0, 0, 149, 0, 0, 32, 150, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 151, 0, 0, 0, 0, 0, 0, - 0, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 0, 0, 0, 152, 0, - 0, 0, 153, 154, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 155, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 0, 0, 156, 0, 82, 0, - 0, 0, 0, 85, 86, 157, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 158, 101, 102, 103, 0, 104, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 145, 0, 5, 0, 6, - 7, 8, 0, 0, 146, 0, 0, 147, 0, 0, - 0, 0, 0, 0, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 0, 0, 23, 24, - 25, 26, 0, 0, 0, 148, 28, 0, 0, 29, - 0, 0, 149, 0, 0, 32, 150, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 151, 0, 0, 0, 0, 0, 0, 0, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 0, 0, 0, 152, 0, 0, 0, - 153, 154, 0, 0, 0, 0, 0, 0, 0, 452, - 0, 0, 0, 155, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 0, 0, 156, 0, 82, 0, 0, 0, - 0, 85, 86, 157, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 158, 101, - 102, 103, 0, 104, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 145, 0, 5, 0, 6, 7, 8, - 0, 0, 146, 0, 0, 147, 0, 0, 0, 0, - 0, 0, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 0, 0, 23, 24, 25, 26, - 0, 0, 0, 148, 28, 0, 0, 29, 0, 0, - 149, 0, 0, 32, 150, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 151, - 0, 0, 0, 0, 0, 0, 0, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 0, 0, 0, 152, 0, 0, 0, 153, 154, - 0, 0, 0, 0, 0, 0, 0, 206, 0, 0, - 0, 155, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 0, 0, 156, 0, 82, 0, 0, 0, 0, 85, - 86, 157, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 158, 101, 102, 103, - 0, 104, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 145, 0, 5, 0, 6, 7, 8, 0, 0, - 146, 0, 0, 147, 0, 0, 0, 0, 0, 0, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 0, 0, 23, 24, 25, 26, 0, 0, - 0, 148, 28, 0, 0, 29, 0, 0, 149, 0, - 0, 32, 150, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 151, 0, 0, - 0, 0, 0, 0, 0, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 0, - 0, 0, 152, 0, 0, 0, 153, 154, 0, 0, - 0, 0, 0, 0, 0, 188, 0, 0, 0, 155, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 0, 0, - 156, 0, 82, 0, 0, 0, 0, 85, 86, 157, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 158, 101, 102, 103, 0, 104, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 145, - 0, 5, 0, 6, 7, 8, 0, 0, 146, 0, - 0, 147, 0, 0, 0, 0, 0, 0, 11, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 0, 0, 23, 24, 25, 26, 0, 0, 0, 148, - 28, 0, 0, 29, 0, 0, 149, 0, 0, 32, - 284, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 151, 0, 0, 0, 0, - 0, 0, 0, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 0, 0, 0, - 152, 0, 0, 0, 153, 154, 0, 0, 285, 0, - 0, 0, 0, 0, 0, 0, 0, 155, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 286, 0, 156, 0, - 82, 0, 0, 0, 0, 85, 86, 157, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 158, 101, 102, 103, 0, 104, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 145, 4, 5, - 0, 6, 7, 8, 0, 0, 146, 0, 0, 147, - 0, 9, 10, 0, 0, 0, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 0, 0, - 23, 24, 25, 26, 0, 0, 0, 148, 28, 0, - 0, 29, 30, 0, 149, 31, 0, 32, 150, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 151, 0, 0, 0, 0, 0, 47, - 0, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 0, 0, 0, 152, 62, - 0, 0, 153, 154, 0, 63, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 155, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 0, 0, 156, 0, 82, 0, - 0, 0, 83, 85, 86, 157, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 158, 101, 102, 103, 0, 104, 0, 0, 0, 84, - 27, 0, 0, 0, 0, 145, 4, 5, 0, 6, - 7, 8, 0, 0, 146, 0, 0, 147, 0, 9, - 10, 0, 0, 0, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 0, 0, 23, 24, - 25, 26, 0, 0, 0, 148, 28, 0, 0, 29, - 30, 0, 149, 31, 0, 32, 284, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 151, 0, 0, 0, 0, 0, 47, 0, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 0, 0, 0, 152, 62, 0, 0, - 153, 154, 0, 63, 285, 0, 0, 0, 0, 0, - 0, 0, 0, 155, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 355, 0, 156, 0, 82, 0, 0, 0, - 83, 85, 86, 157, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 158, 101, - 102, 103, 0, 104, 0, 0, 0, 84, 27, 0, - 0, 0, 0, 145, 4, 5, 344, 6, 7, 8, - 0, 345, 146, 0, 0, 147, 346, 9, 10, 347, - 348, 0, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 349, 0, 23, 24, 25, 26, - 0, 0, 0, 148, 28, 350, 0, 29, 30, 351, - 149, 31, 0, 32, 284, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 151, - 0, 0, 352, 0, 0, 47, 0, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 0, 0, 0, 152, 62, 0, 0, 153, 154, - 0, 63, 285, 0, 353, 0, 0, 0, 0, 0, - 0, 155, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 355, 0, 156, 0, 82, 0, 0, 356, 83, 85, - 86, 157, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 158, 101, 102, 103, - 0, 104, 357, 0, 0, 84, 27, 0, 0, 0, - 0, 145, 4, 5, 344, 6, 7, 8, 0, 345, - 146, 0, 0, 147, 346, 9, 10, 347, 348, 0, - 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, - 21, 22, 349, 0, 23, 24, 25, 26, 0, 0, - 0, 148, 28, 350, 0, 29, 30, 351, 149, 31, - 0, 32, 284, 33, 34, 35, 36, 37, 38, 39, - 40, 41, 42, 43, 44, 45, 46, 151, 0, 0, - 341, 0, 0, 47, 0, 48, 49, 50, 51, 52, - 53, 54, 55, 56, 57, 58, 59, 60, 61, 0, - 0, 0, 152, 62, 0, 0, 153, 154, 0, 63, - 285, 0, 353, 0, 0, 0, 0, 0, 0, 155, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - 74, 75, 76, 77, 78, 79, 80, 81, 355, 0, - 156, 0, 82, 0, 0, 356, 83, 85, 86, 157, - 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, - 97, 98, 99, 100, 158, 101, 102, 103, 0, 104, - 357, 0, 0, 84, 27, 0, 0, 0, 0, 145, - 4, 5, 344, 6, 7, 8, 0, 345, 146, 0, - 0, 147, 346, 9, 10, 347, 348, 0, 11, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - 349, 0, 23, 24, 25, 26, 0, 0, 0, 148, - 28, 350, 0, 29, 30, 351, 149, 31, 0, 32, - 284, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, 43, 44, 45, 46, 151, 0, 0, 352, 0, - 0, 47, 0, 48, 49, 50, 51, 52, 53, 54, - 55, 56, 57, 58, 59, 60, 61, 0, 0, 0, - 152, 62, 0, 0, 153, 154, 0, 63, 285, 0, - 353, 0, 0, 416, 0, 0, 0, 155, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 355, 0, 156, 0, - 82, 0, 0, 356, 83, 85, 86, 157, 87, 88, - 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, - 99, 100, 158, 101, 102, 103, 0, 104, 357, 0, - 0, 84, 27, 0, 0, 0, 0, 145, 4, 5, - 344, 6, 7, 8, 0, 345, 146, 0, 0, 147, - 346, 9, 10, 347, 348, 0, 11, 12, 13, 14, - 15, 16, 17, 18, 19, 20, 21, 22, 349, 0, - 23, 24, 25, 26, 0, 0, 0, 148, 28, 350, - 0, 29, 30, 351, 149, 31, 0, 32, 284, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 44, 45, 46, 151, 0, 0, 352, 0, 0, 47, - 0, 48, 49, 50, 51, 52, 53, 54, 55, 56, - 57, 58, 59, 60, 61, 0, 0, 0, 152, 62, - 0, 0, 153, 154, 0, 63, 285, 0, 353, 0, - 0, 354, 0, 0, 0, 155, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, - 78, 79, 80, 81, 355, 0, 156, 0, 82, 0, - 0, 356, 83, 85, 86, 157, 87, 88, 89, 90, - 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, - 158, 101, 102, 103, 0, 104, 357, 0, 0, 84, - 27, 0, 0, 0, 0, 145, 4, 5, 344, 6, - 7, 8, 0, 345, 146, 0, 0, 147, 346, 9, - 10, 347, 348, 0, 11, 12, 13, 14, 15, 16, - 17, 18, 19, 20, 21, 22, 349, 0, 23, 24, - 25, 26, 0, 0, 0, 148, 28, 350, 0, 29, - 30, 351, 149, 31, 0, 32, 284, 33, 34, 35, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 151, 0, 0, 352, 0, 0, 47, 0, 48, - 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, - 59, 60, 61, 0, 0, 0, 152, 62, 0, 0, - 153, 154, 0, 63, 285, 0, 353, 0, 0, 434, - 0, 0, 0, 155, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, - 80, 81, 355, 0, 156, 0, 82, 0, 0, 356, - 83, 85, 86, 157, 87, 88, 89, 90, 91, 92, - 93, 94, 95, 96, 97, 98, 99, 100, 158, 101, - 102, 103, 0, 104, 357, 0, 0, 84, 27, 0, - 0, 0, 0, 145, 4, 5, 344, 6, 7, 8, - 0, 345, 146, 0, 0, 147, 346, 9, 10, 347, - 348, 0, 11, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, 349, 0, 23, 24, 25, 26, - 0, 0, 0, 148, 28, 350, 0, 29, 30, 351, - 149, 31, 0, 32, 284, 33, 34, 35, 36, 37, - 38, 39, 40, 41, 42, 43, 44, 45, 46, 151, - 0, 0, 352, 0, 0, 47, 0, 48, 49, 50, - 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, - 61, 0, 0, 0, 152, 62, 0, 0, 153, 154, - 0, 63, 285, 0, 353, 0, 0, 414, 0, 0, - 0, 155, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, - 355, 0, 156, 0, 82, 0, 0, 356, 83, 85, - 86, 157, 87, 88, 89, 90, 91, 92, 93, 94, - 95, 96, 97, 98, 99, 100, 158, 101, 102, 103, - 0, 104, 357, 0, 0, 84, 27, 0, 0, 0, - 0, + -25, 332, 446, 246, 339, 306, 450, 319, 428, 251, + 429, 317, 331, 376, 144, 377, 461, 437, 443, 266, + 378, 316, 421, 385, 314, 170, 407, 445, 431, 304, + 381, 251, 244, -24, 334, 199, 191, 217, 380, -19, + 246, 384, -24, 412, 397, 139, 399, 403, 139, 404, + 459, 244, 171, 373, 243, 171, 174, 331, 462, 239, + 342, 175, 191, 139, 460, 217, 139, 269, 264, -25, + 191, 194, 139, 139, 227, 139, 375, 139, 455, 181, + 139, 453, 139, 438, 142, 227, 227, 2, 1, 207, + 254, 139, 207, 227, 200, 219, 424, 200, 341, 435, + 179, 176, 139, 207, 227, 240, 219, 248, 143, 228, + 167, 307, 0, 249, 0, 439, 210, 321, 0, 322, + 228, 228, 0, 29, 320, 0, 0, 182, 228, 0, + 222, 0, 0, 0, 0, 456, 0, 0, 0, 228, + 222, 210, 0, 308, 210, 309, 220, 211, 180, 212, + 256, 0, 0, 48, 223, 0, 342, 220, 168, 321, + 224, 322, 222, 454, 223, 323, 61, 257, 0, 383, + 224, 409, 211, 208, 212, 211, 208, 212, 423, 0, + 0, 0, 320, 258, 0, 0, 223, 208, 433, 225, + 0, 0, 224, 0, -124, 235, 420, 177, 140, 225, + 270, 241, 271, -124, 0, 259, -124, 323, 0, 0, + 204, 0, 0, 201, 145, 436, 169, 321, 0, 322, + 0, 225, 272, 146, -124, 0, 147, 0, 0, 0, + 0, 0, 0, -124, -124, 0, -124, 0, 0, 0, + 0, -124, 273, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 148, 0, 0, 0, 0, 0, + 0, 149, 0, 0, -124, 323, 0, 0, 0, 301, + 0, -124, 274, 0, 0, 0, 0, -91, 0, 0, + 0, 0, 0, 0, 0, -124, 0, 0, 0, -124, + -124, 0, 275, 276, 0, 0, 0, 277, 0, 0, + 0, 0, -124, 0, 0, 152, 0, 278, 0, 153, + 154, 0, 0, 0, 0, -124, 0, 0, 0, -124, + -124, 0, 155, -124, 0, 0, 0, 0, 0, 0, + 0, 0, -124, 0, 0, 0, 0, 279, 0, 0, + 0, 0, 0, 156, 0, 0, 0, -124, 0, 0, + 0, 0, 157, -124, 0, 0, 145, 0, 0, 0, + 0, 0, -124, 0, 280, 146, 0, 158, 147, 0, + 0, 0, 0, 0, 0, 0, 0, -124, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 149, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 153, 154, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 155, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 157, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 158, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 5, 0, 6, 7, 8, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 0, 0, 23, 24, 25, 26, 0, + 0, 0, 0, 28, 0, 0, 0, 0, 0, 0, + 0, 0, 32, 0, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 0, + 0, 0, 0, 82, 0, 0, 0, 0, 85, 86, + 0, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 0, 101, 102, 103, 0, + 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 5, 0, 6, 7, 8, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 11, 12, 13, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 0, + 0, 23, 24, 25, 26, 0, 0, 0, 0, 28, + 0, 0, 29, 0, 0, 0, 0, 0, 32, 0, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 0, 0, 0, 0, 0, 0, + 0, 0, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 0, 0, 0, 0, 82, + 0, 0, 0, 0, 85, 86, 0, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 0, 101, 102, 103, 0, 104, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 5, 0, 6, 7, + 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 0, 0, 23, 24, 25, + 26, 0, 0, 0, 0, 28, 0, 0, 29, 260, + 0, 0, 0, 0, 32, 0, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 0, 0, 0, 0, 82, 0, 0, 0, 0, + 85, 86, 0, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 0, 101, 102, + 103, 0, 104, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 5, 0, 6, 7, 8, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, + 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 0, 0, 23, 24, 25, 26, 0, 0, 0, + 0, 28, 0, 0, 29, 448, 0, 0, 0, 0, + 32, 0, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 0, 0, 0, 0, + 0, 0, 0, 0, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 449, 0, 0, + 0, 82, 0, 0, 0, 0, 85, 86, 0, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 0, 101, 102, 103, 0, 104, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 4, 5, + 0, 6, 7, 8, 0, 0, 0, 0, 0, 0, + 0, 9, 10, 0, 0, 0, 11, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 0, 0, + 23, 24, 25, 26, 0, 0, 0, 0, 28, 0, + 0, 29, 30, 0, 0, 31, 0, 32, 0, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, + 44, 45, 46, 0, 0, 0, 0, 0, 0, 47, + 0, 48, 49, 50, 51, 52, 53, 54, 55, 56, + 57, 58, 59, 60, 61, 0, 0, 0, 0, 62, + 0, 0, 0, 0, 0, 63, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 64, 65, 66, 67, + 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, + 78, 79, 80, 81, 0, 0, 0, 0, 82, 0, + 0, 0, 83, 85, 86, 0, 87, 88, 89, 90, + 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, + 0, 101, 102, 103, 0, 104, 0, 0, 0, 84, + 27, 0, 0, 0, 0, 4, 5, 0, 6, 7, + 8, 0, 0, 0, 0, 0, 0, 0, 9, 10, + 0, 0, 0, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 0, 0, 23, 24, 25, + 26, 0, 0, 0, 0, 28, 0, 0, 29, 30, + 0, 0, 31, 0, 32, 0, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 0, 0, 0, 0, 0, 0, 47, 0, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 0, 0, 0, 0, 62, 0, 0, 0, + 0, 0, 63, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 0, 0, 0, 0, 82, 0, 0, 0, 83, + 85, 86, 0, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 0, 101, 102, + 103, 0, 237, 0, 0, 0, 84, 27, 0, 0, + 0, 0, 4, 5, 0, 6, 7, 8, 0, 0, + 0, 0, 0, 0, 0, 9, 10, 0, 0, 0, + 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, 0, 0, 23, 24, 25, 26, 0, 0, + 0, 0, 28, 0, 0, 29, 30, 0, 0, 31, + 0, 32, 0, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, 43, 44, 45, 46, 0, 0, 0, + 0, 0, 0, 47, 0, 48, 49, 50, 51, 52, + 53, 54, 55, 56, 57, 58, 59, 60, 61, 0, + 0, 0, 0, 62, 0, 0, 0, 0, 0, 63, + 0, 0, 0, 0, 0, 0, 195, 0, 0, 0, + 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, + 74, 75, 76, 77, 78, 79, 80, 81, 0, 0, + 0, 0, 82, 0, 0, 0, 83, 85, 86, 0, + 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, + 97, 98, 99, 100, 0, 101, 102, 103, 0, 104, + 0, 0, 0, 84, 27, 0, 0, 0, 0, 4, + 5, 0, 6, 7, 8, 0, 0, 0, 0, 0, + 0, 0, 9, 10, 0, 0, 0, 11, 12, 13, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 0, + 0, 23, 24, 25, 26, 0, 0, 0, 0, 28, + 0, 0, 29, 30, 0, 0, 31, 0, 32, 0, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 0, 0, 0, 0, 0, 0, + 47, 0, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 0, 0, 0, 0, + 62, 0, 0, 0, 0, 0, 63, 0, 0, 0, + 0, 0, 0, 457, 0, 0, 0, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 0, 0, 0, 0, 82, + 0, 0, 0, 83, 85, 86, 0, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 0, 101, 102, 103, 0, 104, 0, 0, 0, + 84, 27, 0, 0, 0, 0, 4, 5, 0, 6, + 7, 8, 0, 0, 0, 0, 0, 0, 0, 9, + 10, 0, 0, 0, 11, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 22, 0, 0, 23, 24, + 25, 26, 0, 0, 0, 0, 28, 0, 0, 29, + 30, 0, 0, 31, 0, 32, 0, 33, 34, 35, + 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, + 46, 0, 0, 0, 0, 0, 0, 47, 0, 48, + 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, + 59, 60, 61, 0, 0, 0, 0, 62, 0, 0, + 0, 0, 0, 63, 0, 0, 0, 0, 0, 0, + 441, 0, 0, 0, 64, 65, 66, 67, 68, 69, + 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, + 80, 81, 0, 0, 0, 0, 82, 0, 0, 0, + 83, 85, 86, 0, 87, 88, 89, 90, 91, 92, + 93, 94, 95, 96, 97, 98, 99, 100, 0, 101, + 102, 103, 0, 104, 0, 0, 0, 84, 27, 0, + 0, 0, 0, 4, 5, 0, 6, 7, 8, 0, + 0, 0, 0, 0, 0, 0, 9, 10, 0, 0, + 0, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 0, 0, 23, 24, 25, 26, 0, + 0, 0, 0, 28, 0, 0, 29, 30, 0, 0, + 31, 0, 32, 0, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 0, 0, + 0, 0, 0, 0, 47, 0, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 0, 0, 0, 0, 62, 0, 0, 0, 0, 0, + 63, 0, 0, 0, 0, 0, 0, 312, 0, 0, + 0, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 0, + 0, 0, 0, 82, 0, 0, 0, 83, 85, 86, + 0, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 0, 101, 102, 103, 0, + 104, 0, 0, 0, 84, 27, 0, 0, 0, 0, + 4, 5, 0, 6, 7, 8, 0, 0, 0, 0, + 0, 0, 0, 9, 10, 0, 0, 0, 11, 12, + 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, + 0, 0, 23, 24, 25, 26, 0, 0, 0, 0, + 28, 0, 0, 29, 30, 0, 0, 31, 0, 32, + 0, 33, 34, 35, 36, 37, 38, 39, 40, 41, + 42, 43, 44, 45, 46, 0, 0, 0, 0, 0, + 0, 47, 0, 48, 49, 50, 51, 52, 53, 54, + 55, 56, 57, 58, 59, 60, 61, 0, 0, 0, + 0, 62, 0, 0, 0, 0, 0, 63, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 64, 65, + 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 418, 0, 0, 0, + 82, 0, 0, 0, 83, 85, 86, 0, 87, 88, + 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, + 99, 100, 0, 101, 102, 103, 0, 104, 0, 0, + 0, 84, 27, 0, 0, 0, 0, 4, 5, 0, + 6, 7, 8, 0, 0, 0, 0, 0, 0, 0, + 9, 10, 0, 0, 0, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 0, 0, 23, + 24, 25, 26, 0, 0, 0, 0, 28, 0, 0, + 29, 30, 0, 0, 31, 0, 32, 0, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 0, 0, 0, 0, 0, 0, 47, 0, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, 59, 60, 61, 0, 0, 0, 0, 62, 0, + 0, 0, 0, 0, 63, 0, 0, 0, 0, 0, + 0, 267, 0, 0, 0, 64, 65, 66, 67, 68, + 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 0, 0, 0, 0, 82, 0, 0, + 0, 83, 85, 86, 0, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 0, + 101, 102, 103, 0, 104, 0, 0, 0, 84, 27, + 0, 0, 0, 0, 145, 0, 5, 0, 6, 7, + 8, 0, 0, 146, 0, 0, 147, 0, 0, 0, + 0, 0, 0, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 0, 0, 23, 24, 25, + 26, 0, 0, 0, 148, 28, 0, 0, 29, 0, + 0, 149, 0, 0, 32, 150, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 151, 0, 0, 0, 0, 0, 0, 0, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 0, 0, 0, 152, 0, 0, 0, 153, + 154, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 155, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 0, 0, 156, 0, 82, 0, 0, 0, 0, + 85, 86, 157, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 158, 101, 102, + 103, 0, 104, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 145, 0, 5, 0, 6, 7, 8, 0, + 0, 146, 0, 0, 147, 0, 0, 0, 0, 0, + 0, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 0, 0, 23, 24, 25, 26, 0, + 0, 0, 148, 28, 0, 0, 29, 0, 0, 149, + 0, 0, 32, 150, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 151, 0, + 0, 0, 0, 0, 0, 0, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 0, 0, 0, 152, 0, 0, 0, 153, 154, 0, + 0, 0, 0, 0, 0, 0, 188, 0, 0, 0, + 155, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 0, + 0, 156, 0, 82, 0, 0, 0, 0, 85, 86, + 157, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 158, 101, 102, 103, 0, + 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 145, 0, 5, 0, 6, 7, 8, 0, 0, 146, + 0, 0, 147, 0, 0, 0, 0, 0, 0, 11, + 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 0, 0, 23, 24, 25, 26, 0, 0, 0, + 148, 28, 0, 0, 29, 0, 0, 149, 0, 0, + 32, 150, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 151, 0, 0, 0, + 0, 0, 0, 0, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 0, 0, + 0, 152, 0, 0, 0, 153, 154, 0, 0, 0, + 0, 0, 0, 0, 452, 0, 0, 0, 155, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 0, 0, 156, + 0, 82, 0, 0, 0, 0, 85, 86, 157, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 158, 101, 102, 103, 0, 104, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 145, 0, + 5, 0, 6, 7, 8, 0, 0, 146, 0, 0, + 147, 0, 0, 0, 0, 0, 0, 11, 12, 13, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 0, + 0, 23, 24, 25, 26, 0, 0, 0, 148, 28, + 0, 0, 29, 0, 0, 149, 0, 0, 32, 150, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 151, 0, 0, 0, 0, 0, + 0, 0, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 0, 0, 0, 152, + 0, 0, 0, 153, 154, 0, 0, 0, 0, 0, + 0, 0, 206, 0, 0, 0, 155, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 0, 0, 156, 0, 82, + 0, 0, 0, 0, 85, 86, 157, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 158, 101, 102, 103, 0, 104, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 145, 0, 5, 0, + 6, 7, 8, 0, 0, 146, 0, 0, 147, 0, + 0, 0, 0, 0, 0, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 0, 0, 23, + 24, 25, 26, 0, 0, 0, 148, 28, 0, 0, + 29, 0, 0, 149, 0, 0, 32, 284, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 151, 0, 0, 0, 0, 0, 0, 0, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, 59, 60, 61, 0, 0, 0, 152, 0, 0, + 0, 153, 154, 0, 0, 285, 0, 0, 0, 0, + 0, 0, 0, 0, 155, 64, 65, 66, 67, 68, + 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 286, 0, 156, 0, 82, 0, 0, + 0, 0, 85, 86, 157, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 158, + 101, 102, 103, 0, 104, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 145, 4, 5, 0, 6, 7, + 8, 0, 0, 146, 0, 0, 147, 0, 9, 10, + 0, 0, 0, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 0, 0, 23, 24, 25, + 26, 0, 0, 0, 148, 28, 0, 0, 29, 30, + 0, 149, 31, 0, 32, 150, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 151, 0, 0, 0, 0, 0, 47, 0, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 0, 0, 0, 152, 62, 0, 0, 153, + 154, 0, 63, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 155, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 0, 0, 156, 0, 82, 0, 0, 0, 83, + 85, 86, 157, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 158, 101, 102, + 103, 0, 104, 0, 0, 0, 84, 27, 0, 0, + 0, 0, 145, 4, 5, 0, 6, 7, 8, 0, + 0, 146, 0, 0, 147, 0, 9, 10, 0, 0, + 0, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 0, 0, 23, 24, 25, 26, 0, + 0, 0, 148, 28, 0, 0, 29, 30, 0, 149, + 31, 0, 32, 284, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 151, 0, + 0, 0, 0, 0, 47, 0, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 0, 0, 0, 152, 62, 0, 0, 153, 154, 0, + 63, 285, 0, 0, 0, 0, 0, 0, 0, 0, + 155, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 355, + 0, 156, 0, 82, 0, 0, 0, 83, 85, 86, + 157, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 158, 101, 102, 103, 0, + 104, 0, 0, 0, 84, 27, 0, 0, 0, 0, + 145, 4, 5, 344, 6, 7, 8, 0, 345, 146, + 0, 0, 147, 346, 9, 10, 347, 348, 0, 11, + 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 349, 0, 23, 24, 25, 26, 0, 0, 0, + 148, 28, 350, 0, 29, 30, 351, 149, 31, 0, + 32, 284, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 151, 0, 0, 341, + 0, 0, 47, 0, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 0, 0, + 0, 152, 62, 0, 0, 153, 154, 0, 63, 285, + 0, 353, 0, 0, 0, 0, 0, 0, 155, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 355, 0, 156, + 0, 82, 0, 0, 356, 83, 85, 86, 157, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 158, 101, 102, 103, 0, 104, 357, + 0, 0, 84, 27, 0, 0, 0, 0, 145, 4, + 5, 344, 6, 7, 8, 0, 345, 146, 0, 0, + 147, 346, 9, 10, 347, 348, 0, 11, 12, 13, + 14, 15, 16, 17, 18, 19, 20, 21, 22, 349, + 0, 23, 24, 25, 26, 0, 0, 0, 148, 28, + 350, 0, 29, 30, 351, 149, 31, 0, 32, 284, + 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, + 43, 44, 45, 46, 151, 0, 0, 352, 0, 0, + 47, 0, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 57, 58, 59, 60, 61, 0, 0, 0, 152, + 62, 0, 0, 153, 154, 0, 63, 285, 0, 353, + 0, 0, 0, 0, 0, 0, 155, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, + 77, 78, 79, 80, 81, 355, 0, 156, 0, 82, + 0, 0, 356, 83, 85, 86, 157, 87, 88, 89, + 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, + 100, 158, 101, 102, 103, 0, 104, 357, 0, 0, + 84, 27, 0, 0, 0, 0, 145, 4, 5, 344, + 6, 7, 8, 0, 345, 146, 0, 0, 147, 346, + 9, 10, 347, 348, 0, 11, 12, 13, 14, 15, + 16, 17, 18, 19, 20, 21, 22, 349, 0, 23, + 24, 25, 26, 0, 0, 0, 148, 28, 350, 0, + 29, 30, 351, 149, 31, 0, 32, 284, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, + 45, 46, 151, 0, 0, 352, 0, 0, 47, 0, + 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, + 58, 59, 60, 61, 0, 0, 0, 152, 62, 0, + 0, 153, 154, 0, 63, 285, 0, 353, 0, 0, + 434, 0, 0, 0, 155, 64, 65, 66, 67, 68, + 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, + 79, 80, 81, 355, 0, 156, 0, 82, 0, 0, + 356, 83, 85, 86, 157, 87, 88, 89, 90, 91, + 92, 93, 94, 95, 96, 97, 98, 99, 100, 158, + 101, 102, 103, 0, 104, 357, 0, 0, 84, 27, + 0, 0, 0, 0, 145, 4, 5, 344, 6, 7, + 8, 0, 345, 146, 0, 0, 147, 346, 9, 10, + 347, 348, 0, 11, 12, 13, 14, 15, 16, 17, + 18, 19, 20, 21, 22, 349, 0, 23, 24, 25, + 26, 0, 0, 0, 148, 28, 350, 0, 29, 30, + 351, 149, 31, 0, 32, 284, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, + 151, 0, 0, 352, 0, 0, 47, 0, 48, 49, + 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, + 60, 61, 0, 0, 0, 152, 62, 0, 0, 153, + 154, 0, 63, 285, 0, 353, 0, 0, 416, 0, + 0, 0, 155, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, + 81, 355, 0, 156, 0, 82, 0, 0, 356, 83, + 85, 86, 157, 87, 88, 89, 90, 91, 92, 93, + 94, 95, 96, 97, 98, 99, 100, 158, 101, 102, + 103, 0, 104, 357, 0, 0, 84, 27, 0, 0, + 0, 0, 145, 4, 5, 344, 6, 7, 8, 0, + 345, 146, 0, 0, 147, 346, 9, 10, 347, 348, + 0, 11, 12, 13, 14, 15, 16, 17, 18, 19, + 20, 21, 22, 349, 0, 23, 24, 25, 26, 0, + 0, 0, 148, 28, 350, 0, 29, 30, 351, 149, + 31, 0, 32, 284, 33, 34, 35, 36, 37, 38, + 39, 40, 41, 42, 43, 44, 45, 46, 151, 0, + 0, 352, 0, 0, 47, 0, 48, 49, 50, 51, + 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, + 0, 0, 0, 152, 62, 0, 0, 153, 154, 0, + 63, 285, 0, 353, 0, 0, 354, 0, 0, 0, + 155, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, 74, 75, 76, 77, 78, 79, 80, 81, 355, + 0, 156, 0, 82, 0, 0, 356, 83, 85, 86, + 157, 87, 88, 89, 90, 91, 92, 93, 94, 95, + 96, 97, 98, 99, 100, 158, 101, 102, 103, 0, + 104, 357, 0, 0, 84, 27, 0, 0, 0, 0, + 145, 4, 5, 344, 6, 7, 8, 0, 345, 146, + 0, 0, 147, 346, 9, 10, 347, 348, 0, 11, + 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, + 22, 349, 0, 23, 24, 25, 26, 0, 0, 0, + 148, 28, 350, 0, 29, 30, 351, 149, 31, 0, + 32, 284, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 44, 45, 46, 151, 0, 0, 352, + 0, 0, 47, 0, 48, 49, 50, 51, 52, 53, + 54, 55, 56, 57, 58, 59, 60, 61, 0, 0, + 0, 152, 62, 0, 0, 153, 154, 0, 63, 285, + 0, 353, 0, 0, 414, 0, 0, 0, 155, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, + 75, 76, 77, 78, 79, 80, 81, 355, 0, 156, + 0, 82, 0, 0, 356, 83, 85, 86, 157, 87, + 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 158, 101, 102, 103, 0, 104, 357, + 0, 0, 84, 27, 0, 0, 0, 0, - 406, 138, 242, 190, 186, 398, 215, 213, 408, 178, - 193, 137, 202, 422, 214, 136, 310, 419, 335, 261, - 183, 283, 262, 374, 340, 282, 372, 302, 255, 330, - 382, 406, 303, 141, 238, 343, 253, 187, 265, 198, - 310, 198, 310, 310, 310, 218, 221, 0, 0, 198, - 198, 198, 310, 216, 198, 234, 209, 372, 310, 198, - 198, 372, 196, 229, 198, 198, 372, 230, 372, 252, - 372, 111, 0, 198, 166, 372, 250, 447, 372, 315, - 318, 440, 247, 0, 0, 0, 198, 198, 184, 444, - 226, 233, 185, 198, 198, 405, 165, 231, 198, 198, - 166, 236, 198, 232, 389, 417, 245, 372, 0, 413, - 166, 0, 198, 300, 417, 196, 411, 313, 166, 372, - 401, 198, 165, 417, 198, 196, 379, 458, 166, 338, - 287, 295, 165, 198, 196, 0, 268, 196, 393, 333, - 165, 451, 0, 0, 189, 166, 196, 0, 442, 389, - 165, 386, 425, 372, 189, 387, 0, 401, 336, 393, - 0, 337, 0, 0, 0, 432, 0, 165, 164, 0, - 389, 396, 189, 0, 0, 0, 426, 395, 0, 0, - 0, 0, 392, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 396, 0, 0, 0, 0, 0, 395, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 415, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 300, 0, 0, 0, 0, 0, - 0, 430, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 287, 295, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 305, 0, 0}; + 242, 406, 398, 422, 408, 178, 137, 190, 186, 215, + 214, 213, 136, 193, 111, 202, 183, 141, 282, 374, + 419, 372, 340, 302, 283, 262, 261, 335, 330, 382, + 253, 310, 238, 303, 187, 343, 255, 406, 265, 372, + 310, 0, 0, 310, 198, 198, 209, 216, 310, 310, + 198, 310, 0, 198, 0, 198, 198, 198, 198, 218, + 221, 234, 226, 196, 198, 245, 198, 198, 372, 310, + 166, 0, 184, 138, 252, 247, 185, 447, 250, 372, + 444, 198, 198, 372, 230, 440, 318, 417, 315, 236, + 372, 372, 165, 198, 198, 198, 198, 231, 229, 198, + 233, 372, 372, 232, 300, 389, 405, 196, 338, 313, + 166, 166, 0, 198, 372, 0, 0, 0, 401, 166, + 0, 287, 295, 166, 166, 0, 196, 417, 458, 198, + 0, 411, 165, 165, 451, 425, 198, 336, 417, 379, + 337, 165, 196, 300, 268, 165, 165, 164, 0, 196, + 0, 333, 386, 198, 189, 372, 387, 0, 415, 426, + 287, 295, 393, 189, 401, 0, 196, 189, 442, 0, + 0, 0, 432, 389, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 396, 0, 0, 0, 0, + 0, 395, 0, 413, 0, 0, 392, 0, 0, 0, + 0, 305, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 393, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 389, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 396, + 0, 0, 0, 0, 0, 395, 0, 0, 0, 0, + 0, 0, 0, 0, 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, 0, 0, 0, 0, 0 +}; const short GLSLParserTable::action_check [] = { - 111, 79, 112, 134, 45, 79, 164, 76, 76, 134, - 134, 168, 79, 45, 79, 112, 52, 134, 76, 52, - 77, 45, 134, 112, 0, 134, 18, 79, 45, 17, - 114, 77, 45, 52, 18, 114, 52, 18, 134, 4, - 79, 112, 79, 44, 134, 166, 112, 52, 164, 112, - 114, 14, 79, 168, 77, 52, 52, 4, 112, 52, - 45, 114, 52, 114, 79, 79, 18, 79, 99, 14, - 18, 45, 134, 52, 18, 17, 18, 18, 18, 77, - 18, 18, 52, 78, 18, 21, 54, 76, 18, 18, - 101, 17, 18, 54, 21, 78, 107, 1, 2, 52, - 78, 18, 18, 77, 18, 78, 21, 46, 54, 78, - 56, 46, -1, -1, -1, -1, 22, 104, 113, -1, - 45, -1, 104, 76, -1, -1, -1, -1, -1, 51, - 113, 54, 104, 39, 102, 113, 134, -1, -1, -1, - 113, 102, -1, 50, 113, 134, -1, 19, 135, 55, - 137, 50, 77, 135, 79, 137, 102, -1, 97, 81, - 6, -1, 97, 135, 134, 137, 19, 74, 50, 105, - 114, 77, 94, 80, 114, 74, -1, 114, 105, 102, - 114, 80, 54, -1, 56, 114, 3, -1, 5, -1, - 105, -1, 74, 134, -1, -1, 134, 114, 80, -1, - -1, 54, 109, 56, 134, 7, -1, 7, 25, -1, - 109, -1, -1, -1, 16, -1, 16, 7, 134, 19, - 134, -1, -1, -1, -1, -1, 16, 109, 45, 19, - 102, -1, -1, -1, -1, -1, -1, 160, -1, -1, - -1, -1, -1, -1, -1, 47, -1, 47, -1, 102, - -1, -1, 54, -1, 54, -1, -1, 47, 75, -1, - -1, 114, 52, -1, 54, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 95, 96, - -1, -1, -1, 100, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 110, -1, -1, 98, -1, 98, -1, - 102, 103, 102, 103, -1, -1, -1, -1, 98, -1, - -1, -1, 102, 103, -1, 115, -1, -1, -1, -1, - -1, -1, -1, 140, -1, 115, -1, -1, -1, 7, - -1, -1, -1, -1, 136, -1, 136, -1, 16, -1, - -1, 19, -1, 145, -1, 145, 136, -1, -1, -1, - 167, -1, -1, -1, -1, 145, -1, -1, 160, -1, - 160, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 160, -1, -1, -1, -1, -1, 54, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 102, 103, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 115, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 145, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 160, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 9, -1, 11, - 12, 13, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, -1, -1, 40, 41, - 42, 43, -1, -1, -1, -1, 48, -1, -1, -1, - -1, -1, -1, -1, -1, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, -1, -1, -1, -1, 138, -1, -1, -1, - -1, 143, 144, -1, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, - 162, 163, -1, 165, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 9, -1, 11, 12, 13, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, -1, -1, 40, 41, 42, 43, -1, -1, - -1, -1, 48, -1, -1, 51, -1, -1, -1, -1, - -1, 57, -1, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, -1, -1, -1, - -1, -1, -1, -1, -1, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, -1, -1, - -1, -1, 138, -1, -1, -1, -1, 143, 144, -1, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, -1, 161, 162, 163, -1, 165, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 9, - -1, 11, 12, 13, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, -1, -1, - 40, 41, 42, 43, -1, -1, -1, -1, 48, -1, - -1, 51, 52, -1, -1, -1, -1, 57, -1, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, -1, -1, -1, -1, -1, -1, -1, - -1, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, -1, -1, -1, -1, 138, -1, - -1, -1, -1, 143, 144, -1, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - -1, 161, 162, 163, -1, 165, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 9, -1, 11, 12, 13, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, -1, -1, 40, 41, 42, 43, - -1, -1, -1, -1, 48, -1, -1, 51, 52, -1, - -1, -1, -1, 57, -1, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, -1, - -1, -1, -1, -1, -1, -1, -1, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, -1, -1, -1, 138, -1, -1, -1, -1, 143, - 144, -1, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, -1, 161, 162, 163, - -1, 165, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 8, 9, -1, 11, 12, 13, -1, -1, -1, - -1, -1, -1, -1, 21, 22, -1, -1, -1, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, - 37, -1, -1, 40, 41, 42, 43, -1, -1, -1, - -1, 48, -1, -1, 51, 52, -1, -1, 55, -1, - 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 70, 71, 72, -1, -1, -1, -1, - -1, -1, 79, -1, 81, 82, 83, 84, 85, 86, - 87, 88, 89, 90, 91, 92, 93, 94, -1, -1, - -1, -1, 99, -1, -1, -1, -1, -1, 105, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, - 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, - 127, 128, 129, 130, 131, 132, 133, -1, -1, -1, - -1, 138, -1, -1, -1, 142, 143, 144, -1, 146, - 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, - 157, 158, 159, -1, 161, 162, 163, -1, 165, -1, - -1, -1, 169, 170, -1, -1, -1, -1, 8, 9, - -1, 11, 12, 13, -1, -1, -1, -1, -1, -1, - -1, 21, 22, -1, -1, -1, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, -1, -1, - 40, 41, 42, 43, -1, -1, -1, -1, 48, -1, - -1, 51, 52, -1, -1, 55, -1, 57, -1, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, -1, -1, -1, -1, -1, -1, 79, - -1, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, -1, -1, -1, -1, 99, - -1, -1, -1, -1, -1, 105, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, -1, -1, -1, -1, 138, -1, - -1, -1, 142, 143, 144, -1, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - -1, 161, 162, 163, -1, 165, -1, -1, -1, 169, - 170, -1, -1, -1, -1, 8, 9, -1, 11, 12, - 13, -1, -1, -1, -1, -1, -1, -1, 21, 22, - -1, -1, -1, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, -1, -1, 40, 41, 42, - 43, -1, -1, -1, -1, 48, -1, -1, 51, 52, - -1, -1, 55, -1, 57, -1, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, - -1, -1, -1, -1, -1, -1, 79, -1, 81, 82, - 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, - 93, 94, -1, -1, -1, -1, 99, -1, -1, -1, - -1, -1, 105, -1, -1, -1, -1, -1, -1, 112, - -1, -1, -1, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, - 133, -1, -1, -1, -1, 138, -1, -1, -1, 142, - 143, 144, -1, 146, 147, 148, 149, 150, 151, 152, - 153, 154, 155, 156, 157, 158, 159, -1, 161, 162, - 163, -1, 165, -1, -1, -1, 169, 170, -1, -1, - -1, -1, 8, 9, -1, 11, 12, 13, -1, -1, - -1, -1, -1, -1, -1, 21, 22, -1, -1, -1, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, -1, -1, 40, 41, 42, 43, -1, -1, - -1, -1, 48, -1, -1, 51, 52, -1, -1, 55, - -1, 57, -1, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, -1, -1, -1, - -1, -1, -1, 79, -1, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, -1, - -1, -1, -1, 99, -1, -1, -1, -1, -1, 105, - -1, -1, -1, -1, -1, -1, 112, -1, -1, -1, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, -1, -1, - -1, -1, 138, -1, -1, -1, 142, 143, 144, -1, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, -1, 161, 162, 163, -1, 165, - -1, -1, -1, 169, 170, -1, -1, -1, -1, 8, - 9, -1, 11, 12, 13, -1, -1, -1, -1, -1, - -1, -1, 21, 22, -1, -1, -1, 26, 27, 28, - 29, 30, 31, 32, 33, 34, 35, 36, 37, -1, - -1, 40, 41, 42, 43, -1, -1, -1, -1, 48, - -1, -1, 51, 52, -1, -1, 55, -1, 57, -1, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, 70, 71, 72, -1, -1, -1, -1, -1, -1, - 79, -1, 81, 82, 83, 84, 85, 86, 87, 88, - 89, 90, 91, 92, 93, 94, -1, -1, -1, -1, - 99, -1, -1, -1, -1, -1, 105, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 116, 117, 118, - 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, - 129, 130, 131, 132, 133, 134, -1, -1, -1, 138, - -1, -1, -1, 142, 143, 144, -1, 146, 147, 148, - 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, - 159, -1, 161, 162, 163, -1, 165, -1, -1, -1, - 169, 170, -1, -1, -1, -1, 8, 9, -1, 11, - 12, 13, -1, -1, -1, -1, -1, -1, -1, 21, - 22, -1, -1, -1, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, -1, -1, 40, 41, - 42, 43, -1, -1, -1, -1, 48, -1, -1, 51, - 52, -1, -1, 55, -1, 57, -1, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, -1, -1, -1, -1, -1, -1, 79, -1, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, -1, -1, -1, -1, 99, -1, -1, - -1, -1, -1, 105, -1, -1, -1, -1, -1, -1, - 112, -1, -1, -1, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, -1, -1, -1, -1, 138, -1, -1, -1, - 142, 143, 144, -1, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, - 162, 163, -1, 165, -1, -1, -1, 169, 170, -1, - -1, -1, -1, 8, 9, -1, 11, 12, 13, -1, - -1, -1, -1, -1, -1, -1, 21, 22, -1, -1, - -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, - 35, 36, 37, -1, -1, 40, 41, 42, 43, -1, - -1, -1, -1, 48, -1, -1, 51, 52, -1, -1, - 55, -1, 57, -1, 59, 60, 61, 62, 63, 64, - 65, 66, 67, 68, 69, 70, 71, 72, -1, -1, - -1, -1, -1, -1, 79, -1, 81, 82, 83, 84, - 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, - -1, -1, -1, -1, 99, -1, -1, -1, -1, -1, - 105, -1, -1, -1, -1, -1, -1, 112, -1, -1, - -1, 116, 117, 118, 119, 120, 121, 122, 123, 124, - 125, 126, 127, 128, 129, 130, 131, 132, 133, -1, - -1, -1, -1, 138, -1, -1, -1, 142, 143, 144, - -1, 146, 147, 148, 149, 150, 151, 152, 153, 154, - 155, 156, 157, 158, 159, -1, 161, 162, 163, -1, - 165, -1, -1, -1, 169, 170, -1, -1, -1, -1, - 8, 9, -1, 11, 12, 13, -1, -1, -1, -1, - -1, -1, -1, 21, 22, -1, -1, -1, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - -1, -1, 40, 41, 42, 43, -1, -1, -1, -1, - 48, -1, -1, 51, 52, -1, -1, 55, -1, 57, - -1, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, -1, -1, -1, -1, -1, - -1, 79, -1, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, -1, -1, -1, - -1, 99, -1, -1, -1, -1, -1, 105, -1, -1, - -1, -1, -1, -1, 112, -1, -1, -1, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, -1, -1, -1, -1, - 138, -1, -1, -1, 142, 143, 144, -1, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, -1, 161, 162, 163, -1, 165, -1, -1, - -1, 169, 170, -1, -1, -1, -1, 7, -1, 9, - -1, 11, 12, 13, -1, -1, 16, -1, -1, 19, - -1, -1, -1, -1, -1, -1, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, -1, -1, - 40, 41, 42, 43, -1, -1, -1, 47, 48, -1, - -1, 51, -1, -1, 54, -1, -1, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, -1, -1, -1, -1, -1, -1, - -1, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, - -1, -1, 102, 103, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, -1, -1, 136, -1, 138, -1, - -1, -1, -1, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, -1, 165, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 7, -1, 9, -1, 11, - 12, 13, -1, -1, 16, -1, -1, 19, -1, -1, - -1, -1, -1, -1, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, -1, -1, 40, 41, - 42, 43, -1, -1, -1, 47, 48, -1, -1, 51, - -1, -1, 54, -1, -1, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, -1, -1, -1, -1, -1, -1, -1, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, -1, -1, -1, 98, -1, -1, -1, - 102, 103, -1, -1, -1, -1, -1, -1, -1, 111, - -1, -1, -1, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, -1, -1, 136, -1, 138, -1, -1, -1, - -1, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, -1, 165, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 7, -1, 9, -1, 11, 12, 13, - -1, -1, 16, -1, -1, 19, -1, -1, -1, -1, - -1, -1, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, -1, -1, 40, 41, 42, 43, - -1, -1, -1, 47, 48, -1, -1, 51, -1, -1, - 54, -1, -1, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, -1, -1, -1, -1, -1, -1, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, -1, -1, -1, 98, -1, -1, -1, 102, 103, - -1, -1, -1, -1, -1, -1, -1, 111, -1, -1, - -1, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - -1, -1, 136, -1, 138, -1, -1, -1, -1, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - -1, 165, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 7, -1, 9, -1, 11, 12, 13, -1, -1, - 16, -1, -1, 19, -1, -1, -1, -1, -1, -1, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, -1, -1, 40, 41, 42, 43, -1, -1, - -1, 47, 48, -1, -1, 51, -1, -1, 54, -1, - -1, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, -1, -1, - -1, -1, -1, -1, -1, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, -1, - -1, -1, 98, -1, -1, -1, 102, 103, -1, -1, - -1, -1, -1, -1, -1, 111, -1, -1, -1, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, -1, -1, - 136, -1, 138, -1, -1, -1, -1, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, -1, 165, - -1, -1, -1, -1, -1, -1, -1, -1, -1, 7, - -1, 9, -1, 11, 12, 13, -1, -1, 16, -1, - -1, 19, -1, -1, -1, -1, -1, -1, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - -1, -1, 40, 41, 42, 43, -1, -1, -1, 47, - 48, -1, -1, 51, -1, -1, 54, -1, -1, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, -1, -1, -1, -1, - -1, -1, -1, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, -1, -1, -1, - 98, -1, -1, -1, 102, 103, -1, -1, 106, -1, - -1, -1, -1, -1, -1, -1, -1, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, -1, 136, -1, - 138, -1, -1, -1, -1, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, -1, 165, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 7, 8, 9, - -1, 11, 12, 13, -1, -1, 16, -1, -1, 19, - -1, 21, 22, -1, -1, -1, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, -1, -1, - 40, 41, 42, 43, -1, -1, -1, 47, 48, -1, - -1, 51, 52, -1, 54, 55, -1, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, -1, -1, -1, -1, -1, 79, - -1, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, -1, -1, -1, 98, 99, - -1, -1, 102, 103, -1, 105, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, -1, -1, 136, -1, 138, -1, - -1, -1, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, -1, 165, -1, -1, -1, 169, - 170, -1, -1, -1, -1, 7, 8, 9, -1, 11, - 12, 13, -1, -1, 16, -1, -1, 19, -1, 21, - 22, -1, -1, -1, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, -1, -1, 40, 41, - 42, 43, -1, -1, -1, 47, 48, -1, -1, 51, - 52, -1, 54, 55, -1, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, -1, -1, -1, -1, -1, 79, -1, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, -1, -1, -1, 98, 99, -1, -1, - 102, 103, -1, 105, 106, -1, -1, -1, -1, -1, - -1, -1, -1, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, -1, 136, -1, 138, -1, -1, -1, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, -1, 165, -1, -1, -1, 169, 170, -1, - -1, -1, -1, 7, 8, 9, 10, 11, 12, 13, - -1, 15, 16, -1, -1, 19, 20, 21, 22, 23, - 24, -1, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, -1, 40, 41, 42, 43, - -1, -1, -1, 47, 48, 49, -1, 51, 52, 53, - 54, 55, -1, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, -1, 76, -1, -1, 79, -1, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, -1, -1, -1, 98, 99, -1, -1, 102, 103, - -1, 105, 106, -1, 108, -1, -1, -1, -1, -1, - -1, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, -1, 136, -1, 138, -1, -1, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - -1, 165, 166, -1, -1, 169, 170, -1, -1, -1, - -1, 7, 8, 9, 10, 11, 12, 13, -1, 15, - 16, -1, -1, 19, 20, 21, 22, 23, 24, -1, - 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, - 36, 37, 38, -1, 40, 41, 42, 43, -1, -1, - -1, 47, 48, 49, -1, 51, 52, 53, 54, 55, - -1, 57, 58, 59, 60, 61, 62, 63, 64, 65, - 66, 67, 68, 69, 70, 71, 72, 73, -1, -1, - 76, -1, -1, 79, -1, 81, 82, 83, 84, 85, - 86, 87, 88, 89, 90, 91, 92, 93, 94, -1, - -1, -1, 98, 99, -1, -1, 102, 103, -1, 105, - 106, -1, 108, -1, -1, -1, -1, -1, -1, 115, - 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, - 126, 127, 128, 129, 130, 131, 132, 133, 134, -1, - 136, -1, 138, -1, -1, 141, 142, 143, 144, 145, - 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, - 156, 157, 158, 159, 160, 161, 162, 163, -1, 165, - 166, -1, -1, 169, 170, -1, -1, -1, -1, 7, - 8, 9, 10, 11, 12, 13, -1, 15, 16, -1, - -1, 19, 20, 21, 22, 23, 24, -1, 26, 27, - 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, - 38, -1, 40, 41, 42, 43, -1, -1, -1, 47, - 48, 49, -1, 51, 52, 53, 54, 55, -1, 57, - 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, - 68, 69, 70, 71, 72, 73, -1, -1, 76, -1, - -1, 79, -1, 81, 82, 83, 84, 85, 86, 87, - 88, 89, 90, 91, 92, 93, 94, -1, -1, -1, - 98, 99, -1, -1, 102, 103, -1, 105, 106, -1, - 108, -1, -1, 111, -1, -1, -1, 115, 116, 117, - 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, - 128, 129, 130, 131, 132, 133, 134, -1, 136, -1, - 138, -1, -1, 141, 142, 143, 144, 145, 146, 147, - 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, - 158, 159, 160, 161, 162, 163, -1, 165, 166, -1, - -1, 169, 170, -1, -1, -1, -1, 7, 8, 9, - 10, 11, 12, 13, -1, 15, 16, -1, -1, 19, - 20, 21, 22, 23, 24, -1, 26, 27, 28, 29, - 30, 31, 32, 33, 34, 35, 36, 37, 38, -1, - 40, 41, 42, 43, -1, -1, -1, 47, 48, 49, - -1, 51, 52, 53, 54, 55, -1, 57, 58, 59, - 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, - 70, 71, 72, 73, -1, -1, 76, -1, -1, 79, - -1, 81, 82, 83, 84, 85, 86, 87, 88, 89, - 90, 91, 92, 93, 94, -1, -1, -1, 98, 99, - -1, -1, 102, 103, -1, 105, 106, -1, 108, -1, - -1, 111, -1, -1, -1, 115, 116, 117, 118, 119, - 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, - 130, 131, 132, 133, 134, -1, 136, -1, 138, -1, - -1, 141, 142, 143, 144, 145, 146, 147, 148, 149, - 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, - 160, 161, 162, 163, -1, 165, 166, -1, -1, 169, - 170, -1, -1, -1, -1, 7, 8, 9, 10, 11, - 12, 13, -1, 15, 16, -1, -1, 19, 20, 21, - 22, 23, 24, -1, 26, 27, 28, 29, 30, 31, - 32, 33, 34, 35, 36, 37, 38, -1, 40, 41, - 42, 43, -1, -1, -1, 47, 48, 49, -1, 51, - 52, 53, 54, 55, -1, 57, 58, 59, 60, 61, - 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, - 72, 73, -1, -1, 76, -1, -1, 79, -1, 81, - 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, - 92, 93, 94, -1, -1, -1, 98, 99, -1, -1, - 102, 103, -1, 105, 106, -1, 108, -1, -1, 111, - -1, -1, -1, 115, 116, 117, 118, 119, 120, 121, - 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, - 132, 133, 134, -1, 136, -1, 138, -1, -1, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, - 162, 163, -1, 165, 166, -1, -1, 169, 170, -1, - -1, -1, -1, 7, 8, 9, 10, 11, 12, 13, - -1, 15, 16, -1, -1, 19, 20, 21, 22, 23, - 24, -1, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, -1, 40, 41, 42, 43, - -1, -1, -1, 47, 48, 49, -1, 51, 52, 53, - 54, 55, -1, 57, 58, 59, 60, 61, 62, 63, - 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, - -1, -1, 76, -1, -1, 79, -1, 81, 82, 83, - 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, - 94, -1, -1, -1, 98, 99, -1, -1, 102, 103, - -1, 105, 106, -1, 108, -1, -1, 111, -1, -1, - -1, 115, 116, 117, 118, 119, 120, 121, 122, 123, - 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, - 134, -1, 136, -1, 138, -1, -1, 141, 142, 143, - 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, - 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, - -1, 165, 166, -1, -1, 169, 170, -1, -1, -1, - -1, + 79, 77, 45, 6, 18, 52, 76, 114, 111, 168, + 79, 45, 52, 134, 76, 17, 134, 52, 45, 77, + 134, 112, 79, 79, 45, 79, 79, 112, 114, 134, + 79, 168, 164, 79, 112, 112, 52, 4, 166, 114, + 6, 134, 79, 44, 134, 18, 114, 52, 18, 45, + 134, 164, 52, 134, 79, 52, 45, 52, 0, 114, + 134, 99, 52, 18, 112, 4, 18, 112, 112, 79, + 52, 77, 18, 18, 78, 18, 17, 18, 77, 54, + 18, 52, 18, 45, 52, 78, 78, 1, 2, 21, + 17, 18, 21, 78, 18, 46, 76, 18, 76, 18, + 54, 18, 18, 21, 78, 18, 46, 101, 76, 113, + 54, 45, -1, 107, -1, 77, 104, 54, -1, 56, + 113, 113, -1, 51, 19, -1, -1, 102, 113, -1, + 50, -1, -1, -1, -1, 134, -1, -1, -1, 113, + 50, 104, -1, 77, 104, 79, 97, 135, 102, 137, + 22, -1, -1, 81, 74, -1, 134, 97, 102, 54, + 80, 56, 50, 134, 74, 102, 94, 39, -1, 114, + 80, 114, 135, 105, 137, 135, 105, 137, 114, -1, + -1, -1, 19, 55, -1, -1, 74, 105, 134, 109, + -1, -1, 80, -1, 7, 14, 134, 114, 114, 109, + 3, 114, 5, 16, -1, 77, 19, 102, -1, -1, + 134, -1, -1, 134, 7, 134, 160, 54, -1, 56, + -1, 109, 25, 16, 7, -1, 19, -1, -1, -1, + -1, -1, -1, 16, 47, -1, 19, -1, -1, -1, + -1, 54, 45, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 47, -1, -1, -1, -1, -1, + -1, 54, -1, -1, 47, 102, -1, -1, -1, 52, + -1, 54, 75, -1, -1, -1, -1, 114, -1, -1, + -1, -1, -1, -1, -1, 98, -1, -1, -1, 102, + 103, -1, 95, 96, -1, -1, -1, 100, -1, -1, + -1, -1, 115, -1, -1, 98, -1, 110, -1, 102, + 103, -1, -1, -1, -1, 98, -1, -1, -1, 102, + 103, -1, 115, 136, -1, -1, -1, -1, -1, -1, + -1, -1, 115, -1, -1, -1, -1, 140, -1, -1, + -1, -1, -1, 136, -1, -1, -1, 160, -1, -1, + -1, -1, 145, 136, -1, -1, 7, -1, -1, -1, + -1, -1, 145, -1, 167, 16, -1, 160, 19, -1, + -1, -1, -1, -1, -1, -1, -1, 160, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 54, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 102, 103, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 115, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 145, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 160, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 9, -1, 11, 12, 13, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, -1, -1, 40, 41, 42, 43, -1, + -1, -1, -1, 48, -1, -1, -1, -1, -1, -1, + -1, -1, 57, -1, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, -1, + -1, -1, -1, 138, -1, -1, -1, -1, 143, 144, + -1, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 155, 156, 157, 158, 159, -1, 161, 162, 163, -1, + 165, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 9, -1, 11, 12, 13, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, -1, + -1, 40, 41, 42, 43, -1, -1, -1, -1, 48, + -1, -1, 51, -1, -1, -1, -1, -1, 57, -1, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, 72, -1, -1, -1, -1, -1, -1, + -1, -1, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, -1, -1, -1, -1, 138, + -1, -1, -1, -1, 143, 144, -1, 146, 147, 148, + 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, + 159, -1, 161, 162, 163, -1, 165, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 9, -1, 11, 12, + 13, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, -1, -1, 40, 41, 42, + 43, -1, -1, -1, -1, 48, -1, -1, 51, 52, + -1, -1, -1, -1, 57, -1, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + -1, -1, -1, -1, -1, -1, -1, -1, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, -1, -1, -1, -1, 138, -1, -1, -1, -1, + 143, 144, -1, 146, 147, 148, 149, 150, 151, 152, + 153, 154, 155, 156, 157, 158, 159, -1, 161, 162, + 163, -1, 165, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 9, -1, 11, 12, 13, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, -1, -1, 40, 41, 42, 43, -1, -1, -1, + -1, 48, -1, -1, 51, 52, -1, -1, -1, -1, + 57, -1, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, -1, -1, -1, -1, + -1, -1, -1, -1, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, -1, -1, + -1, 138, -1, -1, -1, -1, 143, 144, -1, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, -1, 161, 162, 163, -1, 165, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 8, 9, + -1, 11, 12, 13, -1, -1, -1, -1, -1, -1, + -1, 21, 22, -1, -1, -1, 26, 27, 28, 29, + 30, 31, 32, 33, 34, 35, 36, 37, -1, -1, + 40, 41, 42, 43, -1, -1, -1, -1, 48, -1, + -1, 51, 52, -1, -1, 55, -1, 57, -1, 59, + 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, + 70, 71, 72, -1, -1, -1, -1, -1, -1, 79, + -1, 81, 82, 83, 84, 85, 86, 87, 88, 89, + 90, 91, 92, 93, 94, -1, -1, -1, -1, 99, + -1, -1, -1, -1, -1, 105, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 116, 117, 118, 119, + 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, + 130, 131, 132, 133, -1, -1, -1, -1, 138, -1, + -1, -1, 142, 143, 144, -1, 146, 147, 148, 149, + 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, + -1, 161, 162, 163, -1, 165, -1, -1, -1, 169, + 170, -1, -1, -1, -1, 8, 9, -1, 11, 12, + 13, -1, -1, -1, -1, -1, -1, -1, 21, 22, + -1, -1, -1, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, -1, -1, 40, 41, 42, + 43, -1, -1, -1, -1, 48, -1, -1, 51, 52, + -1, -1, 55, -1, 57, -1, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + -1, -1, -1, -1, -1, -1, 79, -1, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, -1, -1, -1, -1, 99, -1, -1, -1, + -1, -1, 105, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, -1, -1, -1, -1, 138, -1, -1, -1, 142, + 143, 144, -1, 146, 147, 148, 149, 150, 151, 152, + 153, 154, 155, 156, 157, 158, 159, -1, 161, 162, + 163, -1, 165, -1, -1, -1, 169, 170, -1, -1, + -1, -1, 8, 9, -1, 11, 12, 13, -1, -1, + -1, -1, -1, -1, -1, 21, 22, -1, -1, -1, + 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, + 36, 37, -1, -1, 40, 41, 42, 43, -1, -1, + -1, -1, 48, -1, -1, 51, 52, -1, -1, 55, + -1, 57, -1, 59, 60, 61, 62, 63, 64, 65, + 66, 67, 68, 69, 70, 71, 72, -1, -1, -1, + -1, -1, -1, 79, -1, 81, 82, 83, 84, 85, + 86, 87, 88, 89, 90, 91, 92, 93, 94, -1, + -1, -1, -1, 99, -1, -1, -1, -1, -1, 105, + -1, -1, -1, -1, -1, -1, 112, -1, -1, -1, + 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, + 126, 127, 128, 129, 130, 131, 132, 133, -1, -1, + -1, -1, 138, -1, -1, -1, 142, 143, 144, -1, + 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, + 156, 157, 158, 159, -1, 161, 162, 163, -1, 165, + -1, -1, -1, 169, 170, -1, -1, -1, -1, 8, + 9, -1, 11, 12, 13, -1, -1, -1, -1, -1, + -1, -1, 21, 22, -1, -1, -1, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, -1, + -1, 40, 41, 42, 43, -1, -1, -1, -1, 48, + -1, -1, 51, 52, -1, -1, 55, -1, 57, -1, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, 72, -1, -1, -1, -1, -1, -1, + 79, -1, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, -1, -1, -1, -1, + 99, -1, -1, -1, -1, -1, 105, -1, -1, -1, + -1, -1, -1, 112, -1, -1, -1, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, -1, -1, -1, -1, 138, + -1, -1, -1, 142, 143, 144, -1, 146, 147, 148, + 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, + 159, -1, 161, 162, 163, -1, 165, -1, -1, -1, + 169, 170, -1, -1, -1, -1, 8, 9, -1, 11, + 12, 13, -1, -1, -1, -1, -1, -1, -1, 21, + 22, -1, -1, -1, 26, 27, 28, 29, 30, 31, + 32, 33, 34, 35, 36, 37, -1, -1, 40, 41, + 42, 43, -1, -1, -1, -1, 48, -1, -1, 51, + 52, -1, -1, 55, -1, 57, -1, 59, 60, 61, + 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, + 72, -1, -1, -1, -1, -1, -1, 79, -1, 81, + 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, + 92, 93, 94, -1, -1, -1, -1, 99, -1, -1, + -1, -1, -1, 105, -1, -1, -1, -1, -1, -1, + 112, -1, -1, -1, 116, 117, 118, 119, 120, 121, + 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, + 132, 133, -1, -1, -1, -1, 138, -1, -1, -1, + 142, 143, 144, -1, 146, 147, 148, 149, 150, 151, + 152, 153, 154, 155, 156, 157, 158, 159, -1, 161, + 162, 163, -1, 165, -1, -1, -1, 169, 170, -1, + -1, -1, -1, 8, 9, -1, 11, 12, 13, -1, + -1, -1, -1, -1, -1, -1, 21, 22, -1, -1, + -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, -1, -1, 40, 41, 42, 43, -1, + -1, -1, -1, 48, -1, -1, 51, 52, -1, -1, + 55, -1, 57, -1, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, -1, -1, + -1, -1, -1, -1, 79, -1, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + -1, -1, -1, -1, 99, -1, -1, -1, -1, -1, + 105, -1, -1, -1, -1, -1, -1, 112, -1, -1, + -1, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, -1, + -1, -1, -1, 138, -1, -1, -1, 142, 143, 144, + -1, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 155, 156, 157, 158, 159, -1, 161, 162, 163, -1, + 165, -1, -1, -1, 169, 170, -1, -1, -1, -1, + 8, 9, -1, 11, 12, 13, -1, -1, -1, -1, + -1, -1, -1, 21, 22, -1, -1, -1, 26, 27, + 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + -1, -1, 40, 41, 42, 43, -1, -1, -1, -1, + 48, -1, -1, 51, 52, -1, -1, 55, -1, 57, + -1, 59, 60, 61, 62, 63, 64, 65, 66, 67, + 68, 69, 70, 71, 72, -1, -1, -1, -1, -1, + -1, 79, -1, 81, 82, 83, 84, 85, 86, 87, + 88, 89, 90, 91, 92, 93, 94, -1, -1, -1, + -1, 99, -1, -1, -1, -1, -1, 105, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 116, 117, + 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, + 128, 129, 130, 131, 132, 133, 134, -1, -1, -1, + 138, -1, -1, -1, 142, 143, 144, -1, 146, 147, + 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, + 158, 159, -1, 161, 162, 163, -1, 165, -1, -1, + -1, 169, 170, -1, -1, -1, -1, 8, 9, -1, + 11, 12, 13, -1, -1, -1, -1, -1, -1, -1, + 21, 22, -1, -1, -1, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, -1, -1, 40, + 41, 42, 43, -1, -1, -1, -1, 48, -1, -1, + 51, 52, -1, -1, 55, -1, 57, -1, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, -1, -1, -1, -1, -1, -1, 79, -1, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, -1, -1, -1, -1, 99, -1, + -1, -1, -1, -1, 105, -1, -1, -1, -1, -1, + -1, 112, -1, -1, -1, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, -1, -1, -1, -1, 138, -1, -1, + -1, 142, 143, 144, -1, 146, 147, 148, 149, 150, + 151, 152, 153, 154, 155, 156, 157, 158, 159, -1, + 161, 162, 163, -1, 165, -1, -1, -1, 169, 170, + -1, -1, -1, -1, 7, -1, 9, -1, 11, 12, + 13, -1, -1, 16, -1, -1, 19, -1, -1, -1, + -1, -1, -1, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, -1, -1, 40, 41, 42, + 43, -1, -1, -1, 47, 48, -1, -1, 51, -1, + -1, 54, -1, -1, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, -1, -1, -1, -1, -1, -1, -1, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, -1, -1, -1, 98, -1, -1, -1, 102, + 103, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, -1, -1, 136, -1, 138, -1, -1, -1, -1, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, -1, 165, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 7, -1, 9, -1, 11, 12, 13, -1, + -1, 16, -1, -1, 19, -1, -1, -1, -1, -1, + -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, -1, -1, 40, 41, 42, 43, -1, + -1, -1, 47, 48, -1, -1, 51, -1, -1, 54, + -1, -1, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, -1, + -1, -1, -1, -1, -1, -1, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + -1, -1, -1, 98, -1, -1, -1, 102, 103, -1, + -1, -1, -1, -1, -1, -1, 111, -1, -1, -1, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, -1, + -1, 136, -1, 138, -1, -1, -1, -1, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, 163, -1, + 165, -1, -1, -1, -1, -1, -1, -1, -1, -1, + 7, -1, 9, -1, 11, 12, 13, -1, -1, 16, + -1, -1, 19, -1, -1, -1, -1, -1, -1, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, -1, -1, 40, 41, 42, 43, -1, -1, -1, + 47, 48, -1, -1, 51, -1, -1, 54, -1, -1, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, -1, -1, + -1, -1, -1, -1, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, -1, -1, + -1, 98, -1, -1, -1, 102, 103, -1, -1, -1, + -1, -1, -1, -1, 111, -1, -1, -1, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, -1, -1, 136, + -1, 138, -1, -1, -1, -1, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, 163, -1, 165, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 7, -1, + 9, -1, 11, 12, 13, -1, -1, 16, -1, -1, + 19, -1, -1, -1, -1, -1, -1, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, -1, + -1, 40, 41, 42, 43, -1, -1, -1, 47, 48, + -1, -1, 51, -1, -1, 54, -1, -1, 57, 58, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, 72, 73, -1, -1, -1, -1, -1, + -1, -1, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, -1, -1, -1, 98, + -1, -1, -1, 102, 103, -1, -1, -1, -1, -1, + -1, -1, 111, -1, -1, -1, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, -1, -1, 136, -1, 138, + -1, -1, -1, -1, 143, 144, 145, 146, 147, 148, + 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, 163, -1, 165, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 7, -1, 9, -1, + 11, 12, 13, -1, -1, 16, -1, -1, 19, -1, + -1, -1, -1, -1, -1, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, -1, -1, 40, + 41, 42, 43, -1, -1, -1, 47, 48, -1, -1, + 51, -1, -1, 54, -1, -1, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, -1, -1, -1, -1, -1, -1, -1, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, + -1, 102, 103, -1, -1, 106, -1, -1, -1, -1, + -1, -1, -1, -1, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 134, -1, 136, -1, 138, -1, -1, + -1, -1, 143, 144, 145, 146, 147, 148, 149, 150, + 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, 163, -1, 165, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 7, 8, 9, -1, 11, 12, + 13, -1, -1, 16, -1, -1, 19, -1, 21, 22, + -1, -1, -1, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, -1, -1, 40, 41, 42, + 43, -1, -1, -1, 47, 48, -1, -1, 51, 52, + -1, 54, 55, -1, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, -1, -1, -1, -1, -1, 79, -1, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, -1, -1, -1, 98, 99, -1, -1, 102, + 103, -1, 105, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, -1, -1, 136, -1, 138, -1, -1, -1, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, -1, 165, -1, -1, -1, 169, 170, -1, -1, + -1, -1, 7, 8, 9, -1, 11, 12, 13, -1, + -1, 16, -1, -1, 19, -1, 21, 22, -1, -1, + -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, -1, -1, 40, 41, 42, 43, -1, + -1, -1, 47, 48, -1, -1, 51, 52, -1, 54, + 55, -1, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, -1, + -1, -1, -1, -1, 79, -1, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + -1, -1, -1, 98, 99, -1, -1, 102, 103, -1, + 105, 106, -1, -1, -1, -1, -1, -1, -1, -1, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + -1, 136, -1, 138, -1, -1, -1, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, 163, -1, + 165, -1, -1, -1, 169, 170, -1, -1, -1, -1, + 7, 8, 9, 10, 11, 12, 13, -1, 15, 16, + -1, -1, 19, 20, 21, 22, 23, 24, -1, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, -1, 40, 41, 42, 43, -1, -1, -1, + 47, 48, 49, -1, 51, 52, 53, 54, 55, -1, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, -1, 76, + -1, -1, 79, -1, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, -1, -1, + -1, 98, 99, -1, -1, 102, 103, -1, 105, 106, + -1, 108, -1, -1, -1, -1, -1, -1, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, -1, 136, + -1, 138, -1, -1, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, 163, -1, 165, 166, + -1, -1, 169, 170, -1, -1, -1, -1, 7, 8, + 9, 10, 11, 12, 13, -1, 15, 16, -1, -1, + 19, 20, 21, 22, 23, 24, -1, 26, 27, 28, + 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, + -1, 40, 41, 42, 43, -1, -1, -1, 47, 48, + 49, -1, 51, 52, 53, 54, 55, -1, 57, 58, + 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, + 69, 70, 71, 72, 73, -1, -1, 76, -1, -1, + 79, -1, 81, 82, 83, 84, 85, 86, 87, 88, + 89, 90, 91, 92, 93, 94, -1, -1, -1, 98, + 99, -1, -1, 102, 103, -1, 105, 106, -1, 108, + -1, -1, -1, -1, -1, -1, 115, 116, 117, 118, + 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, + 129, 130, 131, 132, 133, 134, -1, 136, -1, 138, + -1, -1, 141, 142, 143, 144, 145, 146, 147, 148, + 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, + 159, 160, 161, 162, 163, -1, 165, 166, -1, -1, + 169, 170, -1, -1, -1, -1, 7, 8, 9, 10, + 11, 12, 13, -1, 15, 16, -1, -1, 19, 20, + 21, 22, 23, 24, -1, 26, 27, 28, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, -1, 40, + 41, 42, 43, -1, -1, -1, 47, 48, 49, -1, + 51, 52, 53, 54, 55, -1, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, + 71, 72, 73, -1, -1, 76, -1, -1, 79, -1, + 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, + 91, 92, 93, 94, -1, -1, -1, 98, 99, -1, + -1, 102, 103, -1, 105, 106, -1, 108, -1, -1, + 111, -1, -1, -1, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, + 131, 132, 133, 134, -1, 136, -1, 138, -1, -1, + 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, + 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, + 161, 162, 163, -1, 165, 166, -1, -1, 169, 170, + -1, -1, -1, -1, 7, 8, 9, 10, 11, 12, + 13, -1, 15, 16, -1, -1, 19, 20, 21, 22, + 23, 24, -1, 26, 27, 28, 29, 30, 31, 32, + 33, 34, 35, 36, 37, 38, -1, 40, 41, 42, + 43, -1, -1, -1, 47, 48, 49, -1, 51, 52, + 53, 54, 55, -1, 57, 58, 59, 60, 61, 62, + 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, + 73, -1, -1, 76, -1, -1, 79, -1, 81, 82, + 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, + 93, 94, -1, -1, -1, 98, 99, -1, -1, 102, + 103, -1, 105, 106, -1, 108, -1, -1, 111, -1, + -1, -1, 115, 116, 117, 118, 119, 120, 121, 122, + 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, + 133, 134, -1, 136, -1, 138, -1, -1, 141, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, + 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, + 163, -1, 165, 166, -1, -1, 169, 170, -1, -1, + -1, -1, 7, 8, 9, 10, 11, 12, 13, -1, + 15, 16, -1, -1, 19, 20, 21, 22, 23, 24, + -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, + 35, 36, 37, 38, -1, 40, 41, 42, 43, -1, + -1, -1, 47, 48, 49, -1, 51, 52, 53, 54, + 55, -1, 57, 58, 59, 60, 61, 62, 63, 64, + 65, 66, 67, 68, 69, 70, 71, 72, 73, -1, + -1, 76, -1, -1, 79, -1, 81, 82, 83, 84, + 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, + -1, -1, -1, 98, 99, -1, -1, 102, 103, -1, + 105, 106, -1, 108, -1, -1, 111, -1, -1, -1, + 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, + 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, + -1, 136, -1, 138, -1, -1, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, + 155, 156, 157, 158, 159, 160, 161, 162, 163, -1, + 165, 166, -1, -1, 169, 170, -1, -1, -1, -1, + 7, 8, 9, 10, 11, 12, 13, -1, 15, 16, + -1, -1, 19, 20, 21, 22, 23, 24, -1, 26, + 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, -1, 40, 41, 42, 43, -1, -1, -1, + 47, 48, 49, -1, 51, 52, 53, 54, 55, -1, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, 70, 71, 72, 73, -1, -1, 76, + -1, -1, 79, -1, 81, 82, 83, 84, 85, 86, + 87, 88, 89, 90, 91, 92, 93, 94, -1, -1, + -1, 98, 99, -1, -1, 102, 103, -1, 105, 106, + -1, 108, -1, -1, 111, -1, -1, -1, 115, 116, + 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, + 127, 128, 129, 130, 131, 132, 133, 134, -1, 136, + -1, 138, -1, -1, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, + 157, 158, 159, 160, 161, 162, 163, -1, 165, 166, + -1, -1, 169, 170, -1, -1, -1, -1, - 14, 3, 12, 14, 55, 3, 15, 15, 3, 54, - 59, 15, 60, 3, 15, 15, 12, 3, 45, 8, - 55, 15, 3, 3, 41, 12, 14, 34, 12, 14, - 3, 14, 35, 12, 12, 73, 3, 55, 35, 15, - 12, 15, 12, 12, 12, 21, 20, -1, -1, 15, - 15, 15, 12, 17, 15, 20, 17, 14, 12, 15, - 15, 14, 28, 18, 15, 15, 14, 18, 14, 25, - 14, 3, -1, 15, 14, 14, 26, 49, 14, 49, - 49, 49, 24, -1, -1, -1, 15, 15, 51, 49, - 19, 19, 55, 15, 15, 49, 36, 19, 15, 15, - 14, 22, 15, 19, 14, 62, 23, 14, -1, 62, - 14, -1, 15, 14, 62, 28, 62, 30, 14, 14, - 64, 15, 36, 62, 15, 28, 62, 30, 14, 14, - 31, 32, 36, 15, 28, -1, 30, 28, 3, 30, - 36, 37, -1, -1, 58, 14, 28, -1, 30, 14, - 36, 61, 47, 14, 58, 65, -1, 64, 43, 3, - -1, 46, -1, -1, -1, 72, -1, 36, 37, -1, - 14, 36, 58, -1, -1, -1, 71, 42, -1, -1, - -1, -1, 47, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 36, -1, -1, -1, -1, -1, 42, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 71, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 14, -1, -1, -1, -1, -1, - -1, 75, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 31, 32, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 82, -1, -1}; + 12, 14, 3, 3, 3, 54, 15, 14, 55, 15, + 15, 15, 15, 59, 3, 60, 55, 12, 12, 3, + 3, 14, 41, 34, 15, 3, 8, 45, 14, 3, + 3, 12, 12, 35, 55, 73, 12, 14, 35, 14, + 12, -1, -1, 12, 15, 15, 17, 17, 12, 12, + 15, 12, -1, 15, -1, 15, 15, 15, 15, 21, + 20, 20, 19, 28, 15, 23, 15, 15, 14, 12, + 14, -1, 51, 3, 25, 24, 55, 49, 26, 14, + 49, 15, 15, 14, 18, 49, 49, 62, 49, 22, + 14, 14, 36, 15, 15, 15, 15, 19, 18, 15, + 19, 14, 14, 19, 14, 14, 49, 28, 14, 30, + 14, 14, -1, 15, 14, -1, -1, -1, 64, 14, + -1, 31, 32, 14, 14, -1, 28, 62, 30, 15, + -1, 62, 36, 36, 37, 47, 15, 43, 62, 62, + 46, 36, 28, 14, 30, 36, 36, 37, -1, 28, + -1, 30, 61, 15, 58, 14, 65, -1, 71, 71, + 31, 32, 3, 58, 64, -1, 28, 58, 30, -1, + -1, -1, 72, 14, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, 36, -1, -1, -1, -1, + -1, 42, -1, 62, -1, -1, 47, -1, -1, -1, + -1, 82, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 3, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 14, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 36, + -1, -1, -1, -1, -1, 42, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 75, -1, + -1, -1, -1, -1, -1, -1, -1, -1 +}; QT_END_NAMESPACE diff --git a/src/libs/glsl/glslparsertable_p.h b/src/libs/glsl/glslparsertable_p.h index b046b5df7a..8abd115735 100644 --- a/src/libs/glsl/glslparsertable_p.h +++ b/src/libs/glsl/glslparsertable_p.h @@ -3,8 +3,9 @@ ** Copyright (C) 2016 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** -** This file is part of Qt Creator. +** This file is part of the Qt Toolkit. ** +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the @@ -21,6 +22,8 @@ ** information to ensure the GNU General Public License requirements will ** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** +** $QT_END_LICENSE$ +** ****************************************************************************/ // @@ -35,231 +38,234 @@ // // This file was generated by qlalr - DO NOT EDIT! -#pragma once +#ifndef GLSLPARSERTABLE_P_H +#define GLSLPARSERTABLE_P_H -#include <qglobal.h> +#include <QtCore/qglobal.h> QT_BEGIN_NAMESPACE class GLSLParserTable { public: - enum VariousConstants { - EOF_SYMBOL = 0, - T_ADD_ASSIGN = 3, - T_AMPERSAND = 4, - T_AND_ASSIGN = 5, - T_AND_OP = 6, - T_ATTRIBUTE = 7, - T_BANG = 8, - T_BOOL = 9, - T_BREAK = 10, - T_BVEC2 = 11, - T_BVEC3 = 12, - T_BVEC4 = 13, - T_CARET = 14, - T_CASE = 15, - T_CENTROID = 16, - T_COLON = 17, - T_COMMA = 18, - T_COMMENT = 172, - T_CONST = 19, - T_CONTINUE = 20, - T_DASH = 21, - T_DEC_OP = 22, - T_DEFAULT = 23, - T_DISCARD = 24, - T_DIV_ASSIGN = 25, - T_DMAT2 = 26, - T_DMAT2X2 = 27, - T_DMAT2X3 = 28, - T_DMAT2X4 = 29, - T_DMAT3 = 30, - T_DMAT3X2 = 31, - T_DMAT3X3 = 32, - T_DMAT3X4 = 33, - T_DMAT4 = 34, - T_DMAT4X2 = 35, - T_DMAT4X3 = 36, - T_DMAT4X4 = 37, - T_DO = 38, - T_DOT = 39, - T_DOUBLE = 40, - T_DVEC2 = 41, - T_DVEC3 = 42, - T_DVEC4 = 43, - T_ELSE = 44, - T_EQUAL = 45, - T_EQ_OP = 46, - T_ERROR = 173, - T_FALSE = 170, - T_FEED_EXPRESSION = 2, - T_FEED_GLSL = 1, - T_FLAT = 47, - T_FLOAT = 48, - T_FOR = 49, - T_GE_OP = 50, - T_HIGHP = 51, - T_IDENTIFIER = 52, - T_IF = 53, - T_IN = 54, - T_INC_OP = 55, - T_INOUT = 56, - T_INT = 57, - T_INVARIANT = 58, - T_ISAMPLER1D = 59, - T_ISAMPLER1DARRAY = 60, - T_ISAMPLER2D = 61, - T_ISAMPLER2DARRAY = 62, - T_ISAMPLER2DMS = 63, - T_ISAMPLER2DMSARRAY = 64, - T_ISAMPLER2DRECT = 65, - T_ISAMPLER3D = 66, - T_ISAMPLERBUFFER = 67, - T_ISAMPLERCUBE = 68, - T_ISAMPLERCUBEARRAY = 69, - T_IVEC2 = 70, - T_IVEC3 = 71, - T_IVEC4 = 72, - T_LAYOUT = 73, - T_LEFT_ANGLE = 74, - T_LEFT_ASSIGN = 75, - T_LEFT_BRACE = 76, - T_LEFT_BRACKET = 77, - T_LEFT_OP = 78, - T_LEFT_PAREN = 79, - T_LE_OP = 80, - T_LOWP = 81, - T_MAT2 = 82, - T_MAT2X2 = 83, - T_MAT2X3 = 84, - T_MAT2X4 = 85, - T_MAT3 = 86, - T_MAT3X2 = 87, - T_MAT3X3 = 88, - T_MAT3X4 = 89, - T_MAT4 = 90, - T_MAT4X2 = 91, - T_MAT4X3 = 92, - T_MAT4X4 = 93, - T_MEDIUMP = 94, - T_MOD_ASSIGN = 95, - T_MUL_ASSIGN = 96, - T_NE_OP = 97, - T_NOPERSPECTIVE = 98, - T_NUMBER = 99, - T_OR_ASSIGN = 100, - T_OR_OP = 101, - T_OUT = 102, - T_PATCH = 103, - T_PERCENT = 104, - T_PLUS = 105, - T_PRECISION = 106, - T_PREPROC = 171, - T_QUESTION = 107, - T_RESERVED = 174, - T_RETURN = 108, - T_RIGHT_ANGLE = 109, - T_RIGHT_ASSIGN = 110, - T_RIGHT_BRACE = 111, - T_RIGHT_BRACKET = 112, - T_RIGHT_OP = 113, - T_RIGHT_PAREN = 114, - T_SAMPLE = 115, - T_SAMPLER1D = 116, - T_SAMPLER1DARRAY = 117, - T_SAMPLER1DARRAYSHADOW = 118, - T_SAMPLER1DSHADOW = 119, - T_SAMPLER2D = 120, - T_SAMPLER2DARRAY = 121, - T_SAMPLER2DARRAYSHADOW = 122, - T_SAMPLER2DMS = 123, - T_SAMPLER2DMSARRAY = 124, - T_SAMPLER2DRECT = 125, - T_SAMPLER2DRECTSHADOW = 126, - T_SAMPLER2DSHADOW = 127, - T_SAMPLER3D = 128, - T_SAMPLERBUFFER = 129, - T_SAMPLERCUBE = 130, - T_SAMPLERCUBEARRAY = 131, - T_SAMPLERCUBEARRAYSHADOW = 132, - T_SAMPLERCUBESHADOW = 133, - T_SEMICOLON = 134, - T_SLASH = 135, - T_SMOOTH = 136, - T_STAR = 137, - T_STRUCT = 138, - T_SUBROUTINE = 139, - T_SUB_ASSIGN = 140, - T_SWITCH = 141, - T_TILDE = 142, - T_TRUE = 169, - T_TYPE_NAME = 143, - T_UINT = 144, - T_UNIFORM = 145, - T_USAMPLER1D = 146, - T_USAMPLER1DARRAY = 147, - T_USAMPLER2D = 148, - T_USAMPLER2DARRAY = 149, - T_USAMPLER2DMS = 150, - T_USAMPLER2DMSARRAY = 151, - T_USAMPLER2DRECT = 152, - T_USAMPLER3D = 153, - T_USAMPLERBUFFER = 154, - T_USAMPLERCUBE = 155, - T_USAMPLERCUBEARRAY = 156, - T_UVEC2 = 157, - T_UVEC3 = 158, - T_UVEC4 = 159, - T_VARYING = 160, - T_VEC2 = 161, - T_VEC3 = 162, - T_VEC4 = 163, - T_VERTICAL_BAR = 164, - T_VOID = 165, - T_WHILE = 166, - T_XOR_ASSIGN = 167, - T_XOR_OP = 168, + enum VariousConstants { + EOF_SYMBOL = 0, + T_ADD_ASSIGN = 3, + T_AMPERSAND = 4, + T_AND_ASSIGN = 5, + T_AND_OP = 6, + T_ATTRIBUTE = 7, + T_BANG = 8, + T_BOOL = 9, + T_BREAK = 10, + T_BVEC2 = 11, + T_BVEC3 = 12, + T_BVEC4 = 13, + T_CARET = 14, + T_CASE = 15, + T_CENTROID = 16, + T_COLON = 17, + T_COMMA = 18, + T_COMMENT = 172, + T_CONST = 19, + T_CONTINUE = 20, + T_DASH = 21, + T_DEC_OP = 22, + T_DEFAULT = 23, + T_DISCARD = 24, + T_DIV_ASSIGN = 25, + T_DMAT2 = 26, + T_DMAT2X2 = 27, + T_DMAT2X3 = 28, + T_DMAT2X4 = 29, + T_DMAT3 = 30, + T_DMAT3X2 = 31, + T_DMAT3X3 = 32, + T_DMAT3X4 = 33, + T_DMAT4 = 34, + T_DMAT4X2 = 35, + T_DMAT4X3 = 36, + T_DMAT4X4 = 37, + T_DO = 38, + T_DOT = 39, + T_DOUBLE = 40, + T_DVEC2 = 41, + T_DVEC3 = 42, + T_DVEC4 = 43, + T_ELSE = 44, + T_EQUAL = 45, + T_EQ_OP = 46, + T_ERROR = 173, + T_FALSE = 170, + T_FEED_EXPRESSION = 2, + T_FEED_GLSL = 1, + T_FLAT = 47, + T_FLOAT = 48, + T_FOR = 49, + T_GE_OP = 50, + T_HIGHP = 51, + T_IDENTIFIER = 52, + T_IF = 53, + T_IN = 54, + T_INC_OP = 55, + T_INOUT = 56, + T_INT = 57, + T_INVARIANT = 58, + T_ISAMPLER1D = 59, + T_ISAMPLER1DARRAY = 60, + T_ISAMPLER2D = 61, + T_ISAMPLER2DARRAY = 62, + T_ISAMPLER2DMS = 63, + T_ISAMPLER2DMSARRAY = 64, + T_ISAMPLER2DRECT = 65, + T_ISAMPLER3D = 66, + T_ISAMPLERBUFFER = 67, + T_ISAMPLERCUBE = 68, + T_ISAMPLERCUBEARRAY = 69, + T_IVEC2 = 70, + T_IVEC3 = 71, + T_IVEC4 = 72, + T_LAYOUT = 73, + T_LEFT_ANGLE = 74, + T_LEFT_ASSIGN = 75, + T_LEFT_BRACE = 76, + T_LEFT_BRACKET = 77, + T_LEFT_OP = 78, + T_LEFT_PAREN = 79, + T_LE_OP = 80, + T_LOWP = 81, + T_MAT2 = 82, + T_MAT2X2 = 83, + T_MAT2X3 = 84, + T_MAT2X4 = 85, + T_MAT3 = 86, + T_MAT3X2 = 87, + T_MAT3X3 = 88, + T_MAT3X4 = 89, + T_MAT4 = 90, + T_MAT4X2 = 91, + T_MAT4X3 = 92, + T_MAT4X4 = 93, + T_MEDIUMP = 94, + T_MOD_ASSIGN = 95, + T_MUL_ASSIGN = 96, + T_NE_OP = 97, + T_NOPERSPECTIVE = 98, + T_NUMBER = 99, + T_OR_ASSIGN = 100, + T_OR_OP = 101, + T_OUT = 102, + T_PATCH = 103, + T_PERCENT = 104, + T_PLUS = 105, + T_PRECISION = 106, + T_PREPROC = 171, + T_QUESTION = 107, + T_RESERVED = 174, + T_RETURN = 108, + T_RIGHT_ANGLE = 109, + T_RIGHT_ASSIGN = 110, + T_RIGHT_BRACE = 111, + T_RIGHT_BRACKET = 112, + T_RIGHT_OP = 113, + T_RIGHT_PAREN = 114, + T_SAMPLE = 115, + T_SAMPLER1D = 116, + T_SAMPLER1DARRAY = 117, + T_SAMPLER1DARRAYSHADOW = 118, + T_SAMPLER1DSHADOW = 119, + T_SAMPLER2D = 120, + T_SAMPLER2DARRAY = 121, + T_SAMPLER2DARRAYSHADOW = 122, + T_SAMPLER2DMS = 123, + T_SAMPLER2DMSARRAY = 124, + T_SAMPLER2DRECT = 125, + T_SAMPLER2DRECTSHADOW = 126, + T_SAMPLER2DSHADOW = 127, + T_SAMPLER3D = 128, + T_SAMPLERBUFFER = 129, + T_SAMPLERCUBE = 130, + T_SAMPLERCUBEARRAY = 131, + T_SAMPLERCUBEARRAYSHADOW = 132, + T_SAMPLERCUBESHADOW = 133, + T_SEMICOLON = 134, + T_SLASH = 135, + T_SMOOTH = 136, + T_STAR = 137, + T_STRUCT = 138, + T_SUBROUTINE = 139, + T_SUB_ASSIGN = 140, + T_SWITCH = 141, + T_TILDE = 142, + T_TRUE = 169, + T_TYPE_NAME = 143, + T_UINT = 144, + T_UNIFORM = 145, + T_USAMPLER1D = 146, + T_USAMPLER1DARRAY = 147, + T_USAMPLER2D = 148, + T_USAMPLER2DARRAY = 149, + T_USAMPLER2DMS = 150, + T_USAMPLER2DMSARRAY = 151, + T_USAMPLER2DRECT = 152, + T_USAMPLER3D = 153, + T_USAMPLERBUFFER = 154, + T_USAMPLERCUBE = 155, + T_USAMPLERCUBEARRAY = 156, + T_UVEC2 = 157, + T_UVEC3 = 158, + T_UVEC4 = 159, + T_VARYING = 160, + T_VEC2 = 161, + T_VEC3 = 162, + T_VEC4 = 163, + T_VERTICAL_BAR = 164, + T_VOID = 165, + T_WHILE = 166, + T_XOR_ASSIGN = 167, + T_XOR_OP = 168, - ACCEPT_STATE = 462, - RULE_COUNT = 316, - STATE_COUNT = 463, - TERMINAL_COUNT = 175, - NON_TERMINAL_COUNT = 85, + ACCEPT_STATE = 462, + RULE_COUNT = 316, + STATE_COUNT = 463, + TERMINAL_COUNT = 175, + NON_TERMINAL_COUNT = 85, - GOTO_INDEX_OFFSET = 463, - GOTO_INFO_OFFSET = 4681, - GOTO_CHECK_OFFSET = 4681 - }; + GOTO_INDEX_OFFSET = 463, + GOTO_INFO_OFFSET = 4708, + GOTO_CHECK_OFFSET = 4708 + }; - static const char *const spell []; - static const short lhs []; - static const short rhs []; - static const short goto_default []; - static const short action_default []; - static const short action_index []; - static const short action_info []; - static const short action_check []; + static const char *const spell[]; + static const short lhs[]; + static const short rhs[]; + static const short goto_default[]; + static const short action_default[]; + static const short action_index[]; + static const short action_info[]; + static const short action_check[]; - static inline int nt_action (int state, int nt) - { - const int yyn = action_index [GOTO_INDEX_OFFSET + state] + nt; - if (yyn < 0 || action_check [GOTO_CHECK_OFFSET + yyn] != nt) - return goto_default [nt]; + static inline int nt_action (int state, int nt) + { + const int yyn = action_index [GOTO_INDEX_OFFSET + state] + nt; + if (yyn < 0 || action_check [GOTO_CHECK_OFFSET + yyn] != nt) + return goto_default [nt]; - return action_info [GOTO_INFO_OFFSET + yyn]; - } + return action_info [GOTO_INFO_OFFSET + yyn]; + } - static inline int t_action (int state, int token) - { - const int yyn = action_index [state] + token; + static inline int t_action (int state, int token) + { + const int yyn = action_index [state] + token; - if (yyn < 0 || action_check [yyn] != token) - return - action_default [state]; + if (yyn < 0 || action_check [yyn] != token) + return - action_default [state]; - return action_info [yyn]; - } + return action_info [yyn]; + } }; QT_END_NAMESPACE +#endif // GLSLPARSERTABLE_P_H + |