summaryrefslogtreecommitdiffstats
path: root/sql/yy_mariadb.cc
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-18 13:22:53 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-05-18 13:22:53 +0000
commit347c164c35eddab388009470e6848cb361ac93f8 (patch)
tree2c0c44eac690f510bb0a35b2a13b36d606b77b6b /sql/yy_mariadb.cc
parentReleasing progress-linux version 1:10.11.7-4~progress7.99u1. (diff)
downloadmariadb-347c164c35eddab388009470e6848cb361ac93f8.tar.xz
mariadb-347c164c35eddab388009470e6848cb361ac93f8.zip
Merging upstream version 1:10.11.8.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'sql/yy_mariadb.cc')
-rw-r--r--sql/yy_mariadb.cc52206
1 files changed, 52206 insertions, 0 deletions
diff --git a/sql/yy_mariadb.cc b/sql/yy_mariadb.cc
new file mode 100644
index 00000000..0223e459
--- /dev/null
+++ b/sql/yy_mariadb.cc
@@ -0,0 +1,52206 @@
+/* A Bison parser, made by GNU Bison 3.8.2. */
+
+/* Bison implementation for Yacc-like parsers in C
+
+ Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2021 Free Software Foundation,
+ Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <https://www.gnu.org/licenses/>. */
+
+/* As a special exception, you may create a larger work that contains
+ part or all of the Bison parser skeleton and distribute that work
+ under terms of your choice, so long as that work isn't itself a
+ parser generator using the skeleton or a modified version thereof
+ as a parser skeleton. Alternatively, if you modify or redistribute
+ the parser skeleton itself, you may (at your option) remove this
+ special exception, which will cause the skeleton and the resulting
+ Bison output files to be licensed under the GNU General Public
+ License without this special exception.
+
+ This special exception was added by the Free Software Foundation in
+ version 2.2 of Bison. */
+
+/* C LALR(1) parser skeleton written by Richard Stallman, by
+ simplifying the original so-called "semantic" parser. */
+
+/* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
+ especially those whose name start with YY_ or yy_. They are
+ private implementation details that can be changed or removed. */
+
+/* All symbols defined below should begin with yy or YY, to avoid
+ infringing on user name space. This should be done even for local
+ variables, as they might otherwise be expanded by user macros.
+ There are some unavoidable exceptions within include files to
+ define necessary library symbols; they are noted "INFRINGES ON
+ USER NAME SPACE" below. */
+
+/* Identify Bison output, and Bison version. */
+#define YYBISON 30802
+
+/* Bison version string. */
+#define YYBISON_VERSION "3.8.2"
+
+/* Skeleton name. */
+#define YYSKELETON_NAME "/home/buildbot/git/mkdist/sql/myskel.m4"
+
+/* Pure parsers. */
+#define YYPURE 1
+
+/* Push parsers. */
+#define YYPUSH 0
+
+/* Pull parsers. */
+#define YYPULL 1
+
+
+/* Substitute the variable and function names. */
+#define yyparse MYSQLparse
+#define yylex MYSQLlex
+#define yyerror MYSQLerror
+#define yydebug MYSQLdebug
+#define yynerrs MYSQLnerrs
+
+/* First part of user prologue. */
+#line 25 "/home/buildbot/git/sql/sql_yacc.yy"
+
+#define YYLIP (& thd->m_parser_state->m_lip)
+#define YYPS (& thd->m_parser_state->m_yacc)
+#define YYCSCL (thd->variables.character_set_client)
+
+#define MYSQL_YACC
+#define YYINITDEPTH 100
+#define YYMAXDEPTH 3200 /* Because of 64K stack */
+#define Lex (thd->lex)
+
+#define Select Lex->current_select
+#include "mariadb.h"
+#include "sql_priv.h"
+#include "sql_parse.h" /* comp_*_creator */
+#include "sql_table.h" /* primary_key_name */
+#include "sql_partition.h" /* partition_info, HASH_PARTITION */
+#include "sql_class.h" /* Key_part_spec, enum_filetype, Diag_condition_item_name */
+#include "slave.h"
+#include "lex_symbol.h"
+#include "item_create.h"
+#include "sp_head.h"
+#include "sp_rcontext.h"
+#include "sp.h"
+#include "sql_show.h"
+#include "sql_alter.h" // Sql_cmd_alter_table*
+#include "sql_truncate.h" // Sql_cmd_truncate_table
+#include "sql_admin.h" // Sql_cmd_analyze/Check..._table
+#include "sql_partition_admin.h" // Sql_cmd_alter_table_*_part.
+#include "sql_handler.h" // Sql_cmd_handler_*
+#include "sql_signal.h"
+#include "sql_get_diagnostics.h" // Sql_cmd_get_diagnostics
+#include "sql_cte.h"
+#include "sql_window.h"
+#include "item_windowfunc.h"
+#include "event_parse_data.h"
+#include "create_options.h"
+#include <myisam.h>
+#include <myisammrg.h>
+#include "keycaches.h"
+#include "set_var.h"
+#include "rpl_mi.h"
+#include "lex_token.h"
+#include "sql_lex.h"
+#include "sql_sequence.h"
+#include "my_base.h"
+#include "sql_type_json.h"
+#include "json_table.h"
+
+/* this is to get the bison compilation windows warnings out */
+#ifdef _MSC_VER
+/* warning C4065: switch statement contains 'default' but no 'case' labels */
+/* warning C4102: 'yyexhaustedlab': unreferenced label */
+#pragma warning (disable : 4065 4102)
+#endif
+#if defined (__GNUC__) || defined (__clang__)
+#pragma GCC diagnostic ignored "-Wunused-label" /* yyexhaustedlab: */
+#endif
+
+/* Stack size 28200 with clang for MYSQLparse() and ORAparse() */
+PRAGMA_DISABLE_CHECK_STACK_FRAME
+
+int yylex(void *yylval, void *yythd);
+
+#define yyoverflow(A,B,C,D,E,F) \
+ { \
+ size_t val= *(F); \
+ if (unlikely(my_yyoverflow((B), (D), &val))) \
+ { \
+ yyerror(thd, (char*) (A)); \
+ return 2; \
+ } \
+ else \
+ { \
+ *(F)= (YYSIZE_T)val; \
+ } \
+ }
+
+#define MYSQL_YYABORT \
+ do \
+ { \
+ YYABORT; \
+ } while (0)
+
+#define MYSQL_YYABORT_UNLESS(A) \
+ if (unlikely(!(A))) \
+ { \
+ thd->parse_error(); \
+ MYSQL_YYABORT; \
+ }
+
+#define my_yyabort_error(A) \
+ do { my_error A; MYSQL_YYABORT; } while(0)
+
+#ifndef DBUG_OFF
+#define YYDEBUG 1
+#else
+#define YYDEBUG 0
+#endif
+
+
+static Item* escape(THD *thd)
+{
+ thd->lex->escape_used= false;
+ const char *esc= thd->variables.sql_mode & MODE_NO_BACKSLASH_ESCAPES ? "" : "\\";
+ return new (thd->mem_root) Item_string_ascii(thd, esc, MY_TEST(esc[0]));
+}
+
+
+/**
+ @brief Bison callback to report a syntax/OOM error
+
+ This function is invoked by the bison-generated parser
+ when a syntax error, a parse error or an out-of-memory
+ condition occurs. This function is not invoked when the
+ parser is requested to abort by semantic action code
+ by means of YYABORT or YYACCEPT macros. This is why these
+ macros should not be used (use MYSQL_YYABORT/MYSQL_YYACCEPT
+ instead).
+
+ The parser will abort immediately after invoking this callback.
+
+ This function is not for use in semantic actions and is internal to
+ the parser, as it performs some pre-return cleanup.
+ In semantic actions, please use thd->parse_error() or my_error to
+ push an error into the error stack and MYSQL_YYABORT
+ to abort from the parser.
+*/
+
+static void yyerror(THD *thd, const char *s)
+{
+ /* "parse error" changed into "syntax error" between bison 1.75 and 1.875 */
+ if (strcmp(s,"parse error") == 0 || strcmp(s,"syntax error") == 0)
+ s= ER_THD(thd, ER_SYNTAX_ERROR);
+ thd->parse_error(s, 0);
+}
+
+
+#ifndef DBUG_OFF
+#define __CONCAT_UNDERSCORED(x,y) x ## _ ## y
+#define _CONCAT_UNDERSCORED(x,y) __CONCAT_UNDERSCORED(x,y)
+void _CONCAT_UNDERSCORED(turn_parser_debug_on,yyparse)()
+{
+ /*
+ MYSQLdebug is in sql/yy_*.cc, in bison generated code.
+ Turning this option on is **VERY** verbose, and should be
+ used when investigating a syntax error problem only.
+
+ The syntax to run with bison traces is as follows :
+ - Starting a server manually :
+ mysqld --debug-dbug="d,parser_debug" ...
+ - Running a test :
+ mysql-test-run.pl --mysqld="--debug-dbug=d,parser_debug" ...
+
+ The result will be in the process stderr (var/log/master.err)
+ */
+
+#ifndef _AIX
+ extern int yydebug;
+#else
+ static int yydebug;
+#endif
+ yydebug= 1;
+}
+#endif
+
+
+
+#line 244 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+
+# ifndef YY_CAST
+# ifdef __cplusplus
+# define YY_CAST(Type, Val) static_cast<Type> (Val)
+# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast<Type> (Val)
+# else
+# define YY_CAST(Type, Val) ((Type) (Val))
+# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
+# endif
+# endif
+# ifndef YY_NULLPTR
+# if defined __cplusplus
+# if 201103L <= __cplusplus
+# define YY_NULLPTR nullptr
+# else
+# define YY_NULLPTR 0
+# endif
+# else
+# define YY_NULLPTR ((void*)0)
+# endif
+# endif
+
+#include "yy_mariadb.hh"
+/* Symbol kind. */
+enum yysymbol_kind_t
+{
+ YYSYMBOL_YYEMPTY = -2,
+ YYSYMBOL_YYEOF = 0, /* "end of file" */
+ YYSYMBOL_YYerror = 1, /* error */
+ YYSYMBOL_YYUNDEF = 2, /* "invalid token" */
+ YYSYMBOL_3_ = 3, /* '@' */
+ YYSYMBOL_ABORT_SYM = 4, /* ABORT_SYM */
+ YYSYMBOL_IMPOSSIBLE_ACTION = 5, /* IMPOSSIBLE_ACTION */
+ YYSYMBOL_FORCE_LOOKAHEAD = 6, /* FORCE_LOOKAHEAD */
+ YYSYMBOL_END_OF_INPUT = 7, /* END_OF_INPUT */
+ YYSYMBOL_COLON_ORACLE_SYM = 8, /* COLON_ORACLE_SYM */
+ YYSYMBOL_PARAM_MARKER = 9, /* PARAM_MARKER */
+ YYSYMBOL_FOR_SYSTEM_TIME_SYM = 10, /* FOR_SYSTEM_TIME_SYM */
+ YYSYMBOL_LEFT_PAREN_ALT = 11, /* LEFT_PAREN_ALT */
+ YYSYMBOL_LEFT_PAREN_WITH = 12, /* LEFT_PAREN_WITH */
+ YYSYMBOL_LEFT_PAREN_LIKE = 13, /* LEFT_PAREN_LIKE */
+ YYSYMBOL_ORACLE_CONCAT_SYM = 14, /* ORACLE_CONCAT_SYM */
+ YYSYMBOL_PERCENT_ORACLE_SYM = 15, /* PERCENT_ORACLE_SYM */
+ YYSYMBOL_WITH_CUBE_SYM = 16, /* WITH_CUBE_SYM */
+ YYSYMBOL_WITH_ROLLUP_SYM = 17, /* WITH_ROLLUP_SYM */
+ YYSYMBOL_WITH_SYSTEM_SYM = 18, /* WITH_SYSTEM_SYM */
+ YYSYMBOL_IDENT = 19, /* IDENT */
+ YYSYMBOL_IDENT_QUOTED = 20, /* IDENT_QUOTED */
+ YYSYMBOL_LEX_HOSTNAME = 21, /* LEX_HOSTNAME */
+ YYSYMBOL_UNDERSCORE_CHARSET = 22, /* UNDERSCORE_CHARSET */
+ YYSYMBOL_BIN_NUM = 23, /* BIN_NUM */
+ YYSYMBOL_DECIMAL_NUM = 24, /* DECIMAL_NUM */
+ YYSYMBOL_FLOAT_NUM = 25, /* FLOAT_NUM */
+ YYSYMBOL_HEX_NUM = 26, /* HEX_NUM */
+ YYSYMBOL_HEX_STRING = 27, /* HEX_STRING */
+ YYSYMBOL_LONG_NUM = 28, /* LONG_NUM */
+ YYSYMBOL_NCHAR_STRING = 29, /* NCHAR_STRING */
+ YYSYMBOL_NUM = 30, /* NUM */
+ YYSYMBOL_TEXT_STRING = 31, /* TEXT_STRING */
+ YYSYMBOL_ULONGLONG_NUM = 32, /* ULONGLONG_NUM */
+ YYSYMBOL_AND_AND_SYM = 33, /* AND_AND_SYM */
+ YYSYMBOL_DOT_DOT_SYM = 34, /* DOT_DOT_SYM */
+ YYSYMBOL_EQUAL_SYM = 35, /* EQUAL_SYM */
+ YYSYMBOL_GE = 36, /* GE */
+ YYSYMBOL_LE = 37, /* LE */
+ YYSYMBOL_MYSQL_CONCAT_SYM = 38, /* MYSQL_CONCAT_SYM */
+ YYSYMBOL_NE = 39, /* NE */
+ YYSYMBOL_NOT2_SYM = 40, /* NOT2_SYM */
+ YYSYMBOL_OR2_SYM = 41, /* OR2_SYM */
+ YYSYMBOL_SET_VAR = 42, /* SET_VAR */
+ YYSYMBOL_SHIFT_LEFT = 43, /* SHIFT_LEFT */
+ YYSYMBOL_SHIFT_RIGHT = 44, /* SHIFT_RIGHT */
+ YYSYMBOL_ACCESSIBLE_SYM = 45, /* ACCESSIBLE_SYM */
+ YYSYMBOL_ADD = 46, /* ADD */
+ YYSYMBOL_ALL = 47, /* ALL */
+ YYSYMBOL_ALTER = 48, /* ALTER */
+ YYSYMBOL_ANALYZE_SYM = 49, /* ANALYZE_SYM */
+ YYSYMBOL_AND_SYM = 50, /* AND_SYM */
+ YYSYMBOL_ASC = 51, /* ASC */
+ YYSYMBOL_ASENSITIVE_SYM = 52, /* ASENSITIVE_SYM */
+ YYSYMBOL_AS = 53, /* AS */
+ YYSYMBOL_BEFORE_SYM = 54, /* BEFORE_SYM */
+ YYSYMBOL_BETWEEN_SYM = 55, /* BETWEEN_SYM */
+ YYSYMBOL_BIGINT = 56, /* BIGINT */
+ YYSYMBOL_BINARY = 57, /* BINARY */
+ YYSYMBOL_BIT_AND = 58, /* BIT_AND */
+ YYSYMBOL_BIT_OR = 59, /* BIT_OR */
+ YYSYMBOL_BIT_XOR = 60, /* BIT_XOR */
+ YYSYMBOL_BLOB_MARIADB_SYM = 61, /* BLOB_MARIADB_SYM */
+ YYSYMBOL_BLOB_ORACLE_SYM = 62, /* BLOB_ORACLE_SYM */
+ YYSYMBOL_BODY_ORACLE_SYM = 63, /* BODY_ORACLE_SYM */
+ YYSYMBOL_BOTH = 64, /* BOTH */
+ YYSYMBOL_BY = 65, /* BY */
+ YYSYMBOL_CALL_SYM = 66, /* CALL_SYM */
+ YYSYMBOL_CASCADE = 67, /* CASCADE */
+ YYSYMBOL_CASE_SYM = 68, /* CASE_SYM */
+ YYSYMBOL_CAST_SYM = 69, /* CAST_SYM */
+ YYSYMBOL_CHANGE = 70, /* CHANGE */
+ YYSYMBOL_CHAR_SYM = 71, /* CHAR_SYM */
+ YYSYMBOL_CHECK_SYM = 72, /* CHECK_SYM */
+ YYSYMBOL_COLLATE_SYM = 73, /* COLLATE_SYM */
+ YYSYMBOL_CONDITION_SYM = 74, /* CONDITION_SYM */
+ YYSYMBOL_CONSTRAINT = 75, /* CONSTRAINT */
+ YYSYMBOL_CONTINUE_MARIADB_SYM = 76, /* CONTINUE_MARIADB_SYM */
+ YYSYMBOL_CONTINUE_ORACLE_SYM = 77, /* CONTINUE_ORACLE_SYM */
+ YYSYMBOL_CONVERT_SYM = 78, /* CONVERT_SYM */
+ YYSYMBOL_COUNT_SYM = 79, /* COUNT_SYM */
+ YYSYMBOL_CREATE = 80, /* CREATE */
+ YYSYMBOL_CROSS = 81, /* CROSS */
+ YYSYMBOL_CUME_DIST_SYM = 82, /* CUME_DIST_SYM */
+ YYSYMBOL_CURDATE = 83, /* CURDATE */
+ YYSYMBOL_CURRENT_ROLE = 84, /* CURRENT_ROLE */
+ YYSYMBOL_CURRENT_USER = 85, /* CURRENT_USER */
+ YYSYMBOL_CURSOR_SYM = 86, /* CURSOR_SYM */
+ YYSYMBOL_CURTIME = 87, /* CURTIME */
+ YYSYMBOL_DATABASE = 88, /* DATABASE */
+ YYSYMBOL_DATABASES = 89, /* DATABASES */
+ YYSYMBOL_DATE_ADD_INTERVAL = 90, /* DATE_ADD_INTERVAL */
+ YYSYMBOL_DATE_SUB_INTERVAL = 91, /* DATE_SUB_INTERVAL */
+ YYSYMBOL_DAY_HOUR_SYM = 92, /* DAY_HOUR_SYM */
+ YYSYMBOL_DAY_MICROSECOND_SYM = 93, /* DAY_MICROSECOND_SYM */
+ YYSYMBOL_DAY_MINUTE_SYM = 94, /* DAY_MINUTE_SYM */
+ YYSYMBOL_DAY_SECOND_SYM = 95, /* DAY_SECOND_SYM */
+ YYSYMBOL_DECIMAL_SYM = 96, /* DECIMAL_SYM */
+ YYSYMBOL_DECLARE_MARIADB_SYM = 97, /* DECLARE_MARIADB_SYM */
+ YYSYMBOL_DECLARE_ORACLE_SYM = 98, /* DECLARE_ORACLE_SYM */
+ YYSYMBOL_DEFAULT = 99, /* DEFAULT */
+ YYSYMBOL_DELETE_DOMAIN_ID_SYM = 100, /* DELETE_DOMAIN_ID_SYM */
+ YYSYMBOL_DELETE_SYM = 101, /* DELETE_SYM */
+ YYSYMBOL_DENSE_RANK_SYM = 102, /* DENSE_RANK_SYM */
+ YYSYMBOL_DESCRIBE = 103, /* DESCRIBE */
+ YYSYMBOL_DESC = 104, /* DESC */
+ YYSYMBOL_DETERMINISTIC_SYM = 105, /* DETERMINISTIC_SYM */
+ YYSYMBOL_DISTINCT = 106, /* DISTINCT */
+ YYSYMBOL_DIV_SYM = 107, /* DIV_SYM */
+ YYSYMBOL_DO_DOMAIN_IDS_SYM = 108, /* DO_DOMAIN_IDS_SYM */
+ YYSYMBOL_DOUBLE_SYM = 109, /* DOUBLE_SYM */
+ YYSYMBOL_DROP = 110, /* DROP */
+ YYSYMBOL_DUAL_SYM = 111, /* DUAL_SYM */
+ YYSYMBOL_EACH_SYM = 112, /* EACH_SYM */
+ YYSYMBOL_ELSEIF_MARIADB_SYM = 113, /* ELSEIF_MARIADB_SYM */
+ YYSYMBOL_ELSE = 114, /* ELSE */
+ YYSYMBOL_ELSIF_ORACLE_SYM = 115, /* ELSIF_ORACLE_SYM */
+ YYSYMBOL_EMPTY_SYM = 116, /* EMPTY_SYM */
+ YYSYMBOL_ENCLOSED = 117, /* ENCLOSED */
+ YYSYMBOL_ESCAPED = 118, /* ESCAPED */
+ YYSYMBOL_EXCEPT_SYM = 119, /* EXCEPT_SYM */
+ YYSYMBOL_EXISTS = 120, /* EXISTS */
+ YYSYMBOL_EXTRACT_SYM = 121, /* EXTRACT_SYM */
+ YYSYMBOL_FALSE_SYM = 122, /* FALSE_SYM */
+ YYSYMBOL_FETCH_SYM = 123, /* FETCH_SYM */
+ YYSYMBOL_FIRST_VALUE_SYM = 124, /* FIRST_VALUE_SYM */
+ YYSYMBOL_FLOAT_SYM = 125, /* FLOAT_SYM */
+ YYSYMBOL_FOREIGN = 126, /* FOREIGN */
+ YYSYMBOL_FOR_SYM = 127, /* FOR_SYM */
+ YYSYMBOL_FROM = 128, /* FROM */
+ YYSYMBOL_FULLTEXT_SYM = 129, /* FULLTEXT_SYM */
+ YYSYMBOL_GOTO_ORACLE_SYM = 130, /* GOTO_ORACLE_SYM */
+ YYSYMBOL_GRANT = 131, /* GRANT */
+ YYSYMBOL_GROUP_CONCAT_SYM = 132, /* GROUP_CONCAT_SYM */
+ YYSYMBOL_JSON_ARRAYAGG_SYM = 133, /* JSON_ARRAYAGG_SYM */
+ YYSYMBOL_JSON_OBJECTAGG_SYM = 134, /* JSON_OBJECTAGG_SYM */
+ YYSYMBOL_JSON_TABLE_SYM = 135, /* JSON_TABLE_SYM */
+ YYSYMBOL_GROUP_SYM = 136, /* GROUP_SYM */
+ YYSYMBOL_HAVING = 137, /* HAVING */
+ YYSYMBOL_HOUR_MICROSECOND_SYM = 138, /* HOUR_MICROSECOND_SYM */
+ YYSYMBOL_HOUR_MINUTE_SYM = 139, /* HOUR_MINUTE_SYM */
+ YYSYMBOL_HOUR_SECOND_SYM = 140, /* HOUR_SECOND_SYM */
+ YYSYMBOL_IF_SYM = 141, /* IF_SYM */
+ YYSYMBOL_IGNORE_DOMAIN_IDS_SYM = 142, /* IGNORE_DOMAIN_IDS_SYM */
+ YYSYMBOL_IGNORE_SYM = 143, /* IGNORE_SYM */
+ YYSYMBOL_IGNORED_SYM = 144, /* IGNORED_SYM */
+ YYSYMBOL_INDEX_SYM = 145, /* INDEX_SYM */
+ YYSYMBOL_INFILE = 146, /* INFILE */
+ YYSYMBOL_INNER_SYM = 147, /* INNER_SYM */
+ YYSYMBOL_INOUT_SYM = 148, /* INOUT_SYM */
+ YYSYMBOL_INSENSITIVE_SYM = 149, /* INSENSITIVE_SYM */
+ YYSYMBOL_INSERT = 150, /* INSERT */
+ YYSYMBOL_IN_SYM = 151, /* IN_SYM */
+ YYSYMBOL_INTERSECT_SYM = 152, /* INTERSECT_SYM */
+ YYSYMBOL_INTERVAL_SYM = 153, /* INTERVAL_SYM */
+ YYSYMBOL_INTO = 154, /* INTO */
+ YYSYMBOL_INT_SYM = 155, /* INT_SYM */
+ YYSYMBOL_IS = 156, /* IS */
+ YYSYMBOL_ITERATE_SYM = 157, /* ITERATE_SYM */
+ YYSYMBOL_JOIN_SYM = 158, /* JOIN_SYM */
+ YYSYMBOL_KEYS = 159, /* KEYS */
+ YYSYMBOL_KEY_SYM = 160, /* KEY_SYM */
+ YYSYMBOL_KILL_SYM = 161, /* KILL_SYM */
+ YYSYMBOL_LAG_SYM = 162, /* LAG_SYM */
+ YYSYMBOL_LEADING = 163, /* LEADING */
+ YYSYMBOL_LEAD_SYM = 164, /* LEAD_SYM */
+ YYSYMBOL_LEAVE_SYM = 165, /* LEAVE_SYM */
+ YYSYMBOL_LEFT = 166, /* LEFT */
+ YYSYMBOL_LIKE = 167, /* LIKE */
+ YYSYMBOL_LIMIT = 168, /* LIMIT */
+ YYSYMBOL_LINEAR_SYM = 169, /* LINEAR_SYM */
+ YYSYMBOL_LINES = 170, /* LINES */
+ YYSYMBOL_LOAD = 171, /* LOAD */
+ YYSYMBOL_LOCATOR_SYM = 172, /* LOCATOR_SYM */
+ YYSYMBOL_LOCK_SYM = 173, /* LOCK_SYM */
+ YYSYMBOL_LONGBLOB = 174, /* LONGBLOB */
+ YYSYMBOL_LONG_SYM = 175, /* LONG_SYM */
+ YYSYMBOL_LONGTEXT = 176, /* LONGTEXT */
+ YYSYMBOL_LOOP_SYM = 177, /* LOOP_SYM */
+ YYSYMBOL_LOW_PRIORITY = 178, /* LOW_PRIORITY */
+ YYSYMBOL_MASTER_SSL_VERIFY_SERVER_CERT_SYM = 179, /* MASTER_SSL_VERIFY_SERVER_CERT_SYM */
+ YYSYMBOL_MATCH = 180, /* MATCH */
+ YYSYMBOL_MAX_SYM = 181, /* MAX_SYM */
+ YYSYMBOL_MAXVALUE_SYM = 182, /* MAXVALUE_SYM */
+ YYSYMBOL_MEDIAN_SYM = 183, /* MEDIAN_SYM */
+ YYSYMBOL_MEDIUMBLOB = 184, /* MEDIUMBLOB */
+ YYSYMBOL_MEDIUMINT = 185, /* MEDIUMINT */
+ YYSYMBOL_MEDIUMTEXT = 186, /* MEDIUMTEXT */
+ YYSYMBOL_MIN_SYM = 187, /* MIN_SYM */
+ YYSYMBOL_MINUS_ORACLE_SYM = 188, /* MINUS_ORACLE_SYM */
+ YYSYMBOL_MINUTE_MICROSECOND_SYM = 189, /* MINUTE_MICROSECOND_SYM */
+ YYSYMBOL_MINUTE_SECOND_SYM = 190, /* MINUTE_SECOND_SYM */
+ YYSYMBOL_MODIFIES_SYM = 191, /* MODIFIES_SYM */
+ YYSYMBOL_MOD_SYM = 192, /* MOD_SYM */
+ YYSYMBOL_NATURAL = 193, /* NATURAL */
+ YYSYMBOL_NEG = 194, /* NEG */
+ YYSYMBOL_NESTED_SYM = 195, /* NESTED_SYM */
+ YYSYMBOL_NOT_SYM = 196, /* NOT_SYM */
+ YYSYMBOL_NO_WRITE_TO_BINLOG = 197, /* NO_WRITE_TO_BINLOG */
+ YYSYMBOL_NOW_SYM = 198, /* NOW_SYM */
+ YYSYMBOL_NTH_VALUE_SYM = 199, /* NTH_VALUE_SYM */
+ YYSYMBOL_NTILE_SYM = 200, /* NTILE_SYM */
+ YYSYMBOL_NULL_SYM = 201, /* NULL_SYM */
+ YYSYMBOL_NUMERIC_SYM = 202, /* NUMERIC_SYM */
+ YYSYMBOL_ON = 203, /* ON */
+ YYSYMBOL_OPTIMIZE = 204, /* OPTIMIZE */
+ YYSYMBOL_OPTIONALLY = 205, /* OPTIONALLY */
+ YYSYMBOL_ORDER_SYM = 206, /* ORDER_SYM */
+ YYSYMBOL_ORDINALITY_SYM = 207, /* ORDINALITY_SYM */
+ YYSYMBOL_OR_SYM = 208, /* OR_SYM */
+ YYSYMBOL_OTHERS_ORACLE_SYM = 209, /* OTHERS_ORACLE_SYM */
+ YYSYMBOL_OUTER = 210, /* OUTER */
+ YYSYMBOL_OUTFILE = 211, /* OUTFILE */
+ YYSYMBOL_OUT_SYM = 212, /* OUT_SYM */
+ YYSYMBOL_OVER_SYM = 213, /* OVER_SYM */
+ YYSYMBOL_PACKAGE_ORACLE_SYM = 214, /* PACKAGE_ORACLE_SYM */
+ YYSYMBOL_PAGE_CHECKSUM_SYM = 215, /* PAGE_CHECKSUM_SYM */
+ YYSYMBOL_PARSE_VCOL_EXPR_SYM = 216, /* PARSE_VCOL_EXPR_SYM */
+ YYSYMBOL_PARTITION_SYM = 217, /* PARTITION_SYM */
+ YYSYMBOL_PATH_SYM = 218, /* PATH_SYM */
+ YYSYMBOL_PERCENTILE_CONT_SYM = 219, /* PERCENTILE_CONT_SYM */
+ YYSYMBOL_PERCENTILE_DISC_SYM = 220, /* PERCENTILE_DISC_SYM */
+ YYSYMBOL_PERCENT_RANK_SYM = 221, /* PERCENT_RANK_SYM */
+ YYSYMBOL_PORTION_SYM = 222, /* PORTION_SYM */
+ YYSYMBOL_POSITION_SYM = 223, /* POSITION_SYM */
+ YYSYMBOL_PRECISION = 224, /* PRECISION */
+ YYSYMBOL_PRIMARY_SYM = 225, /* PRIMARY_SYM */
+ YYSYMBOL_PROCEDURE_SYM = 226, /* PROCEDURE_SYM */
+ YYSYMBOL_PURGE = 227, /* PURGE */
+ YYSYMBOL_RAISE_ORACLE_SYM = 228, /* RAISE_ORACLE_SYM */
+ YYSYMBOL_RANGE_SYM = 229, /* RANGE_SYM */
+ YYSYMBOL_RANK_SYM = 230, /* RANK_SYM */
+ YYSYMBOL_READS_SYM = 231, /* READS_SYM */
+ YYSYMBOL_READ_SYM = 232, /* READ_SYM */
+ YYSYMBOL_READ_WRITE_SYM = 233, /* READ_WRITE_SYM */
+ YYSYMBOL_REAL = 234, /* REAL */
+ YYSYMBOL_RECURSIVE_SYM = 235, /* RECURSIVE_SYM */
+ YYSYMBOL_REFERENCES = 236, /* REFERENCES */
+ YYSYMBOL_REF_SYSTEM_ID_SYM = 237, /* REF_SYSTEM_ID_SYM */
+ YYSYMBOL_REGEXP = 238, /* REGEXP */
+ YYSYMBOL_RELEASE_SYM = 239, /* RELEASE_SYM */
+ YYSYMBOL_RENAME = 240, /* RENAME */
+ YYSYMBOL_REPEAT_SYM = 241, /* REPEAT_SYM */
+ YYSYMBOL_REQUIRE_SYM = 242, /* REQUIRE_SYM */
+ YYSYMBOL_RESIGNAL_SYM = 243, /* RESIGNAL_SYM */
+ YYSYMBOL_RESTRICT = 244, /* RESTRICT */
+ YYSYMBOL_RETURNING_SYM = 245, /* RETURNING_SYM */
+ YYSYMBOL_RETURN_MARIADB_SYM = 246, /* RETURN_MARIADB_SYM */
+ YYSYMBOL_RETURN_ORACLE_SYM = 247, /* RETURN_ORACLE_SYM */
+ YYSYMBOL_REVOKE = 248, /* REVOKE */
+ YYSYMBOL_RIGHT = 249, /* RIGHT */
+ YYSYMBOL_ROW_NUMBER_SYM = 250, /* ROW_NUMBER_SYM */
+ YYSYMBOL_ROWS_SYM = 251, /* ROWS_SYM */
+ YYSYMBOL_ROWTYPE_ORACLE_SYM = 252, /* ROWTYPE_ORACLE_SYM */
+ YYSYMBOL_SECOND_MICROSECOND_SYM = 253, /* SECOND_MICROSECOND_SYM */
+ YYSYMBOL_SELECT_SYM = 254, /* SELECT_SYM */
+ YYSYMBOL_SENSITIVE_SYM = 255, /* SENSITIVE_SYM */
+ YYSYMBOL_SEPARATOR_SYM = 256, /* SEPARATOR_SYM */
+ YYSYMBOL_SERVER_OPTIONS = 257, /* SERVER_OPTIONS */
+ YYSYMBOL_SET = 258, /* SET */
+ YYSYMBOL_SHOW = 259, /* SHOW */
+ YYSYMBOL_SIGNAL_SYM = 260, /* SIGNAL_SYM */
+ YYSYMBOL_SMALLINT = 261, /* SMALLINT */
+ YYSYMBOL_SPATIAL_SYM = 262, /* SPATIAL_SYM */
+ YYSYMBOL_SPECIFIC_SYM = 263, /* SPECIFIC_SYM */
+ YYSYMBOL_SQL_BIG_RESULT = 264, /* SQL_BIG_RESULT */
+ YYSYMBOL_SQLEXCEPTION_SYM = 265, /* SQLEXCEPTION_SYM */
+ YYSYMBOL_SQL_SMALL_RESULT = 266, /* SQL_SMALL_RESULT */
+ YYSYMBOL_SQLSTATE_SYM = 267, /* SQLSTATE_SYM */
+ YYSYMBOL_SQL_SYM = 268, /* SQL_SYM */
+ YYSYMBOL_SQLWARNING_SYM = 269, /* SQLWARNING_SYM */
+ YYSYMBOL_SSL_SYM = 270, /* SSL_SYM */
+ YYSYMBOL_STARTING = 271, /* STARTING */
+ YYSYMBOL_STATS_AUTO_RECALC_SYM = 272, /* STATS_AUTO_RECALC_SYM */
+ YYSYMBOL_STATS_PERSISTENT_SYM = 273, /* STATS_PERSISTENT_SYM */
+ YYSYMBOL_STATS_SAMPLE_PAGES_SYM = 274, /* STATS_SAMPLE_PAGES_SYM */
+ YYSYMBOL_STDDEV_SAMP_SYM = 275, /* STDDEV_SAMP_SYM */
+ YYSYMBOL_STD_SYM = 276, /* STD_SYM */
+ YYSYMBOL_STRAIGHT_JOIN = 277, /* STRAIGHT_JOIN */
+ YYSYMBOL_SUM_SYM = 278, /* SUM_SYM */
+ YYSYMBOL_SYSDATE = 279, /* SYSDATE */
+ YYSYMBOL_TABLE_REF_PRIORITY = 280, /* TABLE_REF_PRIORITY */
+ YYSYMBOL_TABLE_SYM = 281, /* TABLE_SYM */
+ YYSYMBOL_TERMINATED = 282, /* TERMINATED */
+ YYSYMBOL_THEN_SYM = 283, /* THEN_SYM */
+ YYSYMBOL_TINYBLOB = 284, /* TINYBLOB */
+ YYSYMBOL_TINYINT = 285, /* TINYINT */
+ YYSYMBOL_TINYTEXT = 286, /* TINYTEXT */
+ YYSYMBOL_TO_SYM = 287, /* TO_SYM */
+ YYSYMBOL_TRAILING = 288, /* TRAILING */
+ YYSYMBOL_TRIGGER_SYM = 289, /* TRIGGER_SYM */
+ YYSYMBOL_TRUE_SYM = 290, /* TRUE_SYM */
+ YYSYMBOL_UNDO_SYM = 291, /* UNDO_SYM */
+ YYSYMBOL_UNION_SYM = 292, /* UNION_SYM */
+ YYSYMBOL_UNIQUE_SYM = 293, /* UNIQUE_SYM */
+ YYSYMBOL_UNLOCK_SYM = 294, /* UNLOCK_SYM */
+ YYSYMBOL_UNSIGNED = 295, /* UNSIGNED */
+ YYSYMBOL_UPDATE_SYM = 296, /* UPDATE_SYM */
+ YYSYMBOL_USAGE = 297, /* USAGE */
+ YYSYMBOL_USE_SYM = 298, /* USE_SYM */
+ YYSYMBOL_USING = 299, /* USING */
+ YYSYMBOL_UTC_DATE_SYM = 300, /* UTC_DATE_SYM */
+ YYSYMBOL_UTC_TIMESTAMP_SYM = 301, /* UTC_TIMESTAMP_SYM */
+ YYSYMBOL_UTC_TIME_SYM = 302, /* UTC_TIME_SYM */
+ YYSYMBOL_VALUES_IN_SYM = 303, /* VALUES_IN_SYM */
+ YYSYMBOL_VALUES_LESS_SYM = 304, /* VALUES_LESS_SYM */
+ YYSYMBOL_VALUES = 305, /* VALUES */
+ YYSYMBOL_VARBINARY = 306, /* VARBINARY */
+ YYSYMBOL_VARCHAR = 307, /* VARCHAR */
+ YYSYMBOL_VARIANCE_SYM = 308, /* VARIANCE_SYM */
+ YYSYMBOL_VAR_SAMP_SYM = 309, /* VAR_SAMP_SYM */
+ YYSYMBOL_VARYING = 310, /* VARYING */
+ YYSYMBOL_WHEN_SYM = 311, /* WHEN_SYM */
+ YYSYMBOL_WHERE = 312, /* WHERE */
+ YYSYMBOL_WHILE_SYM = 313, /* WHILE_SYM */
+ YYSYMBOL_WITH = 314, /* WITH */
+ YYSYMBOL_XOR = 315, /* XOR */
+ YYSYMBOL_YEAR_MONTH_SYM = 316, /* YEAR_MONTH_SYM */
+ YYSYMBOL_ZEROFILL = 317, /* ZEROFILL */
+ YYSYMBOL_BODY_MARIADB_SYM = 318, /* BODY_MARIADB_SYM */
+ YYSYMBOL_ELSEIF_ORACLE_SYM = 319, /* ELSEIF_ORACLE_SYM */
+ YYSYMBOL_ELSIF_MARIADB_SYM = 320, /* ELSIF_MARIADB_SYM */
+ YYSYMBOL_EXCEPTION_ORACLE_SYM = 321, /* EXCEPTION_ORACLE_SYM */
+ YYSYMBOL_GOTO_MARIADB_SYM = 322, /* GOTO_MARIADB_SYM */
+ YYSYMBOL_OTHERS_MARIADB_SYM = 323, /* OTHERS_MARIADB_SYM */
+ YYSYMBOL_PACKAGE_MARIADB_SYM = 324, /* PACKAGE_MARIADB_SYM */
+ YYSYMBOL_RAISE_MARIADB_SYM = 325, /* RAISE_MARIADB_SYM */
+ YYSYMBOL_ROWTYPE_MARIADB_SYM = 326, /* ROWTYPE_MARIADB_SYM */
+ YYSYMBOL_ROWNUM_SYM = 327, /* ROWNUM_SYM */
+ YYSYMBOL_REPLACE = 328, /* REPLACE */
+ YYSYMBOL_SUBSTRING = 329, /* SUBSTRING */
+ YYSYMBOL_TRIM = 330, /* TRIM */
+ YYSYMBOL_ACCOUNT_SYM = 331, /* ACCOUNT_SYM */
+ YYSYMBOL_ACTION = 332, /* ACTION */
+ YYSYMBOL_ADMIN_SYM = 333, /* ADMIN_SYM */
+ YYSYMBOL_ADDDATE_SYM = 334, /* ADDDATE_SYM */
+ YYSYMBOL_AFTER_SYM = 335, /* AFTER_SYM */
+ YYSYMBOL_AGAINST = 336, /* AGAINST */
+ YYSYMBOL_AGGREGATE_SYM = 337, /* AGGREGATE_SYM */
+ YYSYMBOL_ALGORITHM_SYM = 338, /* ALGORITHM_SYM */
+ YYSYMBOL_ALWAYS_SYM = 339, /* ALWAYS_SYM */
+ YYSYMBOL_ANY_SYM = 340, /* ANY_SYM */
+ YYSYMBOL_ASCII_SYM = 341, /* ASCII_SYM */
+ YYSYMBOL_AT_SYM = 342, /* AT_SYM */
+ YYSYMBOL_ATOMIC_SYM = 343, /* ATOMIC_SYM */
+ YYSYMBOL_AUTHORS_SYM = 344, /* AUTHORS_SYM */
+ YYSYMBOL_AUTOEXTEND_SIZE_SYM = 345, /* AUTOEXTEND_SIZE_SYM */
+ YYSYMBOL_AUTO_INC = 346, /* AUTO_INC */
+ YYSYMBOL_AUTO_SYM = 347, /* AUTO_SYM */
+ YYSYMBOL_AVG_ROW_LENGTH = 348, /* AVG_ROW_LENGTH */
+ YYSYMBOL_AVG_SYM = 349, /* AVG_SYM */
+ YYSYMBOL_BACKUP_SYM = 350, /* BACKUP_SYM */
+ YYSYMBOL_BEGIN_MARIADB_SYM = 351, /* BEGIN_MARIADB_SYM */
+ YYSYMBOL_BEGIN_ORACLE_SYM = 352, /* BEGIN_ORACLE_SYM */
+ YYSYMBOL_BINLOG_SYM = 353, /* BINLOG_SYM */
+ YYSYMBOL_BIT_SYM = 354, /* BIT_SYM */
+ YYSYMBOL_BLOCK_SYM = 355, /* BLOCK_SYM */
+ YYSYMBOL_BOOL_SYM = 356, /* BOOL_SYM */
+ YYSYMBOL_BOOLEAN_SYM = 357, /* BOOLEAN_SYM */
+ YYSYMBOL_BTREE_SYM = 358, /* BTREE_SYM */
+ YYSYMBOL_BYTE_SYM = 359, /* BYTE_SYM */
+ YYSYMBOL_CACHE_SYM = 360, /* CACHE_SYM */
+ YYSYMBOL_CASCADED = 361, /* CASCADED */
+ YYSYMBOL_CATALOG_NAME_SYM = 362, /* CATALOG_NAME_SYM */
+ YYSYMBOL_CHAIN_SYM = 363, /* CHAIN_SYM */
+ YYSYMBOL_CHANGED = 364, /* CHANGED */
+ YYSYMBOL_CHANNEL_SYM = 365, /* CHANNEL_SYM */
+ YYSYMBOL_CHARSET = 366, /* CHARSET */
+ YYSYMBOL_CHECKPOINT_SYM = 367, /* CHECKPOINT_SYM */
+ YYSYMBOL_CHECKSUM_SYM = 368, /* CHECKSUM_SYM */
+ YYSYMBOL_CIPHER_SYM = 369, /* CIPHER_SYM */
+ YYSYMBOL_CLASS_ORIGIN_SYM = 370, /* CLASS_ORIGIN_SYM */
+ YYSYMBOL_CLIENT_SYM = 371, /* CLIENT_SYM */
+ YYSYMBOL_CLOB_MARIADB_SYM = 372, /* CLOB_MARIADB_SYM */
+ YYSYMBOL_CLOB_ORACLE_SYM = 373, /* CLOB_ORACLE_SYM */
+ YYSYMBOL_CLOSE_SYM = 374, /* CLOSE_SYM */
+ YYSYMBOL_COALESCE = 375, /* COALESCE */
+ YYSYMBOL_CODE_SYM = 376, /* CODE_SYM */
+ YYSYMBOL_COLLATION_SYM = 377, /* COLLATION_SYM */
+ YYSYMBOL_COLUMNS = 378, /* COLUMNS */
+ YYSYMBOL_COLUMN_ADD_SYM = 379, /* COLUMN_ADD_SYM */
+ YYSYMBOL_COLUMN_CHECK_SYM = 380, /* COLUMN_CHECK_SYM */
+ YYSYMBOL_COLUMN_CREATE_SYM = 381, /* COLUMN_CREATE_SYM */
+ YYSYMBOL_COLUMN_DELETE_SYM = 382, /* COLUMN_DELETE_SYM */
+ YYSYMBOL_COLUMN_GET_SYM = 383, /* COLUMN_GET_SYM */
+ YYSYMBOL_COLUMN_SYM = 384, /* COLUMN_SYM */
+ YYSYMBOL_COLUMN_NAME_SYM = 385, /* COLUMN_NAME_SYM */
+ YYSYMBOL_COMMENT_SYM = 386, /* COMMENT_SYM */
+ YYSYMBOL_COMMITTED_SYM = 387, /* COMMITTED_SYM */
+ YYSYMBOL_COMMIT_SYM = 388, /* COMMIT_SYM */
+ YYSYMBOL_COMPACT_SYM = 389, /* COMPACT_SYM */
+ YYSYMBOL_COMPLETION_SYM = 390, /* COMPLETION_SYM */
+ YYSYMBOL_COMPRESSED_SYM = 391, /* COMPRESSED_SYM */
+ YYSYMBOL_CONCURRENT = 392, /* CONCURRENT */
+ YYSYMBOL_CONNECTION_SYM = 393, /* CONNECTION_SYM */
+ YYSYMBOL_CONSISTENT_SYM = 394, /* CONSISTENT_SYM */
+ YYSYMBOL_CONSTRAINT_CATALOG_SYM = 395, /* CONSTRAINT_CATALOG_SYM */
+ YYSYMBOL_CONSTRAINT_NAME_SYM = 396, /* CONSTRAINT_NAME_SYM */
+ YYSYMBOL_CONSTRAINT_SCHEMA_SYM = 397, /* CONSTRAINT_SCHEMA_SYM */
+ YYSYMBOL_CONTAINS_SYM = 398, /* CONTAINS_SYM */
+ YYSYMBOL_CONTEXT_SYM = 399, /* CONTEXT_SYM */
+ YYSYMBOL_CONTRIBUTORS_SYM = 400, /* CONTRIBUTORS_SYM */
+ YYSYMBOL_CPU_SYM = 401, /* CPU_SYM */
+ YYSYMBOL_CUBE_SYM = 402, /* CUBE_SYM */
+ YYSYMBOL_CURRENT_SYM = 403, /* CURRENT_SYM */
+ YYSYMBOL_CURRENT_POS_SYM = 404, /* CURRENT_POS_SYM */
+ YYSYMBOL_CURSOR_NAME_SYM = 405, /* CURSOR_NAME_SYM */
+ YYSYMBOL_CYCLE_SYM = 406, /* CYCLE_SYM */
+ YYSYMBOL_DATAFILE_SYM = 407, /* DATAFILE_SYM */
+ YYSYMBOL_DATA_SYM = 408, /* DATA_SYM */
+ YYSYMBOL_DATETIME = 409, /* DATETIME */
+ YYSYMBOL_DATE_SYM = 410, /* DATE_SYM */
+ YYSYMBOL_DAY_SYM = 411, /* DAY_SYM */
+ YYSYMBOL_DEALLOCATE_SYM = 412, /* DEALLOCATE_SYM */
+ YYSYMBOL_DEFINER_SYM = 413, /* DEFINER_SYM */
+ YYSYMBOL_DELAYED_SYM = 414, /* DELAYED_SYM */
+ YYSYMBOL_DELAY_KEY_WRITE_SYM = 415, /* DELAY_KEY_WRITE_SYM */
+ YYSYMBOL_DES_KEY_FILE = 416, /* DES_KEY_FILE */
+ YYSYMBOL_DIAGNOSTICS_SYM = 417, /* DIAGNOSTICS_SYM */
+ YYSYMBOL_DIRECTORY_SYM = 418, /* DIRECTORY_SYM */
+ YYSYMBOL_DISABLE_SYM = 419, /* DISABLE_SYM */
+ YYSYMBOL_DISCARD = 420, /* DISCARD */
+ YYSYMBOL_DISK_SYM = 421, /* DISK_SYM */
+ YYSYMBOL_DO_SYM = 422, /* DO_SYM */
+ YYSYMBOL_DUMPFILE = 423, /* DUMPFILE */
+ YYSYMBOL_DUPLICATE_SYM = 424, /* DUPLICATE_SYM */
+ YYSYMBOL_DYNAMIC_SYM = 425, /* DYNAMIC_SYM */
+ YYSYMBOL_ENABLE_SYM = 426, /* ENABLE_SYM */
+ YYSYMBOL_END = 427, /* END */
+ YYSYMBOL_ENDS_SYM = 428, /* ENDS_SYM */
+ YYSYMBOL_ENGINES_SYM = 429, /* ENGINES_SYM */
+ YYSYMBOL_ENGINE_SYM = 430, /* ENGINE_SYM */
+ YYSYMBOL_ENUM = 431, /* ENUM */
+ YYSYMBOL_ERROR_SYM = 432, /* ERROR_SYM */
+ YYSYMBOL_ERRORS = 433, /* ERRORS */
+ YYSYMBOL_ESCAPE_SYM = 434, /* ESCAPE_SYM */
+ YYSYMBOL_EVENTS_SYM = 435, /* EVENTS_SYM */
+ YYSYMBOL_EVENT_SYM = 436, /* EVENT_SYM */
+ YYSYMBOL_EVERY_SYM = 437, /* EVERY_SYM */
+ YYSYMBOL_EXCHANGE_SYM = 438, /* EXCHANGE_SYM */
+ YYSYMBOL_EXAMINED_SYM = 439, /* EXAMINED_SYM */
+ YYSYMBOL_EXCLUDE_SYM = 440, /* EXCLUDE_SYM */
+ YYSYMBOL_EXECUTE_SYM = 441, /* EXECUTE_SYM */
+ YYSYMBOL_EXCEPTION_MARIADB_SYM = 442, /* EXCEPTION_MARIADB_SYM */
+ YYSYMBOL_EXIT_MARIADB_SYM = 443, /* EXIT_MARIADB_SYM */
+ YYSYMBOL_EXIT_ORACLE_SYM = 444, /* EXIT_ORACLE_SYM */
+ YYSYMBOL_EXPANSION_SYM = 445, /* EXPANSION_SYM */
+ YYSYMBOL_EXPIRE_SYM = 446, /* EXPIRE_SYM */
+ YYSYMBOL_EXPORT_SYM = 447, /* EXPORT_SYM */
+ YYSYMBOL_EXTENDED_SYM = 448, /* EXTENDED_SYM */
+ YYSYMBOL_EXTENT_SIZE_SYM = 449, /* EXTENT_SIZE_SYM */
+ YYSYMBOL_FAST_SYM = 450, /* FAST_SYM */
+ YYSYMBOL_FAULTS_SYM = 451, /* FAULTS_SYM */
+ YYSYMBOL_FEDERATED_SYM = 452, /* FEDERATED_SYM */
+ YYSYMBOL_FILE_SYM = 453, /* FILE_SYM */
+ YYSYMBOL_FIRST_SYM = 454, /* FIRST_SYM */
+ YYSYMBOL_FIXED_SYM = 455, /* FIXED_SYM */
+ YYSYMBOL_FLUSH_SYM = 456, /* FLUSH_SYM */
+ YYSYMBOL_FOLLOWS_SYM = 457, /* FOLLOWS_SYM */
+ YYSYMBOL_FOLLOWING_SYM = 458, /* FOLLOWING_SYM */
+ YYSYMBOL_FORCE_SYM = 459, /* FORCE_SYM */
+ YYSYMBOL_FORMAT_SYM = 460, /* FORMAT_SYM */
+ YYSYMBOL_FOUND_SYM = 461, /* FOUND_SYM */
+ YYSYMBOL_FULL = 462, /* FULL */
+ YYSYMBOL_FUNCTION_SYM = 463, /* FUNCTION_SYM */
+ YYSYMBOL_GENERAL = 464, /* GENERAL */
+ YYSYMBOL_GENERATED_SYM = 465, /* GENERATED_SYM */
+ YYSYMBOL_GET_FORMAT = 466, /* GET_FORMAT */
+ YYSYMBOL_GET_SYM = 467, /* GET_SYM */
+ YYSYMBOL_GLOBAL_SYM = 468, /* GLOBAL_SYM */
+ YYSYMBOL_GRANTS = 469, /* GRANTS */
+ YYSYMBOL_HANDLER_SYM = 470, /* HANDLER_SYM */
+ YYSYMBOL_HARD_SYM = 471, /* HARD_SYM */
+ YYSYMBOL_HASH_SYM = 472, /* HASH_SYM */
+ YYSYMBOL_HELP_SYM = 473, /* HELP_SYM */
+ YYSYMBOL_HIGH_PRIORITY = 474, /* HIGH_PRIORITY */
+ YYSYMBOL_HISTORY_SYM = 475, /* HISTORY_SYM */
+ YYSYMBOL_HOST_SYM = 476, /* HOST_SYM */
+ YYSYMBOL_HOSTS_SYM = 477, /* HOSTS_SYM */
+ YYSYMBOL_HOUR_SYM = 478, /* HOUR_SYM */
+ YYSYMBOL_ID_SYM = 479, /* ID_SYM */
+ YYSYMBOL_IDENTIFIED_SYM = 480, /* IDENTIFIED_SYM */
+ YYSYMBOL_IGNORE_SERVER_IDS_SYM = 481, /* IGNORE_SERVER_IDS_SYM */
+ YYSYMBOL_IMMEDIATE_SYM = 482, /* IMMEDIATE_SYM */
+ YYSYMBOL_IMPORT = 483, /* IMPORT */
+ YYSYMBOL_INCREMENT_SYM = 484, /* INCREMENT_SYM */
+ YYSYMBOL_INDEXES = 485, /* INDEXES */
+ YYSYMBOL_INITIAL_SIZE_SYM = 486, /* INITIAL_SIZE_SYM */
+ YYSYMBOL_INSERT_METHOD = 487, /* INSERT_METHOD */
+ YYSYMBOL_INSTALL_SYM = 488, /* INSTALL_SYM */
+ YYSYMBOL_INVOKER_SYM = 489, /* INVOKER_SYM */
+ YYSYMBOL_IO_SYM = 490, /* IO_SYM */
+ YYSYMBOL_IPC_SYM = 491, /* IPC_SYM */
+ YYSYMBOL_ISOLATION = 492, /* ISOLATION */
+ YYSYMBOL_ISOPEN_SYM = 493, /* ISOPEN_SYM */
+ YYSYMBOL_ISSUER_SYM = 494, /* ISSUER_SYM */
+ YYSYMBOL_INVISIBLE_SYM = 495, /* INVISIBLE_SYM */
+ YYSYMBOL_JSON_SYM = 496, /* JSON_SYM */
+ YYSYMBOL_KEY_BLOCK_SIZE = 497, /* KEY_BLOCK_SIZE */
+ YYSYMBOL_LANGUAGE_SYM = 498, /* LANGUAGE_SYM */
+ YYSYMBOL_LAST_SYM = 499, /* LAST_SYM */
+ YYSYMBOL_LAST_VALUE = 500, /* LAST_VALUE */
+ YYSYMBOL_LASTVAL_SYM = 501, /* LASTVAL_SYM */
+ YYSYMBOL_LEAVES = 502, /* LEAVES */
+ YYSYMBOL_LESS_SYM = 503, /* LESS_SYM */
+ YYSYMBOL_LEVEL_SYM = 504, /* LEVEL_SYM */
+ YYSYMBOL_LIST_SYM = 505, /* LIST_SYM */
+ YYSYMBOL_LOCAL_SYM = 506, /* LOCAL_SYM */
+ YYSYMBOL_LOCKED_SYM = 507, /* LOCKED_SYM */
+ YYSYMBOL_LOCKS_SYM = 508, /* LOCKS_SYM */
+ YYSYMBOL_LOGFILE_SYM = 509, /* LOGFILE_SYM */
+ YYSYMBOL_LOGS_SYM = 510, /* LOGS_SYM */
+ YYSYMBOL_MASTER_CONNECT_RETRY_SYM = 511, /* MASTER_CONNECT_RETRY_SYM */
+ YYSYMBOL_MASTER_DELAY_SYM = 512, /* MASTER_DELAY_SYM */
+ YYSYMBOL_MASTER_GTID_POS_SYM = 513, /* MASTER_GTID_POS_SYM */
+ YYSYMBOL_MASTER_HOST_SYM = 514, /* MASTER_HOST_SYM */
+ YYSYMBOL_MASTER_LOG_FILE_SYM = 515, /* MASTER_LOG_FILE_SYM */
+ YYSYMBOL_MASTER_LOG_POS_SYM = 516, /* MASTER_LOG_POS_SYM */
+ YYSYMBOL_MASTER_PASSWORD_SYM = 517, /* MASTER_PASSWORD_SYM */
+ YYSYMBOL_MASTER_PORT_SYM = 518, /* MASTER_PORT_SYM */
+ YYSYMBOL_MASTER_SERVER_ID_SYM = 519, /* MASTER_SERVER_ID_SYM */
+ YYSYMBOL_MASTER_SSL_CAPATH_SYM = 520, /* MASTER_SSL_CAPATH_SYM */
+ YYSYMBOL_MASTER_SSL_CA_SYM = 521, /* MASTER_SSL_CA_SYM */
+ YYSYMBOL_MASTER_SSL_CERT_SYM = 522, /* MASTER_SSL_CERT_SYM */
+ YYSYMBOL_MASTER_SSL_CIPHER_SYM = 523, /* MASTER_SSL_CIPHER_SYM */
+ YYSYMBOL_MASTER_SSL_CRL_SYM = 524, /* MASTER_SSL_CRL_SYM */
+ YYSYMBOL_MASTER_SSL_CRLPATH_SYM = 525, /* MASTER_SSL_CRLPATH_SYM */
+ YYSYMBOL_MASTER_SSL_KEY_SYM = 526, /* MASTER_SSL_KEY_SYM */
+ YYSYMBOL_MASTER_SSL_SYM = 527, /* MASTER_SSL_SYM */
+ YYSYMBOL_MASTER_SYM = 528, /* MASTER_SYM */
+ YYSYMBOL_MASTER_USER_SYM = 529, /* MASTER_USER_SYM */
+ YYSYMBOL_MASTER_USE_GTID_SYM = 530, /* MASTER_USE_GTID_SYM */
+ YYSYMBOL_MASTER_HEARTBEAT_PERIOD_SYM = 531, /* MASTER_HEARTBEAT_PERIOD_SYM */
+ YYSYMBOL_MASTER_DEMOTE_TO_SLAVE_SYM = 532, /* MASTER_DEMOTE_TO_SLAVE_SYM */
+ YYSYMBOL_MAX_CONNECTIONS_PER_HOUR = 533, /* MAX_CONNECTIONS_PER_HOUR */
+ YYSYMBOL_MAX_QUERIES_PER_HOUR = 534, /* MAX_QUERIES_PER_HOUR */
+ YYSYMBOL_MAX_ROWS = 535, /* MAX_ROWS */
+ YYSYMBOL_MAX_SIZE_SYM = 536, /* MAX_SIZE_SYM */
+ YYSYMBOL_MAX_UPDATES_PER_HOUR = 537, /* MAX_UPDATES_PER_HOUR */
+ YYSYMBOL_MAX_STATEMENT_TIME_SYM = 538, /* MAX_STATEMENT_TIME_SYM */
+ YYSYMBOL_MAX_USER_CONNECTIONS_SYM = 539, /* MAX_USER_CONNECTIONS_SYM */
+ YYSYMBOL_MEDIUM_SYM = 540, /* MEDIUM_SYM */
+ YYSYMBOL_MEMORY_SYM = 541, /* MEMORY_SYM */
+ YYSYMBOL_MERGE_SYM = 542, /* MERGE_SYM */
+ YYSYMBOL_MESSAGE_TEXT_SYM = 543, /* MESSAGE_TEXT_SYM */
+ YYSYMBOL_MICROSECOND_SYM = 544, /* MICROSECOND_SYM */
+ YYSYMBOL_MIGRATE_SYM = 545, /* MIGRATE_SYM */
+ YYSYMBOL_MINUTE_SYM = 546, /* MINUTE_SYM */
+ YYSYMBOL_MINVALUE_SYM = 547, /* MINVALUE_SYM */
+ YYSYMBOL_MIN_ROWS = 548, /* MIN_ROWS */
+ YYSYMBOL_MODE_SYM = 549, /* MODE_SYM */
+ YYSYMBOL_MODIFY_SYM = 550, /* MODIFY_SYM */
+ YYSYMBOL_MONITOR_SYM = 551, /* MONITOR_SYM */
+ YYSYMBOL_MONTH_SYM = 552, /* MONTH_SYM */
+ YYSYMBOL_MUTEX_SYM = 553, /* MUTEX_SYM */
+ YYSYMBOL_MYSQL_SYM = 554, /* MYSQL_SYM */
+ YYSYMBOL_MYSQL_ERRNO_SYM = 555, /* MYSQL_ERRNO_SYM */
+ YYSYMBOL_NAMES_SYM = 556, /* NAMES_SYM */
+ YYSYMBOL_NAME_SYM = 557, /* NAME_SYM */
+ YYSYMBOL_NATIONAL_SYM = 558, /* NATIONAL_SYM */
+ YYSYMBOL_NCHAR_SYM = 559, /* NCHAR_SYM */
+ YYSYMBOL_NEVER_SYM = 560, /* NEVER_SYM */
+ YYSYMBOL_NEXT_SYM = 561, /* NEXT_SYM */
+ YYSYMBOL_NEXTVAL_SYM = 562, /* NEXTVAL_SYM */
+ YYSYMBOL_NOCACHE_SYM = 563, /* NOCACHE_SYM */
+ YYSYMBOL_NOCYCLE_SYM = 564, /* NOCYCLE_SYM */
+ YYSYMBOL_NODEGROUP_SYM = 565, /* NODEGROUP_SYM */
+ YYSYMBOL_NONE_SYM = 566, /* NONE_SYM */
+ YYSYMBOL_NOTFOUND_SYM = 567, /* NOTFOUND_SYM */
+ YYSYMBOL_NO_SYM = 568, /* NO_SYM */
+ YYSYMBOL_NOMAXVALUE_SYM = 569, /* NOMAXVALUE_SYM */
+ YYSYMBOL_NOMINVALUE_SYM = 570, /* NOMINVALUE_SYM */
+ YYSYMBOL_NO_WAIT_SYM = 571, /* NO_WAIT_SYM */
+ YYSYMBOL_NOWAIT_SYM = 572, /* NOWAIT_SYM */
+ YYSYMBOL_NUMBER_MARIADB_SYM = 573, /* NUMBER_MARIADB_SYM */
+ YYSYMBOL_NUMBER_ORACLE_SYM = 574, /* NUMBER_ORACLE_SYM */
+ YYSYMBOL_NVARCHAR_SYM = 575, /* NVARCHAR_SYM */
+ YYSYMBOL_OF_SYM = 576, /* OF_SYM */
+ YYSYMBOL_OFFSET_SYM = 577, /* OFFSET_SYM */
+ YYSYMBOL_OLD_PASSWORD_SYM = 578, /* OLD_PASSWORD_SYM */
+ YYSYMBOL_ONE_SYM = 579, /* ONE_SYM */
+ YYSYMBOL_ONLY_SYM = 580, /* ONLY_SYM */
+ YYSYMBOL_ONLINE_SYM = 581, /* ONLINE_SYM */
+ YYSYMBOL_OPEN_SYM = 582, /* OPEN_SYM */
+ YYSYMBOL_OPTIONS_SYM = 583, /* OPTIONS_SYM */
+ YYSYMBOL_OPTION = 584, /* OPTION */
+ YYSYMBOL_OVERLAPS_SYM = 585, /* OVERLAPS_SYM */
+ YYSYMBOL_OWNER_SYM = 586, /* OWNER_SYM */
+ YYSYMBOL_PACK_KEYS_SYM = 587, /* PACK_KEYS_SYM */
+ YYSYMBOL_PAGE_SYM = 588, /* PAGE_SYM */
+ YYSYMBOL_PARSER_SYM = 589, /* PARSER_SYM */
+ YYSYMBOL_PARTIAL = 590, /* PARTIAL */
+ YYSYMBOL_PARTITIONS_SYM = 591, /* PARTITIONS_SYM */
+ YYSYMBOL_PARTITIONING_SYM = 592, /* PARTITIONING_SYM */
+ YYSYMBOL_PASSWORD_SYM = 593, /* PASSWORD_SYM */
+ YYSYMBOL_PERIOD_SYM = 594, /* PERIOD_SYM */
+ YYSYMBOL_PERSISTENT_SYM = 595, /* PERSISTENT_SYM */
+ YYSYMBOL_PHASE_SYM = 596, /* PHASE_SYM */
+ YYSYMBOL_PLUGINS_SYM = 597, /* PLUGINS_SYM */
+ YYSYMBOL_PLUGIN_SYM = 598, /* PLUGIN_SYM */
+ YYSYMBOL_PORT_SYM = 599, /* PORT_SYM */
+ YYSYMBOL_PRECEDES_SYM = 600, /* PRECEDES_SYM */
+ YYSYMBOL_PRECEDING_SYM = 601, /* PRECEDING_SYM */
+ YYSYMBOL_PREPARE_SYM = 602, /* PREPARE_SYM */
+ YYSYMBOL_PRESERVE_SYM = 603, /* PRESERVE_SYM */
+ YYSYMBOL_PREV_SYM = 604, /* PREV_SYM */
+ YYSYMBOL_PREVIOUS_SYM = 605, /* PREVIOUS_SYM */
+ YYSYMBOL_PRIVILEGES = 606, /* PRIVILEGES */
+ YYSYMBOL_PROCESS = 607, /* PROCESS */
+ YYSYMBOL_PROCESSLIST_SYM = 608, /* PROCESSLIST_SYM */
+ YYSYMBOL_PROFILE_SYM = 609, /* PROFILE_SYM */
+ YYSYMBOL_PROFILES_SYM = 610, /* PROFILES_SYM */
+ YYSYMBOL_PROXY_SYM = 611, /* PROXY_SYM */
+ YYSYMBOL_QUARTER_SYM = 612, /* QUARTER_SYM */
+ YYSYMBOL_QUERY_SYM = 613, /* QUERY_SYM */
+ YYSYMBOL_QUICK = 614, /* QUICK */
+ YYSYMBOL_RAW_MARIADB_SYM = 615, /* RAW_MARIADB_SYM */
+ YYSYMBOL_RAW_ORACLE_SYM = 616, /* RAW_ORACLE_SYM */
+ YYSYMBOL_READ_ONLY_SYM = 617, /* READ_ONLY_SYM */
+ YYSYMBOL_REBUILD_SYM = 618, /* REBUILD_SYM */
+ YYSYMBOL_RECOVER_SYM = 619, /* RECOVER_SYM */
+ YYSYMBOL_REDOFILE_SYM = 620, /* REDOFILE_SYM */
+ YYSYMBOL_REDO_BUFFER_SIZE_SYM = 621, /* REDO_BUFFER_SIZE_SYM */
+ YYSYMBOL_REDUNDANT_SYM = 622, /* REDUNDANT_SYM */
+ YYSYMBOL_RELAY = 623, /* RELAY */
+ YYSYMBOL_RELAYLOG_SYM = 624, /* RELAYLOG_SYM */
+ YYSYMBOL_RELAY_LOG_FILE_SYM = 625, /* RELAY_LOG_FILE_SYM */
+ YYSYMBOL_RELAY_LOG_POS_SYM = 626, /* RELAY_LOG_POS_SYM */
+ YYSYMBOL_RELAY_THREAD = 627, /* RELAY_THREAD */
+ YYSYMBOL_RELOAD = 628, /* RELOAD */
+ YYSYMBOL_REMOVE_SYM = 629, /* REMOVE_SYM */
+ YYSYMBOL_REORGANIZE_SYM = 630, /* REORGANIZE_SYM */
+ YYSYMBOL_REPAIR = 631, /* REPAIR */
+ YYSYMBOL_REPEATABLE_SYM = 632, /* REPEATABLE_SYM */
+ YYSYMBOL_REPLAY_SYM = 633, /* REPLAY_SYM */
+ YYSYMBOL_REPLICATION = 634, /* REPLICATION */
+ YYSYMBOL_RESET_SYM = 635, /* RESET_SYM */
+ YYSYMBOL_RESTART_SYM = 636, /* RESTART_SYM */
+ YYSYMBOL_RESOURCES = 637, /* RESOURCES */
+ YYSYMBOL_RESTORE_SYM = 638, /* RESTORE_SYM */
+ YYSYMBOL_RESUME_SYM = 639, /* RESUME_SYM */
+ YYSYMBOL_RETURNED_SQLSTATE_SYM = 640, /* RETURNED_SQLSTATE_SYM */
+ YYSYMBOL_RETURNS_SYM = 641, /* RETURNS_SYM */
+ YYSYMBOL_REUSE_SYM = 642, /* REUSE_SYM */
+ YYSYMBOL_REVERSE_SYM = 643, /* REVERSE_SYM */
+ YYSYMBOL_ROLE_SYM = 644, /* ROLE_SYM */
+ YYSYMBOL_ROLLBACK_SYM = 645, /* ROLLBACK_SYM */
+ YYSYMBOL_ROLLUP_SYM = 646, /* ROLLUP_SYM */
+ YYSYMBOL_ROUTINE_SYM = 647, /* ROUTINE_SYM */
+ YYSYMBOL_ROWCOUNT_SYM = 648, /* ROWCOUNT_SYM */
+ YYSYMBOL_ROW_SYM = 649, /* ROW_SYM */
+ YYSYMBOL_ROW_COUNT_SYM = 650, /* ROW_COUNT_SYM */
+ YYSYMBOL_ROW_FORMAT_SYM = 651, /* ROW_FORMAT_SYM */
+ YYSYMBOL_RTREE_SYM = 652, /* RTREE_SYM */
+ YYSYMBOL_SAVEPOINT_SYM = 653, /* SAVEPOINT_SYM */
+ YYSYMBOL_SCHEDULE_SYM = 654, /* SCHEDULE_SYM */
+ YYSYMBOL_SCHEMA_NAME_SYM = 655, /* SCHEMA_NAME_SYM */
+ YYSYMBOL_SECOND_SYM = 656, /* SECOND_SYM */
+ YYSYMBOL_SECURITY_SYM = 657, /* SECURITY_SYM */
+ YYSYMBOL_SEQUENCE_SYM = 658, /* SEQUENCE_SYM */
+ YYSYMBOL_SERIALIZABLE_SYM = 659, /* SERIALIZABLE_SYM */
+ YYSYMBOL_SERIAL_SYM = 660, /* SERIAL_SYM */
+ YYSYMBOL_SESSION_SYM = 661, /* SESSION_SYM */
+ YYSYMBOL_SERVER_SYM = 662, /* SERVER_SYM */
+ YYSYMBOL_SETVAL_SYM = 663, /* SETVAL_SYM */
+ YYSYMBOL_SHARE_SYM = 664, /* SHARE_SYM */
+ YYSYMBOL_SHUTDOWN = 665, /* SHUTDOWN */
+ YYSYMBOL_SIGNED_SYM = 666, /* SIGNED_SYM */
+ YYSYMBOL_SIMPLE_SYM = 667, /* SIMPLE_SYM */
+ YYSYMBOL_SKIP_SYM = 668, /* SKIP_SYM */
+ YYSYMBOL_SLAVE = 669, /* SLAVE */
+ YYSYMBOL_SLAVES = 670, /* SLAVES */
+ YYSYMBOL_SLAVE_POS_SYM = 671, /* SLAVE_POS_SYM */
+ YYSYMBOL_SLOW = 672, /* SLOW */
+ YYSYMBOL_SNAPSHOT_SYM = 673, /* SNAPSHOT_SYM */
+ YYSYMBOL_SOCKET_SYM = 674, /* SOCKET_SYM */
+ YYSYMBOL_SOFT_SYM = 675, /* SOFT_SYM */
+ YYSYMBOL_SONAME_SYM = 676, /* SONAME_SYM */
+ YYSYMBOL_SOUNDS_SYM = 677, /* SOUNDS_SYM */
+ YYSYMBOL_SOURCE_SYM = 678, /* SOURCE_SYM */
+ YYSYMBOL_SQL_BUFFER_RESULT = 679, /* SQL_BUFFER_RESULT */
+ YYSYMBOL_SQL_CACHE_SYM = 680, /* SQL_CACHE_SYM */
+ YYSYMBOL_SQL_CALC_FOUND_ROWS = 681, /* SQL_CALC_FOUND_ROWS */
+ YYSYMBOL_SQL_NO_CACHE_SYM = 682, /* SQL_NO_CACHE_SYM */
+ YYSYMBOL_SQL_THREAD = 683, /* SQL_THREAD */
+ YYSYMBOL_STAGE_SYM = 684, /* STAGE_SYM */
+ YYSYMBOL_STARTS_SYM = 685, /* STARTS_SYM */
+ YYSYMBOL_START_SYM = 686, /* START_SYM */
+ YYSYMBOL_STATEMENT_SYM = 687, /* STATEMENT_SYM */
+ YYSYMBOL_STATUS_SYM = 688, /* STATUS_SYM */
+ YYSYMBOL_STOP_SYM = 689, /* STOP_SYM */
+ YYSYMBOL_STORAGE_SYM = 690, /* STORAGE_SYM */
+ YYSYMBOL_STORED_SYM = 691, /* STORED_SYM */
+ YYSYMBOL_STRING_SYM = 692, /* STRING_SYM */
+ YYSYMBOL_SUBCLASS_ORIGIN_SYM = 693, /* SUBCLASS_ORIGIN_SYM */
+ YYSYMBOL_SUBDATE_SYM = 694, /* SUBDATE_SYM */
+ YYSYMBOL_SUBJECT_SYM = 695, /* SUBJECT_SYM */
+ YYSYMBOL_SUBPARTITIONS_SYM = 696, /* SUBPARTITIONS_SYM */
+ YYSYMBOL_SUBPARTITION_SYM = 697, /* SUBPARTITION_SYM */
+ YYSYMBOL_SUPER_SYM = 698, /* SUPER_SYM */
+ YYSYMBOL_SUSPEND_SYM = 699, /* SUSPEND_SYM */
+ YYSYMBOL_SWAPS_SYM = 700, /* SWAPS_SYM */
+ YYSYMBOL_SWITCHES_SYM = 701, /* SWITCHES_SYM */
+ YYSYMBOL_SYSTEM = 702, /* SYSTEM */
+ YYSYMBOL_SYSTEM_TIME_SYM = 703, /* SYSTEM_TIME_SYM */
+ YYSYMBOL_TABLES = 704, /* TABLES */
+ YYSYMBOL_TABLESPACE = 705, /* TABLESPACE */
+ YYSYMBOL_TABLE_CHECKSUM_SYM = 706, /* TABLE_CHECKSUM_SYM */
+ YYSYMBOL_TABLE_NAME_SYM = 707, /* TABLE_NAME_SYM */
+ YYSYMBOL_TEMPORARY = 708, /* TEMPORARY */
+ YYSYMBOL_TEMPTABLE_SYM = 709, /* TEMPTABLE_SYM */
+ YYSYMBOL_TEXT_SYM = 710, /* TEXT_SYM */
+ YYSYMBOL_THAN_SYM = 711, /* THAN_SYM */
+ YYSYMBOL_TIES_SYM = 712, /* TIES_SYM */
+ YYSYMBOL_TIMESTAMP = 713, /* TIMESTAMP */
+ YYSYMBOL_TIMESTAMP_ADD = 714, /* TIMESTAMP_ADD */
+ YYSYMBOL_TIMESTAMP_DIFF = 715, /* TIMESTAMP_DIFF */
+ YYSYMBOL_TIME_SYM = 716, /* TIME_SYM */
+ YYSYMBOL_TRANSACTION_SYM = 717, /* TRANSACTION_SYM */
+ YYSYMBOL_TRANSACTIONAL_SYM = 718, /* TRANSACTIONAL_SYM */
+ YYSYMBOL_THREADS_SYM = 719, /* THREADS_SYM */
+ YYSYMBOL_TRIGGERS_SYM = 720, /* TRIGGERS_SYM */
+ YYSYMBOL_TRIM_ORACLE = 721, /* TRIM_ORACLE */
+ YYSYMBOL_TRUNCATE_SYM = 722, /* TRUNCATE_SYM */
+ YYSYMBOL_TYPE_SYM = 723, /* TYPE_SYM */
+ YYSYMBOL_UDF_RETURNS_SYM = 724, /* UDF_RETURNS_SYM */
+ YYSYMBOL_UNBOUNDED_SYM = 725, /* UNBOUNDED_SYM */
+ YYSYMBOL_UNCOMMITTED_SYM = 726, /* UNCOMMITTED_SYM */
+ YYSYMBOL_UNDEFINED_SYM = 727, /* UNDEFINED_SYM */
+ YYSYMBOL_UNDOFILE_SYM = 728, /* UNDOFILE_SYM */
+ YYSYMBOL_UNDO_BUFFER_SIZE_SYM = 729, /* UNDO_BUFFER_SIZE_SYM */
+ YYSYMBOL_UNICODE_SYM = 730, /* UNICODE_SYM */
+ YYSYMBOL_UNINSTALL_SYM = 731, /* UNINSTALL_SYM */
+ YYSYMBOL_UNKNOWN_SYM = 732, /* UNKNOWN_SYM */
+ YYSYMBOL_UNTIL_SYM = 733, /* UNTIL_SYM */
+ YYSYMBOL_UPGRADE_SYM = 734, /* UPGRADE_SYM */
+ YYSYMBOL_USER_SYM = 735, /* USER_SYM */
+ YYSYMBOL_USE_FRM = 736, /* USE_FRM */
+ YYSYMBOL_VALUE_SYM = 737, /* VALUE_SYM */
+ YYSYMBOL_VARCHAR2_MARIADB_SYM = 738, /* VARCHAR2_MARIADB_SYM */
+ YYSYMBOL_VARCHAR2_ORACLE_SYM = 739, /* VARCHAR2_ORACLE_SYM */
+ YYSYMBOL_VARIABLES = 740, /* VARIABLES */
+ YYSYMBOL_VERSIONING_SYM = 741, /* VERSIONING_SYM */
+ YYSYMBOL_VIA_SYM = 742, /* VIA_SYM */
+ YYSYMBOL_VIEW_SYM = 743, /* VIEW_SYM */
+ YYSYMBOL_VISIBLE_SYM = 744, /* VISIBLE_SYM */
+ YYSYMBOL_VIRTUAL_SYM = 745, /* VIRTUAL_SYM */
+ YYSYMBOL_WAIT_SYM = 746, /* WAIT_SYM */
+ YYSYMBOL_WARNINGS = 747, /* WARNINGS */
+ YYSYMBOL_WEEK_SYM = 748, /* WEEK_SYM */
+ YYSYMBOL_WEIGHT_STRING_SYM = 749, /* WEIGHT_STRING_SYM */
+ YYSYMBOL_WINDOW_SYM = 750, /* WINDOW_SYM */
+ YYSYMBOL_WITHIN = 751, /* WITHIN */
+ YYSYMBOL_WITHOUT = 752, /* WITHOUT */
+ YYSYMBOL_WORK_SYM = 753, /* WORK_SYM */
+ YYSYMBOL_WRAPPER_SYM = 754, /* WRAPPER_SYM */
+ YYSYMBOL_WRITE_SYM = 755, /* WRITE_SYM */
+ YYSYMBOL_X509_SYM = 756, /* X509_SYM */
+ YYSYMBOL_XA_SYM = 757, /* XA_SYM */
+ YYSYMBOL_XML_SYM = 758, /* XML_SYM */
+ YYSYMBOL_YEAR_SYM = 759, /* YEAR_SYM */
+ YYSYMBOL_CONDITIONLESS_JOIN = 760, /* CONDITIONLESS_JOIN */
+ YYSYMBOL_ON_SYM = 761, /* ON_SYM */
+ YYSYMBOL_PREC_BELOW_NOT = 762, /* PREC_BELOW_NOT */
+ YYSYMBOL_763_ = 763, /* '=' */
+ YYSYMBOL_764_ = 764, /* '>' */
+ YYSYMBOL_765_ = 765, /* '<' */
+ YYSYMBOL_766_ = 766, /* '|' */
+ YYSYMBOL_767_ = 767, /* '&' */
+ YYSYMBOL_768_ = 768, /* '-' */
+ YYSYMBOL_769_ = 769, /* '+' */
+ YYSYMBOL_770_ = 770, /* '*' */
+ YYSYMBOL_771_ = 771, /* '/' */
+ YYSYMBOL_772_ = 772, /* '%' */
+ YYSYMBOL_773_ = 773, /* '^' */
+ YYSYMBOL_774_ = 774, /* '~' */
+ YYSYMBOL_SUBQUERY_AS_EXPR = 775, /* SUBQUERY_AS_EXPR */
+ YYSYMBOL_PREC_BELOW_IDENTIFIER_OPT_SPECIAL_CASE = 776, /* PREC_BELOW_IDENTIFIER_OPT_SPECIAL_CASE */
+ YYSYMBOL_USER = 777, /* USER */
+ YYSYMBOL_PREC_BELOW_CONTRACTION_TOKEN2 = 778, /* PREC_BELOW_CONTRACTION_TOKEN2 */
+ YYSYMBOL_779_ = 779, /* '(' */
+ YYSYMBOL_780_ = 780, /* ')' */
+ YYSYMBOL_EMPTY_FROM_CLAUSE = 781, /* EMPTY_FROM_CLAUSE */
+ YYSYMBOL_782_ = 782, /* ',' */
+ YYSYMBOL_783_ = 783, /* '!' */
+ YYSYMBOL_784_ = 784, /* '{' */
+ YYSYMBOL_785_ = 785, /* '}' */
+ YYSYMBOL_786_ = 786, /* ';' */
+ YYSYMBOL_787_ = 787, /* '.' */
+ YYSYMBOL_788_ = 788, /* ':' */
+ YYSYMBOL_YYACCEPT = 789, /* $accept */
+ YYSYMBOL_query = 790, /* query */
+ YYSYMBOL_791_1 = 791, /* $@1 */
+ YYSYMBOL_opt_end_of_input = 792, /* opt_end_of_input */
+ YYSYMBOL_directly_executable_statement = 793, /* directly_executable_statement */
+ YYSYMBOL_verb_clause = 794, /* verb_clause */
+ YYSYMBOL_deallocate = 795, /* deallocate */
+ YYSYMBOL_deallocate_or_drop = 796, /* deallocate_or_drop */
+ YYSYMBOL_prepare = 797, /* prepare */
+ YYSYMBOL_798_2 = 798, /* $@2 */
+ YYSYMBOL_execute = 799, /* execute */
+ YYSYMBOL_800_3 = 800, /* $@3 */
+ YYSYMBOL_801_4 = 801, /* $@4 */
+ YYSYMBOL_execute_using = 802, /* execute_using */
+ YYSYMBOL_803_5 = 803, /* $@5 */
+ YYSYMBOL_execute_params = 804, /* execute_params */
+ YYSYMBOL_help = 805, /* help */
+ YYSYMBOL_806_6 = 806, /* $@6 */
+ YYSYMBOL_change = 807, /* change */
+ YYSYMBOL_808_7 = 808, /* $@7 */
+ YYSYMBOL_master_defs = 809, /* master_defs */
+ YYSYMBOL_master_def = 810, /* master_def */
+ YYSYMBOL_ignore_server_id_list = 811, /* ignore_server_id_list */
+ YYSYMBOL_ignore_server_id = 812, /* ignore_server_id */
+ YYSYMBOL_do_domain_id_list = 813, /* do_domain_id_list */
+ YYSYMBOL_do_domain_id = 814, /* do_domain_id */
+ YYSYMBOL_ignore_domain_id_list = 815, /* ignore_domain_id_list */
+ YYSYMBOL_ignore_domain_id = 816, /* ignore_domain_id */
+ YYSYMBOL_master_file_def = 817, /* master_file_def */
+ YYSYMBOL_optional_connection_name = 818, /* optional_connection_name */
+ YYSYMBOL_connection_name = 819, /* connection_name */
+ YYSYMBOL_optional_for_channel = 820, /* optional_for_channel */
+ YYSYMBOL_for_channel = 821, /* for_channel */
+ YYSYMBOL_create = 822, /* create */
+ YYSYMBOL_823_8 = 823, /* $@8 */
+ YYSYMBOL_824_9 = 824, /* $@9 */
+ YYSYMBOL_825_10 = 825, /* $@10 */
+ YYSYMBOL_826_11 = 826, /* $@11 */
+ YYSYMBOL_827_12 = 827, /* $@12 */
+ YYSYMBOL_828_13 = 828, /* $@13 */
+ YYSYMBOL_829_14 = 829, /* $@14 */
+ YYSYMBOL_830_15 = 830, /* $@15 */
+ YYSYMBOL_831_16 = 831, /* $@16 */
+ YYSYMBOL_832_17 = 832, /* $@17 */
+ YYSYMBOL_833_18 = 833, /* $@18 */
+ YYSYMBOL_834_19 = 834, /* $@19 */
+ YYSYMBOL_835_20 = 835, /* $@20 */
+ YYSYMBOL_836_21 = 836, /* $@21 */
+ YYSYMBOL_837_22 = 837, /* $@22 */
+ YYSYMBOL_838_23 = 838, /* $@23 */
+ YYSYMBOL_839_24 = 839, /* $@24 */
+ YYSYMBOL_opt_sequence = 840, /* opt_sequence */
+ YYSYMBOL_sequence_defs = 841, /* sequence_defs */
+ YYSYMBOL_sequence_def = 842, /* sequence_def */
+ YYSYMBOL_force_lookahead = 843, /* force_lookahead */
+ YYSYMBOL_server_def = 844, /* server_def */
+ YYSYMBOL_845_25 = 845, /* $@25 */
+ YYSYMBOL_server_options_list = 846, /* server_options_list */
+ YYSYMBOL_server_option = 847, /* server_option */
+ YYSYMBOL_event_tail = 848, /* event_tail */
+ YYSYMBOL_849_26 = 849, /* $@26 */
+ YYSYMBOL_ev_schedule_time = 850, /* ev_schedule_time */
+ YYSYMBOL_851_27 = 851, /* $@27 */
+ YYSYMBOL_opt_ev_status = 852, /* opt_ev_status */
+ YYSYMBOL_ev_starts = 853, /* ev_starts */
+ YYSYMBOL_ev_ends = 854, /* ev_ends */
+ YYSYMBOL_opt_ev_on_completion = 855, /* opt_ev_on_completion */
+ YYSYMBOL_ev_on_completion = 856, /* ev_on_completion */
+ YYSYMBOL_opt_ev_comment = 857, /* opt_ev_comment */
+ YYSYMBOL_ev_sql_stmt = 858, /* ev_sql_stmt */
+ YYSYMBOL_859_28 = 859, /* $@28 */
+ YYSYMBOL_clear_privileges = 860, /* clear_privileges */
+ YYSYMBOL_opt_aggregate = 861, /* opt_aggregate */
+ YYSYMBOL_sp_handler = 862, /* sp_handler */
+ YYSYMBOL_sp_name = 863, /* sp_name */
+ YYSYMBOL_sp_a_chistics = 864, /* sp_a_chistics */
+ YYSYMBOL_sp_c_chistics = 865, /* sp_c_chistics */
+ YYSYMBOL_sp_chistic = 866, /* sp_chistic */
+ YYSYMBOL_sp_c_chistic = 867, /* sp_c_chistic */
+ YYSYMBOL_sp_suid = 868, /* sp_suid */
+ YYSYMBOL_call = 869, /* call */
+ YYSYMBOL_870_29 = 870, /* $@29 */
+ YYSYMBOL_871_30 = 871, /* $@30 */
+ YYSYMBOL_872_31 = 872, /* $@31 */
+ YYSYMBOL_opt_sp_cparam_list = 873, /* opt_sp_cparam_list */
+ YYSYMBOL_opt_sp_cparams = 874, /* opt_sp_cparams */
+ YYSYMBOL_sp_cparams = 875, /* sp_cparams */
+ YYSYMBOL_sp_fdparam_list = 876, /* sp_fdparam_list */
+ YYSYMBOL_877_32 = 877, /* $@32 */
+ YYSYMBOL_sp_fdparams = 878, /* sp_fdparams */
+ YYSYMBOL_sp_param_name = 879, /* sp_param_name */
+ YYSYMBOL_sp_pdparam_list = 880, /* sp_pdparam_list */
+ YYSYMBOL_sp_pdparams = 881, /* sp_pdparams */
+ YYSYMBOL_sp_parameter_type = 882, /* sp_parameter_type */
+ YYSYMBOL_sp_parenthesized_pdparam_list = 883, /* sp_parenthesized_pdparam_list */
+ YYSYMBOL_884_33 = 884, /* $@33 */
+ YYSYMBOL_sp_parenthesized_fdparam_list = 885, /* sp_parenthesized_fdparam_list */
+ YYSYMBOL_sp_proc_stmts = 886, /* sp_proc_stmts */
+ YYSYMBOL_sp_proc_stmts1 = 887, /* sp_proc_stmts1 */
+ YYSYMBOL_optionally_qualified_column_ident = 888, /* optionally_qualified_column_ident */
+ YYSYMBOL_row_field_definition = 889, /* row_field_definition */
+ YYSYMBOL_row_field_definition_list = 890, /* row_field_definition_list */
+ YYSYMBOL_row_type_body = 891, /* row_type_body */
+ YYSYMBOL_sp_decl_idents_init_vars = 892, /* sp_decl_idents_init_vars */
+ YYSYMBOL_sp_decl_variable_list = 893, /* sp_decl_variable_list */
+ YYSYMBOL_894_34 = 894, /* $@34 */
+ YYSYMBOL_sp_decl_handler = 895, /* sp_decl_handler */
+ YYSYMBOL_896_35 = 896, /* $@35 */
+ YYSYMBOL_opt_parenthesized_cursor_formal_parameters = 897, /* opt_parenthesized_cursor_formal_parameters */
+ YYSYMBOL_sp_cursor_stmt_lex = 898, /* sp_cursor_stmt_lex */
+ YYSYMBOL_sp_cursor_stmt = 899, /* sp_cursor_stmt */
+ YYSYMBOL_900_36 = 900, /* $@36 */
+ YYSYMBOL_sp_handler_type = 901, /* sp_handler_type */
+ YYSYMBOL_sp_hcond_list = 902, /* sp_hcond_list */
+ YYSYMBOL_sp_hcond_element = 903, /* sp_hcond_element */
+ YYSYMBOL_sp_cond = 904, /* sp_cond */
+ YYSYMBOL_sqlstate = 905, /* sqlstate */
+ YYSYMBOL_opt_value = 906, /* opt_value */
+ YYSYMBOL_sp_hcond = 907, /* sp_hcond */
+ YYSYMBOL_raise_stmt_oracle = 908, /* raise_stmt_oracle */
+ YYSYMBOL_signal_stmt = 909, /* signal_stmt */
+ YYSYMBOL_signal_value = 910, /* signal_value */
+ YYSYMBOL_opt_signal_value = 911, /* opt_signal_value */
+ YYSYMBOL_opt_set_signal_information = 912, /* opt_set_signal_information */
+ YYSYMBOL_signal_information_item_list = 913, /* signal_information_item_list */
+ YYSYMBOL_signal_allowed_expr = 914, /* signal_allowed_expr */
+ YYSYMBOL_signal_condition_information_item_name = 915, /* signal_condition_information_item_name */
+ YYSYMBOL_resignal_stmt = 916, /* resignal_stmt */
+ YYSYMBOL_get_diagnostics = 917, /* get_diagnostics */
+ YYSYMBOL_which_area = 918, /* which_area */
+ YYSYMBOL_diagnostics_information = 919, /* diagnostics_information */
+ YYSYMBOL_statement_information = 920, /* statement_information */
+ YYSYMBOL_statement_information_item = 921, /* statement_information_item */
+ YYSYMBOL_simple_target_specification = 922, /* simple_target_specification */
+ YYSYMBOL_statement_information_item_name = 923, /* statement_information_item_name */
+ YYSYMBOL_condition_number = 924, /* condition_number */
+ YYSYMBOL_condition_information = 925, /* condition_information */
+ YYSYMBOL_condition_information_item = 926, /* condition_information_item */
+ YYSYMBOL_condition_information_item_name = 927, /* condition_information_item_name */
+ YYSYMBOL_sp_decl_ident = 928, /* sp_decl_ident */
+ YYSYMBOL_sp_decl_idents = 929, /* sp_decl_idents */
+ YYSYMBOL_sp_proc_stmt_if = 930, /* sp_proc_stmt_if */
+ YYSYMBOL_931_37 = 931, /* $@37 */
+ YYSYMBOL_sp_proc_stmt_statement = 932, /* sp_proc_stmt_statement */
+ YYSYMBOL_933_38 = 933, /* $@38 */
+ YYSYMBOL_RETURN_ALLMODES_SYM = 934, /* RETURN_ALLMODES_SYM */
+ YYSYMBOL_sp_proc_stmt_return = 935, /* sp_proc_stmt_return */
+ YYSYMBOL_936_39 = 936, /* $@39 */
+ YYSYMBOL_sp_proc_stmt_exit_oracle = 937, /* sp_proc_stmt_exit_oracle */
+ YYSYMBOL_938_40 = 938, /* $@40 */
+ YYSYMBOL_939_41 = 939, /* $@41 */
+ YYSYMBOL_sp_proc_stmt_continue_oracle = 940, /* sp_proc_stmt_continue_oracle */
+ YYSYMBOL_941_42 = 941, /* $@42 */
+ YYSYMBOL_942_43 = 942, /* $@43 */
+ YYSYMBOL_sp_proc_stmt_leave = 943, /* sp_proc_stmt_leave */
+ YYSYMBOL_sp_proc_stmt_iterate = 944, /* sp_proc_stmt_iterate */
+ YYSYMBOL_sp_proc_stmt_goto_oracle = 945, /* sp_proc_stmt_goto_oracle */
+ YYSYMBOL_expr_lex = 946, /* expr_lex */
+ YYSYMBOL_947_44 = 947, /* @44 */
+ YYSYMBOL_assignment_source_lex = 948, /* assignment_source_lex */
+ YYSYMBOL_assignment_source_expr = 949, /* assignment_source_expr */
+ YYSYMBOL_950_45 = 950, /* $@45 */
+ YYSYMBOL_for_loop_bound_expr = 951, /* for_loop_bound_expr */
+ YYSYMBOL_952_46 = 952, /* $@46 */
+ YYSYMBOL_cursor_actual_parameters = 953, /* cursor_actual_parameters */
+ YYSYMBOL_opt_parenthesized_cursor_actual_parameters = 954, /* opt_parenthesized_cursor_actual_parameters */
+ YYSYMBOL_sp_proc_stmt_with_cursor = 955, /* sp_proc_stmt_with_cursor */
+ YYSYMBOL_sp_proc_stmt_open = 956, /* sp_proc_stmt_open */
+ YYSYMBOL_sp_proc_stmt_fetch_head = 957, /* sp_proc_stmt_fetch_head */
+ YYSYMBOL_sp_proc_stmt_fetch = 958, /* sp_proc_stmt_fetch */
+ YYSYMBOL_sp_proc_stmt_close = 959, /* sp_proc_stmt_close */
+ YYSYMBOL_sp_fetch_list = 960, /* sp_fetch_list */
+ YYSYMBOL_sp_if = 961, /* sp_if */
+ YYSYMBOL_962_47 = 962, /* $@47 */
+ YYSYMBOL_963_48 = 963, /* $@48 */
+ YYSYMBOL_sp_elseifs = 964, /* sp_elseifs */
+ YYSYMBOL_case_stmt_specification = 965, /* case_stmt_specification */
+ YYSYMBOL_966_49 = 966, /* $@49 */
+ YYSYMBOL_case_stmt_body = 967, /* case_stmt_body */
+ YYSYMBOL_968_50 = 968, /* $@50 */
+ YYSYMBOL_simple_when_clause_list = 969, /* simple_when_clause_list */
+ YYSYMBOL_searched_when_clause_list = 970, /* searched_when_clause_list */
+ YYSYMBOL_simple_when_clause = 971, /* simple_when_clause */
+ YYSYMBOL_972_51 = 972, /* $@51 */
+ YYSYMBOL_searched_when_clause = 973, /* searched_when_clause */
+ YYSYMBOL_974_52 = 974, /* $@52 */
+ YYSYMBOL_else_clause_opt = 975, /* else_clause_opt */
+ YYSYMBOL_sp_opt_label = 976, /* sp_opt_label */
+ YYSYMBOL_opt_sp_for_loop_direction = 977, /* opt_sp_for_loop_direction */
+ YYSYMBOL_sp_for_loop_index_and_bounds = 978, /* sp_for_loop_index_and_bounds */
+ YYSYMBOL_sp_for_loop_bounds = 979, /* sp_for_loop_bounds */
+ YYSYMBOL_loop_body = 980, /* loop_body */
+ YYSYMBOL_repeat_body = 981, /* repeat_body */
+ YYSYMBOL_pop_sp_loop_label = 982, /* pop_sp_loop_label */
+ YYSYMBOL_sp_labeled_control = 983, /* sp_labeled_control */
+ YYSYMBOL_984_53 = 984, /* $@53 */
+ YYSYMBOL_985_54 = 985, /* $@54 */
+ YYSYMBOL_986_55 = 986, /* $@55 */
+ YYSYMBOL_987_56 = 987, /* $@56 */
+ YYSYMBOL_988_57 = 988, /* $@57 */
+ YYSYMBOL_989_58 = 989, /* $@58 */
+ YYSYMBOL_sp_unlabeled_control = 990, /* sp_unlabeled_control */
+ YYSYMBOL_991_59 = 991, /* $@59 */
+ YYSYMBOL_992_60 = 992, /* $@60 */
+ YYSYMBOL_993_61 = 993, /* $@61 */
+ YYSYMBOL_994_62 = 994, /* $@62 */
+ YYSYMBOL_995_63 = 995, /* $@63 */
+ YYSYMBOL_trg_action_time = 996, /* trg_action_time */
+ YYSYMBOL_trg_event = 997, /* trg_event */
+ YYSYMBOL_create_body = 998, /* create_body */
+ YYSYMBOL_999_64 = 999, /* $@64 */
+ YYSYMBOL_create_like = 1000, /* create_like */
+ YYSYMBOL_opt_create_select = 1001, /* opt_create_select */
+ YYSYMBOL_create_select_query_expression = 1002, /* create_select_query_expression */
+ YYSYMBOL_opt_create_partitioning = 1003, /* opt_create_partitioning */
+ YYSYMBOL_opt_partitioning = 1004, /* opt_partitioning */
+ YYSYMBOL_partitioning = 1005, /* partitioning */
+ YYSYMBOL_1006_65 = 1006, /* $@65 */
+ YYSYMBOL_have_partitioning = 1007, /* have_partitioning */
+ YYSYMBOL_partition_entry = 1008, /* partition_entry */
+ YYSYMBOL_1009_66 = 1009, /* $@66 */
+ YYSYMBOL_partition = 1010, /* partition */
+ YYSYMBOL_1011_67 = 1011, /* $@67 */
+ YYSYMBOL_part_type_def = 1012, /* part_type_def */
+ YYSYMBOL_1013_68 = 1013, /* $@68 */
+ YYSYMBOL_1014_69 = 1014, /* $@69 */
+ YYSYMBOL_1015_70 = 1015, /* $@70 */
+ YYSYMBOL_opt_linear = 1016, /* opt_linear */
+ YYSYMBOL_opt_key_algo = 1017, /* opt_key_algo */
+ YYSYMBOL_part_field_list = 1018, /* part_field_list */
+ YYSYMBOL_part_field_item_list = 1019, /* part_field_item_list */
+ YYSYMBOL_part_field_item = 1020, /* part_field_item */
+ YYSYMBOL_part_column_list = 1021, /* part_column_list */
+ YYSYMBOL_part_func = 1022, /* part_func */
+ YYSYMBOL_sub_part_func = 1023, /* sub_part_func */
+ YYSYMBOL_opt_num_parts = 1024, /* opt_num_parts */
+ YYSYMBOL_opt_sub_part = 1025, /* opt_sub_part */
+ YYSYMBOL_1026_71 = 1026, /* $@71 */
+ YYSYMBOL_1027_72 = 1027, /* $@72 */
+ YYSYMBOL_sub_part_field_list = 1028, /* sub_part_field_list */
+ YYSYMBOL_sub_part_field_item = 1029, /* sub_part_field_item */
+ YYSYMBOL_part_func_expr = 1030, /* part_func_expr */
+ YYSYMBOL_opt_num_subparts = 1031, /* opt_num_subparts */
+ YYSYMBOL_part_defs = 1032, /* part_defs */
+ YYSYMBOL_part_def_list = 1033, /* part_def_list */
+ YYSYMBOL_opt_partition = 1034, /* opt_partition */
+ YYSYMBOL_part_definition = 1035, /* part_definition */
+ YYSYMBOL_1036_73 = 1036, /* $@73 */
+ YYSYMBOL_part_name = 1037, /* part_name */
+ YYSYMBOL_opt_part_values = 1038, /* opt_part_values */
+ YYSYMBOL_1039_74 = 1039, /* $@74 */
+ YYSYMBOL_1040_75 = 1040, /* $@75 */
+ YYSYMBOL_part_func_max = 1041, /* part_func_max */
+ YYSYMBOL_part_values_in = 1042, /* part_values_in */
+ YYSYMBOL_part_value_list = 1043, /* part_value_list */
+ YYSYMBOL_part_value_item = 1044, /* part_value_item */
+ YYSYMBOL_1045_76 = 1045, /* $@76 */
+ YYSYMBOL_1046_77 = 1046, /* $@77 */
+ YYSYMBOL_part_value_item_list = 1047, /* part_value_item_list */
+ YYSYMBOL_part_value_expr_item = 1048, /* part_value_expr_item */
+ YYSYMBOL_opt_sub_partition = 1049, /* opt_sub_partition */
+ YYSYMBOL_sub_part_list = 1050, /* sub_part_list */
+ YYSYMBOL_sub_part_definition = 1051, /* sub_part_definition */
+ YYSYMBOL_1052_78 = 1052, /* $@78 */
+ YYSYMBOL_sub_name = 1053, /* sub_name */
+ YYSYMBOL_opt_part_options = 1054, /* opt_part_options */
+ YYSYMBOL_part_option_list = 1055, /* part_option_list */
+ YYSYMBOL_part_option = 1056, /* part_option */
+ YYSYMBOL_opt_subpart_options = 1057, /* opt_subpart_options */
+ YYSYMBOL_subpart_option_list = 1058, /* subpart_option_list */
+ YYSYMBOL_server_part_option = 1059, /* server_part_option */
+ YYSYMBOL_opt_versioning_rotation = 1060, /* opt_versioning_rotation */
+ YYSYMBOL_1061_79 = 1061, /* $@79 */
+ YYSYMBOL_opt_versioning_interval_start = 1062, /* opt_versioning_interval_start */
+ YYSYMBOL_opt_vers_auto_part = 1063, /* opt_vers_auto_part */
+ YYSYMBOL_opt_as = 1064, /* opt_as */
+ YYSYMBOL_opt_create_database_options = 1065, /* opt_create_database_options */
+ YYSYMBOL_create_database_options = 1066, /* create_database_options */
+ YYSYMBOL_create_database_option = 1067, /* create_database_option */
+ YYSYMBOL_opt_if_not_exists_table_element = 1068, /* opt_if_not_exists_table_element */
+ YYSYMBOL_opt_if_not_exists = 1069, /* opt_if_not_exists */
+ YYSYMBOL_create_or_replace = 1070, /* create_or_replace */
+ YYSYMBOL_opt_create_table_options = 1071, /* opt_create_table_options */
+ YYSYMBOL_create_table_options_space_separated = 1072, /* create_table_options_space_separated */
+ YYSYMBOL_create_table_options = 1073, /* create_table_options */
+ YYSYMBOL_create_table_option = 1074, /* create_table_option */
+ YYSYMBOL_1075_80 = 1075, /* $@80 */
+ YYSYMBOL_engine_defined_option = 1076, /* engine_defined_option */
+ YYSYMBOL_opt_versioning_option = 1077, /* opt_versioning_option */
+ YYSYMBOL_versioning_option = 1078, /* versioning_option */
+ YYSYMBOL_default_charset = 1079, /* default_charset */
+ YYSYMBOL_default_collation = 1080, /* default_collation */
+ YYSYMBOL_storage_engines = 1081, /* storage_engines */
+ YYSYMBOL_known_storage_engines = 1082, /* known_storage_engines */
+ YYSYMBOL_row_types = 1083, /* row_types */
+ YYSYMBOL_merge_insert_types = 1084, /* merge_insert_types */
+ YYSYMBOL_udf_type = 1085, /* udf_type */
+ YYSYMBOL_create_field_list = 1086, /* create_field_list */
+ YYSYMBOL_create_field_list_parens = 1087, /* create_field_list_parens */
+ YYSYMBOL_field_list = 1088, /* field_list */
+ YYSYMBOL_field_list_item = 1089, /* field_list_item */
+ YYSYMBOL_column_def = 1090, /* column_def */
+ YYSYMBOL_key_def = 1091, /* key_def */
+ YYSYMBOL_1092_81 = 1092, /* $@81 */
+ YYSYMBOL_1093_82 = 1093, /* $@82 */
+ YYSYMBOL_1094_83 = 1094, /* $@83 */
+ YYSYMBOL_1095_84 = 1095, /* $@84 */
+ YYSYMBOL_1096_85 = 1096, /* $@85 */
+ YYSYMBOL_1097_86 = 1097, /* $@86 */
+ YYSYMBOL_1098_87 = 1098, /* $@87 */
+ YYSYMBOL_constraint_def = 1099, /* constraint_def */
+ YYSYMBOL_period_for_system_time = 1100, /* period_for_system_time */
+ YYSYMBOL_period_for_application_time = 1101, /* period_for_application_time */
+ YYSYMBOL_opt_check_constraint = 1102, /* opt_check_constraint */
+ YYSYMBOL_check_constraint = 1103, /* check_constraint */
+ YYSYMBOL_opt_constraint_no_id = 1104, /* opt_constraint_no_id */
+ YYSYMBOL_opt_constraint = 1105, /* opt_constraint */
+ YYSYMBOL_constraint = 1106, /* constraint */
+ YYSYMBOL_field_spec = 1107, /* field_spec */
+ YYSYMBOL_1108_88 = 1108, /* @88 */
+ YYSYMBOL_field_type_or_serial = 1109, /* field_type_or_serial */
+ YYSYMBOL_1110_89 = 1110, /* $@89 */
+ YYSYMBOL_1111_90 = 1111, /* $@90 */
+ YYSYMBOL_opt_serial_attribute = 1112, /* opt_serial_attribute */
+ YYSYMBOL_opt_serial_attribute_list = 1113, /* opt_serial_attribute_list */
+ YYSYMBOL_opt_asrow_attribute = 1114, /* opt_asrow_attribute */
+ YYSYMBOL_opt_asrow_attribute_list = 1115, /* opt_asrow_attribute_list */
+ YYSYMBOL_field_def = 1116, /* field_def */
+ YYSYMBOL_1117_91 = 1117, /* $@91 */
+ YYSYMBOL_opt_generated_always = 1118, /* opt_generated_always */
+ YYSYMBOL_vcol_opt_specifier = 1119, /* vcol_opt_specifier */
+ YYSYMBOL_vcol_opt_attribute = 1120, /* vcol_opt_attribute */
+ YYSYMBOL_vcol_opt_attribute_list = 1121, /* vcol_opt_attribute_list */
+ YYSYMBOL_vcol_attribute = 1122, /* vcol_attribute */
+ YYSYMBOL_parse_vcol_expr = 1123, /* parse_vcol_expr */
+ YYSYMBOL_1124_92 = 1124, /* $@92 */
+ YYSYMBOL_parenthesized_expr = 1125, /* parenthesized_expr */
+ YYSYMBOL_virtual_column_func = 1126, /* virtual_column_func */
+ YYSYMBOL_expr_or_literal = 1127, /* expr_or_literal */
+ YYSYMBOL_column_default_expr = 1128, /* column_default_expr */
+ YYSYMBOL_field_type = 1129, /* field_type */
+ YYSYMBOL_qualified_field_type = 1130, /* qualified_field_type */
+ YYSYMBOL_udt_name = 1131, /* udt_name */
+ YYSYMBOL_field_type_all = 1132, /* field_type_all */
+ YYSYMBOL_field_type_numeric = 1133, /* field_type_numeric */
+ YYSYMBOL_opt_binary_and_compression = 1134, /* opt_binary_and_compression */
+ YYSYMBOL_field_type_string = 1135, /* field_type_string */
+ YYSYMBOL_field_type_temporal = 1136, /* field_type_temporal */
+ YYSYMBOL_field_type_lob = 1137, /* field_type_lob */
+ YYSYMBOL_field_type_misc = 1138, /* field_type_misc */
+ YYSYMBOL_char = 1139, /* char */
+ YYSYMBOL_nchar = 1140, /* nchar */
+ YYSYMBOL_varchar = 1141, /* varchar */
+ YYSYMBOL_nvarchar = 1142, /* nvarchar */
+ YYSYMBOL_int_type = 1143, /* int_type */
+ YYSYMBOL_real_type = 1144, /* real_type */
+ YYSYMBOL_srid_option = 1145, /* srid_option */
+ YYSYMBOL_float_options = 1146, /* float_options */
+ YYSYMBOL_precision = 1147, /* precision */
+ YYSYMBOL_field_options = 1148, /* field_options */
+ YYSYMBOL_last_field_options = 1149, /* last_field_options */
+ YYSYMBOL_field_length_str = 1150, /* field_length_str */
+ YYSYMBOL_field_length = 1151, /* field_length */
+ YYSYMBOL_field_scale = 1152, /* field_scale */
+ YYSYMBOL_opt_field_length = 1153, /* opt_field_length */
+ YYSYMBOL_opt_field_scale = 1154, /* opt_field_scale */
+ YYSYMBOL_opt_precision = 1155, /* opt_precision */
+ YYSYMBOL_attribute_list = 1156, /* attribute_list */
+ YYSYMBOL_attribute = 1157, /* attribute */
+ YYSYMBOL_opt_compression_method = 1158, /* opt_compression_method */
+ YYSYMBOL_opt_compressed = 1159, /* opt_compressed */
+ YYSYMBOL_opt_enable = 1160, /* opt_enable */
+ YYSYMBOL_compressed = 1161, /* compressed */
+ YYSYMBOL_compressed_deprecated_data_type_attribute = 1162, /* compressed_deprecated_data_type_attribute */
+ YYSYMBOL_compressed_deprecated_column_attribute = 1163, /* compressed_deprecated_column_attribute */
+ YYSYMBOL_asrow_attribute = 1164, /* asrow_attribute */
+ YYSYMBOL_serial_attribute = 1165, /* serial_attribute */
+ YYSYMBOL_with_or_without_system = 1166, /* with_or_without_system */
+ YYSYMBOL_charset = 1167, /* charset */
+ YYSYMBOL_charset_name = 1168, /* charset_name */
+ YYSYMBOL_charset_name_or_default = 1169, /* charset_name_or_default */
+ YYSYMBOL_opt_load_data_charset = 1170, /* opt_load_data_charset */
+ YYSYMBOL_old_or_new_charset_name = 1171, /* old_or_new_charset_name */
+ YYSYMBOL_old_or_new_charset_name_or_default = 1172, /* old_or_new_charset_name_or_default */
+ YYSYMBOL_collation_name = 1173, /* collation_name */
+ YYSYMBOL_collation_name_or_default = 1174, /* collation_name_or_default */
+ YYSYMBOL_opt_default = 1175, /* opt_default */
+ YYSYMBOL_charset_or_alias = 1176, /* charset_or_alias */
+ YYSYMBOL_opt_binary = 1177, /* opt_binary */
+ YYSYMBOL_binary = 1178, /* binary */
+ YYSYMBOL_opt_bin_mod = 1179, /* opt_bin_mod */
+ YYSYMBOL_ws_nweights = 1180, /* ws_nweights */
+ YYSYMBOL_1181_93 = 1181, /* $@93 */
+ YYSYMBOL_ws_level_flag_desc = 1182, /* ws_level_flag_desc */
+ YYSYMBOL_ws_level_flag_reverse = 1183, /* ws_level_flag_reverse */
+ YYSYMBOL_ws_level_flags = 1184, /* ws_level_flags */
+ YYSYMBOL_ws_level_number = 1185, /* ws_level_number */
+ YYSYMBOL_ws_level_list_item = 1186, /* ws_level_list_item */
+ YYSYMBOL_ws_level_list = 1187, /* ws_level_list */
+ YYSYMBOL_ws_level_range = 1188, /* ws_level_range */
+ YYSYMBOL_ws_level_list_or_range = 1189, /* ws_level_list_or_range */
+ YYSYMBOL_opt_ws_levels = 1190, /* opt_ws_levels */
+ YYSYMBOL_opt_primary = 1191, /* opt_primary */
+ YYSYMBOL_references = 1192, /* references */
+ YYSYMBOL_opt_ref_list = 1193, /* opt_ref_list */
+ YYSYMBOL_ref_list = 1194, /* ref_list */
+ YYSYMBOL_opt_match_clause = 1195, /* opt_match_clause */
+ YYSYMBOL_opt_on_update_delete = 1196, /* opt_on_update_delete */
+ YYSYMBOL_delete_option = 1197, /* delete_option */
+ YYSYMBOL_constraint_key_type = 1198, /* constraint_key_type */
+ YYSYMBOL_key_or_index = 1199, /* key_or_index */
+ YYSYMBOL_opt_key_or_index = 1200, /* opt_key_or_index */
+ YYSYMBOL_keys_or_index = 1201, /* keys_or_index */
+ YYSYMBOL_fulltext = 1202, /* fulltext */
+ YYSYMBOL_spatial = 1203, /* spatial */
+ YYSYMBOL_normal_key_options = 1204, /* normal_key_options */
+ YYSYMBOL_fulltext_key_options = 1205, /* fulltext_key_options */
+ YYSYMBOL_spatial_key_options = 1206, /* spatial_key_options */
+ YYSYMBOL_normal_key_opts = 1207, /* normal_key_opts */
+ YYSYMBOL_spatial_key_opts = 1208, /* spatial_key_opts */
+ YYSYMBOL_fulltext_key_opts = 1209, /* fulltext_key_opts */
+ YYSYMBOL_opt_USING_key_algorithm = 1210, /* opt_USING_key_algorithm */
+ YYSYMBOL_opt_key_algorithm_clause = 1211, /* opt_key_algorithm_clause */
+ YYSYMBOL_key_using_alg = 1212, /* key_using_alg */
+ YYSYMBOL_all_key_opt = 1213, /* all_key_opt */
+ YYSYMBOL_normal_key_opt = 1214, /* normal_key_opt */
+ YYSYMBOL_spatial_key_opt = 1215, /* spatial_key_opt */
+ YYSYMBOL_fulltext_key_opt = 1216, /* fulltext_key_opt */
+ YYSYMBOL_btree_or_rtree = 1217, /* btree_or_rtree */
+ YYSYMBOL_ignorability = 1218, /* ignorability */
+ YYSYMBOL_key_list = 1219, /* key_list */
+ YYSYMBOL_opt_without_overlaps = 1220, /* opt_without_overlaps */
+ YYSYMBOL_key_part = 1221, /* key_part */
+ YYSYMBOL_opt_ident = 1222, /* opt_ident */
+ YYSYMBOL_string_list = 1223, /* string_list */
+ YYSYMBOL_alter = 1224, /* alter */
+ YYSYMBOL_1225_94 = 1225, /* $@94 */
+ YYSYMBOL_1226_95 = 1226, /* $@95 */
+ YYSYMBOL_1227_96 = 1227, /* $@96 */
+ YYSYMBOL_1228_97 = 1228, /* $@97 */
+ YYSYMBOL_1229_98 = 1229, /* $@98 */
+ YYSYMBOL_1230_99 = 1230, /* $@99 */
+ YYSYMBOL_1231_100 = 1231, /* $@100 */
+ YYSYMBOL_1232_101 = 1232, /* $@101 */
+ YYSYMBOL_1233_102 = 1233, /* $@102 */
+ YYSYMBOL_1234_103 = 1234, /* $@103 */
+ YYSYMBOL_1235_104 = 1235, /* $@104 */
+ YYSYMBOL_1236_105 = 1236, /* $@105 */
+ YYSYMBOL_1237_106 = 1237, /* $@106 */
+ YYSYMBOL_account_locking_option = 1238, /* account_locking_option */
+ YYSYMBOL_opt_password_expire_option = 1239, /* opt_password_expire_option */
+ YYSYMBOL_opt_account_locking_and_opt_password_expiration = 1240, /* opt_account_locking_and_opt_password_expiration */
+ YYSYMBOL_ev_alter_on_schedule_completion = 1241, /* ev_alter_on_schedule_completion */
+ YYSYMBOL_opt_ev_rename_to = 1242, /* opt_ev_rename_to */
+ YYSYMBOL_opt_ev_sql_stmt = 1243, /* opt_ev_sql_stmt */
+ YYSYMBOL_ident_or_empty = 1244, /* ident_or_empty */
+ YYSYMBOL_alter_commands = 1245, /* alter_commands */
+ YYSYMBOL_1246_107 = 1246, /* $@107 */
+ YYSYMBOL_1247_108 = 1247, /* $@108 */
+ YYSYMBOL_1248_109 = 1248, /* $@109 */
+ YYSYMBOL_1249_110 = 1249, /* $@110 */
+ YYSYMBOL_remove_partitioning = 1250, /* remove_partitioning */
+ YYSYMBOL_all_or_alt_part_name_list = 1251, /* all_or_alt_part_name_list */
+ YYSYMBOL_add_partition_rule = 1252, /* add_partition_rule */
+ YYSYMBOL_1253_111 = 1253, /* $@111 */
+ YYSYMBOL_add_part_extra = 1254, /* add_part_extra */
+ YYSYMBOL_reorg_partition_rule = 1255, /* reorg_partition_rule */
+ YYSYMBOL_1256_112 = 1256, /* $@112 */
+ YYSYMBOL_reorg_parts_rule = 1257, /* reorg_parts_rule */
+ YYSYMBOL_1258_113 = 1258, /* $@113 */
+ YYSYMBOL_alt_part_name_list = 1259, /* alt_part_name_list */
+ YYSYMBOL_alt_part_name_item = 1260, /* alt_part_name_item */
+ YYSYMBOL_alter_list = 1261, /* alter_list */
+ YYSYMBOL_add_column = 1262, /* add_column */
+ YYSYMBOL_alter_list_item = 1263, /* alter_list_item */
+ YYSYMBOL_opt_index_lock_algorithm = 1264, /* opt_index_lock_algorithm */
+ YYSYMBOL_alter_algorithm_option = 1265, /* alter_algorithm_option */
+ YYSYMBOL_alter_lock_option = 1266, /* alter_lock_option */
+ YYSYMBOL_opt_column = 1267, /* opt_column */
+ YYSYMBOL_opt_ignore = 1268, /* opt_ignore */
+ YYSYMBOL_alter_options = 1269, /* alter_options */
+ YYSYMBOL_1270_114 = 1270, /* $@114 */
+ YYSYMBOL_alter_options_part2 = 1271, /* alter_options_part2 */
+ YYSYMBOL_alter_option_list = 1272, /* alter_option_list */
+ YYSYMBOL_alter_option = 1273, /* alter_option */
+ YYSYMBOL_opt_restrict = 1274, /* opt_restrict */
+ YYSYMBOL_opt_place = 1275, /* opt_place */
+ YYSYMBOL_opt_to = 1276, /* opt_to */
+ YYSYMBOL_slave = 1277, /* slave */
+ YYSYMBOL_1278_115 = 1278, /* $@115 */
+ YYSYMBOL_1279_116 = 1279, /* $@116 */
+ YYSYMBOL_start = 1280, /* start */
+ YYSYMBOL_opt_start_transaction_option_list = 1281, /* opt_start_transaction_option_list */
+ YYSYMBOL_start_transaction_option_list = 1282, /* start_transaction_option_list */
+ YYSYMBOL_start_transaction_option = 1283, /* start_transaction_option */
+ YYSYMBOL_slave_thread_opts = 1284, /* slave_thread_opts */
+ YYSYMBOL_1285_117 = 1285, /* $@117 */
+ YYSYMBOL_slave_thread_opt_list = 1286, /* slave_thread_opt_list */
+ YYSYMBOL_slave_thread_opt = 1287, /* slave_thread_opt */
+ YYSYMBOL_slave_until = 1288, /* slave_until */
+ YYSYMBOL_slave_until_opts = 1289, /* slave_until_opts */
+ YYSYMBOL_checksum = 1290, /* checksum */
+ YYSYMBOL_1291_118 = 1291, /* $@118 */
+ YYSYMBOL_opt_checksum_type = 1292, /* opt_checksum_type */
+ YYSYMBOL_repair_table_or_view = 1293, /* repair_table_or_view */
+ YYSYMBOL_1294_119 = 1294, /* $@119 */
+ YYSYMBOL_repair = 1295, /* repair */
+ YYSYMBOL_1296_120 = 1296, /* $@120 */
+ YYSYMBOL_opt_mi_repair_type = 1297, /* opt_mi_repair_type */
+ YYSYMBOL_mi_repair_types = 1298, /* mi_repair_types */
+ YYSYMBOL_mi_repair_type = 1299, /* mi_repair_type */
+ YYSYMBOL_opt_view_repair_type = 1300, /* opt_view_repair_type */
+ YYSYMBOL_analyze = 1301, /* analyze */
+ YYSYMBOL_1302_121 = 1302, /* $@121 */
+ YYSYMBOL_analyze_table_list = 1303, /* analyze_table_list */
+ YYSYMBOL_analyze_table_elem_spec = 1304, /* analyze_table_elem_spec */
+ YYSYMBOL_opt_persistent_stat_clause = 1305, /* opt_persistent_stat_clause */
+ YYSYMBOL_persistent_stat_spec = 1306, /* persistent_stat_spec */
+ YYSYMBOL_persistent_column_stat_spec = 1307, /* persistent_column_stat_spec */
+ YYSYMBOL_1308_122 = 1308, /* $@122 */
+ YYSYMBOL_persistent_index_stat_spec = 1309, /* persistent_index_stat_spec */
+ YYSYMBOL_1310_123 = 1310, /* $@123 */
+ YYSYMBOL_table_column_list = 1311, /* table_column_list */
+ YYSYMBOL_table_index_list = 1312, /* table_index_list */
+ YYSYMBOL_table_index_name = 1313, /* table_index_name */
+ YYSYMBOL_binlog_base64_event = 1314, /* binlog_base64_event */
+ YYSYMBOL_check_view_or_table = 1315, /* check_view_or_table */
+ YYSYMBOL_1316_124 = 1316, /* $@124 */
+ YYSYMBOL_check = 1317, /* check */
+ YYSYMBOL_1318_125 = 1318, /* $@125 */
+ YYSYMBOL_opt_mi_check_type = 1319, /* opt_mi_check_type */
+ YYSYMBOL_mi_check_types = 1320, /* mi_check_types */
+ YYSYMBOL_mi_check_type = 1321, /* mi_check_type */
+ YYSYMBOL_opt_view_check_type = 1322, /* opt_view_check_type */
+ YYSYMBOL_optimize = 1323, /* optimize */
+ YYSYMBOL_1324_126 = 1324, /* $@126 */
+ YYSYMBOL_opt_no_write_to_binlog = 1325, /* opt_no_write_to_binlog */
+ YYSYMBOL_rename = 1326, /* rename */
+ YYSYMBOL_1327_127 = 1327, /* $@127 */
+ YYSYMBOL_rename_list = 1328, /* rename_list */
+ YYSYMBOL_table_to_table_list = 1329, /* table_to_table_list */
+ YYSYMBOL_table_to_table = 1330, /* table_to_table */
+ YYSYMBOL_keycache = 1331, /* keycache */
+ YYSYMBOL_1332_128 = 1332, /* $@128 */
+ YYSYMBOL_keycache_list_or_parts = 1333, /* keycache_list_or_parts */
+ YYSYMBOL_keycache_list = 1334, /* keycache_list */
+ YYSYMBOL_assign_to_keycache = 1335, /* assign_to_keycache */
+ YYSYMBOL_assign_to_keycache_parts = 1336, /* assign_to_keycache_parts */
+ YYSYMBOL_key_cache_name = 1337, /* key_cache_name */
+ YYSYMBOL_preload = 1338, /* preload */
+ YYSYMBOL_1339_129 = 1339, /* $@129 */
+ YYSYMBOL_preload_list_or_parts = 1340, /* preload_list_or_parts */
+ YYSYMBOL_preload_list = 1341, /* preload_list */
+ YYSYMBOL_preload_keys = 1342, /* preload_keys */
+ YYSYMBOL_preload_keys_parts = 1343, /* preload_keys_parts */
+ YYSYMBOL_adm_partition = 1344, /* adm_partition */
+ YYSYMBOL_1345_130 = 1345, /* $@130 */
+ YYSYMBOL_cache_keys_spec = 1346, /* cache_keys_spec */
+ YYSYMBOL_1347_131 = 1347, /* $@131 */
+ YYSYMBOL_cache_key_list_or_empty = 1348, /* cache_key_list_or_empty */
+ YYSYMBOL_opt_ignore_leaves = 1349, /* opt_ignore_leaves */
+ YYSYMBOL_select = 1350, /* select */
+ YYSYMBOL_1351_132 = 1351, /* $@132 */
+ YYSYMBOL_1352_133 = 1352, /* $@133 */
+ YYSYMBOL_select_into = 1353, /* select_into */
+ YYSYMBOL_1354_134 = 1354, /* $@134 */
+ YYSYMBOL_1355_135 = 1355, /* $@135 */
+ YYSYMBOL_simple_table = 1356, /* simple_table */
+ YYSYMBOL_table_value_constructor = 1357, /* table_value_constructor */
+ YYSYMBOL_1358_136 = 1358, /* $@136 */
+ YYSYMBOL_query_specification_start = 1359, /* query_specification_start */
+ YYSYMBOL_1360_137 = 1360, /* $@137 */
+ YYSYMBOL_1361_138 = 1361, /* $@138 */
+ YYSYMBOL_query_specification = 1362, /* query_specification */
+ YYSYMBOL_select_into_query_specification = 1363, /* select_into_query_specification */
+ YYSYMBOL_query_expression = 1364, /* query_expression */
+ YYSYMBOL_query_expression_no_with_clause = 1365, /* query_expression_no_with_clause */
+ YYSYMBOL_query_expression_body_ext = 1366, /* query_expression_body_ext */
+ YYSYMBOL_1367_139 = 1367, /* $@139 */
+ YYSYMBOL_1368_140 = 1368, /* $@140 */
+ YYSYMBOL_query_expression_body_ext_parens = 1369, /* query_expression_body_ext_parens */
+ YYSYMBOL_query_expression_body = 1370, /* query_expression_body */
+ YYSYMBOL_1371_141 = 1371, /* $@141 */
+ YYSYMBOL_query_primary = 1372, /* query_primary */
+ YYSYMBOL_query_simple = 1373, /* query_simple */
+ YYSYMBOL_subselect = 1374, /* subselect */
+ YYSYMBOL_subquery = 1375, /* subquery */
+ YYSYMBOL_opt_from_clause = 1376, /* opt_from_clause */
+ YYSYMBOL_from_clause = 1377, /* from_clause */
+ YYSYMBOL_table_reference_list = 1378, /* table_reference_list */
+ YYSYMBOL_select_options = 1379, /* select_options */
+ YYSYMBOL_opt_history_unit = 1380, /* opt_history_unit */
+ YYSYMBOL_history_point = 1381, /* history_point */
+ YYSYMBOL_for_portion_of_time_clause = 1382, /* for_portion_of_time_clause */
+ YYSYMBOL_opt_for_portion_of_time_clause = 1383, /* opt_for_portion_of_time_clause */
+ YYSYMBOL_opt_for_system_time_clause = 1384, /* opt_for_system_time_clause */
+ YYSYMBOL_system_time_expr = 1385, /* system_time_expr */
+ YYSYMBOL_select_option_list = 1386, /* select_option_list */
+ YYSYMBOL_select_option = 1387, /* select_option */
+ YYSYMBOL_select_lock_type = 1388, /* select_lock_type */
+ YYSYMBOL_opt_select_lock_type = 1389, /* opt_select_lock_type */
+ YYSYMBOL_opt_lock_wait_timeout_new = 1390, /* opt_lock_wait_timeout_new */
+ YYSYMBOL_select_item_list = 1391, /* select_item_list */
+ YYSYMBOL_select_item = 1392, /* select_item */
+ YYSYMBOL_remember_tok_start = 1393, /* remember_tok_start */
+ YYSYMBOL_remember_name = 1394, /* remember_name */
+ YYSYMBOL_remember_end = 1395, /* remember_end */
+ YYSYMBOL_select_alias = 1396, /* select_alias */
+ YYSYMBOL_opt_default_time_precision = 1397, /* opt_default_time_precision */
+ YYSYMBOL_opt_time_precision = 1398, /* opt_time_precision */
+ YYSYMBOL_optional_braces = 1399, /* optional_braces */
+ YYSYMBOL_expr = 1400, /* expr */
+ YYSYMBOL_boolean_test = 1401, /* boolean_test */
+ YYSYMBOL_predicate = 1402, /* predicate */
+ YYSYMBOL_bit_expr = 1403, /* bit_expr */
+ YYSYMBOL_or = 1404, /* or */
+ YYSYMBOL_and = 1405, /* and */
+ YYSYMBOL_not = 1406, /* not */
+ YYSYMBOL_not2 = 1407, /* not2 */
+ YYSYMBOL_comp_op = 1408, /* comp_op */
+ YYSYMBOL_all_or_any = 1409, /* all_or_any */
+ YYSYMBOL_opt_dyncol_type = 1410, /* opt_dyncol_type */
+ YYSYMBOL_dyncol_type = 1411, /* dyncol_type */
+ YYSYMBOL_numeric_dyncol_type = 1412, /* numeric_dyncol_type */
+ YYSYMBOL_temporal_dyncol_type = 1413, /* temporal_dyncol_type */
+ YYSYMBOL_string_dyncol_type = 1414, /* string_dyncol_type */
+ YYSYMBOL_dyncall_create_element = 1415, /* dyncall_create_element */
+ YYSYMBOL_dyncall_create_list = 1416, /* dyncall_create_list */
+ YYSYMBOL_plsql_cursor_attr = 1417, /* plsql_cursor_attr */
+ YYSYMBOL_explicit_cursor_attr = 1418, /* explicit_cursor_attr */
+ YYSYMBOL_trim_operands = 1419, /* trim_operands */
+ YYSYMBOL_trim_operands_regular = 1420, /* trim_operands_regular */
+ YYSYMBOL_trim_operands_special = 1421, /* trim_operands_special */
+ YYSYMBOL_column_default_non_parenthesized_expr = 1422, /* column_default_non_parenthesized_expr */
+ YYSYMBOL_primary_expr = 1423, /* primary_expr */
+ YYSYMBOL_string_factor_expr = 1424, /* string_factor_expr */
+ YYSYMBOL_simple_expr = 1425, /* simple_expr */
+ YYSYMBOL_mysql_concatenation_expr = 1426, /* mysql_concatenation_expr */
+ YYSYMBOL_function_call_keyword_timestamp = 1427, /* function_call_keyword_timestamp */
+ YYSYMBOL_function_call_keyword = 1428, /* function_call_keyword */
+ YYSYMBOL_substring_operands = 1429, /* substring_operands */
+ YYSYMBOL_substring_operands_regular = 1430, /* substring_operands_regular */
+ YYSYMBOL_substring_operands_special = 1431, /* substring_operands_special */
+ YYSYMBOL_function_call_nonkeyword = 1432, /* function_call_nonkeyword */
+ YYSYMBOL_function_call_conflict = 1433, /* function_call_conflict */
+ YYSYMBOL_function_call_generic = 1434, /* function_call_generic */
+ YYSYMBOL_1435_142 = 1435, /* @142 */
+ YYSYMBOL_fulltext_options = 1436, /* fulltext_options */
+ YYSYMBOL_opt_natural_language_mode = 1437, /* opt_natural_language_mode */
+ YYSYMBOL_opt_query_expansion = 1438, /* opt_query_expansion */
+ YYSYMBOL_opt_udf_expr_list = 1439, /* opt_udf_expr_list */
+ YYSYMBOL_udf_expr_list = 1440, /* udf_expr_list */
+ YYSYMBOL_udf_expr = 1441, /* udf_expr */
+ YYSYMBOL_sum_expr = 1442, /* sum_expr */
+ YYSYMBOL_1443_143 = 1443, /* $@143 */
+ YYSYMBOL_1444_144 = 1444, /* $@144 */
+ YYSYMBOL_1445_145 = 1445, /* $@145 */
+ YYSYMBOL_1446_146 = 1446, /* $@146 */
+ YYSYMBOL_1447_147 = 1447, /* $@147 */
+ YYSYMBOL_window_func_expr = 1448, /* window_func_expr */
+ YYSYMBOL_window_func = 1449, /* window_func */
+ YYSYMBOL_simple_window_func = 1450, /* simple_window_func */
+ YYSYMBOL_inverse_distribution_function = 1451, /* inverse_distribution_function */
+ YYSYMBOL_percentile_function = 1452, /* percentile_function */
+ YYSYMBOL_1453_148 = 1453, /* $@148 */
+ YYSYMBOL_inverse_distribution_function_def = 1454, /* inverse_distribution_function_def */
+ YYSYMBOL_order_by_single_element_list = 1455, /* order_by_single_element_list */
+ YYSYMBOL_window_name = 1456, /* window_name */
+ YYSYMBOL_variable = 1457, /* variable */
+ YYSYMBOL_1458_149 = 1458, /* $@149 */
+ YYSYMBOL_variable_aux = 1459, /* variable_aux */
+ YYSYMBOL_opt_distinct = 1460, /* opt_distinct */
+ YYSYMBOL_opt_gconcat_separator = 1461, /* opt_gconcat_separator */
+ YYSYMBOL_opt_gorder_clause = 1462, /* opt_gorder_clause */
+ YYSYMBOL_gorder_list = 1463, /* gorder_list */
+ YYSYMBOL_opt_glimit_clause = 1464, /* opt_glimit_clause */
+ YYSYMBOL_glimit_clause = 1465, /* glimit_clause */
+ YYSYMBOL_glimit_options = 1466, /* glimit_options */
+ YYSYMBOL_in_sum_expr = 1467, /* in_sum_expr */
+ YYSYMBOL_1468_150 = 1468, /* $@150 */
+ YYSYMBOL_cast_type = 1469, /* cast_type */
+ YYSYMBOL_cast_type_numeric = 1470, /* cast_type_numeric */
+ YYSYMBOL_cast_type_temporal = 1471, /* cast_type_temporal */
+ YYSYMBOL_opt_expr_list = 1472, /* opt_expr_list */
+ YYSYMBOL_expr_list = 1473, /* expr_list */
+ YYSYMBOL_ident_list_arg = 1474, /* ident_list_arg */
+ YYSYMBOL_ident_list = 1475, /* ident_list */
+ YYSYMBOL_when_list = 1476, /* when_list */
+ YYSYMBOL_when_list_opt_else = 1477, /* when_list_opt_else */
+ YYSYMBOL_table_ref = 1478, /* table_ref */
+ YYSYMBOL_json_text_literal = 1479, /* json_text_literal */
+ YYSYMBOL_json_text_literal_or_num = 1480, /* json_text_literal_or_num */
+ YYSYMBOL_join_table_list = 1481, /* join_table_list */
+ YYSYMBOL_json_table_columns_clause = 1482, /* json_table_columns_clause */
+ YYSYMBOL_json_table_columns_list = 1483, /* json_table_columns_list */
+ YYSYMBOL_json_table_column = 1484, /* json_table_column */
+ YYSYMBOL_1485_151 = 1485, /* $@151 */
+ YYSYMBOL_1486_152 = 1486, /* $@152 */
+ YYSYMBOL_json_table_column_type = 1487, /* json_table_column_type */
+ YYSYMBOL_json_table_field_type = 1488, /* json_table_field_type */
+ YYSYMBOL_json_opt_on_empty_or_error = 1489, /* json_opt_on_empty_or_error */
+ YYSYMBOL_json_on_response = 1490, /* json_on_response */
+ YYSYMBOL_json_on_error_response = 1491, /* json_on_error_response */
+ YYSYMBOL_json_on_empty_response = 1492, /* json_on_empty_response */
+ YYSYMBOL_table_function = 1493, /* table_function */
+ YYSYMBOL_1494_153 = 1494, /* $@153 */
+ YYSYMBOL_1495_154 = 1495, /* $@154 */
+ YYSYMBOL_esc_table_ref = 1496, /* esc_table_ref */
+ YYSYMBOL_derived_table_list = 1497, /* derived_table_list */
+ YYSYMBOL_join_table = 1498, /* join_table */
+ YYSYMBOL_1499_155 = 1499, /* $@155 */
+ YYSYMBOL_1500_156 = 1500, /* $@156 */
+ YYSYMBOL_1501_157 = 1501, /* $@157 */
+ YYSYMBOL_1502_158 = 1502, /* $@158 */
+ YYSYMBOL_1503_159 = 1503, /* $@159 */
+ YYSYMBOL_1504_160 = 1504, /* $@160 */
+ YYSYMBOL_inner_join = 1505, /* inner_join */
+ YYSYMBOL_normal_join = 1506, /* normal_join */
+ YYSYMBOL_opt_use_partition = 1507, /* opt_use_partition */
+ YYSYMBOL_use_partition = 1508, /* use_partition */
+ YYSYMBOL_table_factor = 1509, /* table_factor */
+ YYSYMBOL_table_primary_ident_opt_parens = 1510, /* table_primary_ident_opt_parens */
+ YYSYMBOL_table_primary_derived_opt_parens = 1511, /* table_primary_derived_opt_parens */
+ YYSYMBOL_table_reference_list_parens = 1512, /* table_reference_list_parens */
+ YYSYMBOL_nested_table_reference_list = 1513, /* nested_table_reference_list */
+ YYSYMBOL_join_table_parens = 1514, /* join_table_parens */
+ YYSYMBOL_table_primary_ident = 1515, /* table_primary_ident */
+ YYSYMBOL_table_primary_derived = 1516, /* table_primary_derived */
+ YYSYMBOL_opt_outer = 1517, /* opt_outer */
+ YYSYMBOL_index_hint_clause = 1518, /* index_hint_clause */
+ YYSYMBOL_index_hint_type = 1519, /* index_hint_type */
+ YYSYMBOL_index_hint_definition = 1520, /* index_hint_definition */
+ YYSYMBOL_1521_161 = 1521, /* $@161 */
+ YYSYMBOL_1522_162 = 1522, /* $@162 */
+ YYSYMBOL_index_hints_list = 1523, /* index_hints_list */
+ YYSYMBOL_opt_index_hints_list = 1524, /* opt_index_hints_list */
+ YYSYMBOL_1525_163 = 1525, /* $@163 */
+ YYSYMBOL_opt_key_definition = 1526, /* opt_key_definition */
+ YYSYMBOL_1527_164 = 1527, /* $@164 */
+ YYSYMBOL_opt_key_usage_list = 1528, /* opt_key_usage_list */
+ YYSYMBOL_key_usage_element = 1529, /* key_usage_element */
+ YYSYMBOL_key_usage_list = 1530, /* key_usage_list */
+ YYSYMBOL_using_list = 1531, /* using_list */
+ YYSYMBOL_interval = 1532, /* interval */
+ YYSYMBOL_interval_time_stamp = 1533, /* interval_time_stamp */
+ YYSYMBOL_date_time_type = 1534, /* date_time_type */
+ YYSYMBOL_table_alias = 1535, /* table_alias */
+ YYSYMBOL_opt_table_alias_clause = 1536, /* opt_table_alias_clause */
+ YYSYMBOL_table_alias_clause = 1537, /* table_alias_clause */
+ YYSYMBOL_opt_all = 1538, /* opt_all */
+ YYSYMBOL_opt_where_clause = 1539, /* opt_where_clause */
+ YYSYMBOL_1540_165 = 1540, /* $@165 */
+ YYSYMBOL_opt_having_clause = 1541, /* opt_having_clause */
+ YYSYMBOL_1542_166 = 1542, /* $@166 */
+ YYSYMBOL_opt_group_clause = 1543, /* opt_group_clause */
+ YYSYMBOL_group_list = 1544, /* group_list */
+ YYSYMBOL_olap_opt = 1545, /* olap_opt */
+ YYSYMBOL_opt_window_clause = 1546, /* opt_window_clause */
+ YYSYMBOL_window_def_list = 1547, /* window_def_list */
+ YYSYMBOL_window_def = 1548, /* window_def */
+ YYSYMBOL_window_spec = 1549, /* window_spec */
+ YYSYMBOL_1550_167 = 1550, /* $@167 */
+ YYSYMBOL_opt_window_ref = 1551, /* opt_window_ref */
+ YYSYMBOL_opt_window_partition_clause = 1552, /* opt_window_partition_clause */
+ YYSYMBOL_opt_window_order_clause = 1553, /* opt_window_order_clause */
+ YYSYMBOL_opt_window_frame_clause = 1554, /* opt_window_frame_clause */
+ YYSYMBOL_window_frame_units = 1555, /* window_frame_units */
+ YYSYMBOL_window_frame_extent = 1556, /* window_frame_extent */
+ YYSYMBOL_window_frame_start = 1557, /* window_frame_start */
+ YYSYMBOL_window_frame_bound = 1558, /* window_frame_bound */
+ YYSYMBOL_opt_window_frame_exclusion = 1559, /* opt_window_frame_exclusion */
+ YYSYMBOL_alter_order_clause = 1560, /* alter_order_clause */
+ YYSYMBOL_alter_order_list = 1561, /* alter_order_list */
+ YYSYMBOL_alter_order_item = 1562, /* alter_order_item */
+ YYSYMBOL_opt_order_clause = 1563, /* opt_order_clause */
+ YYSYMBOL_order_clause = 1564, /* order_clause */
+ YYSYMBOL_1565_168 = 1565, /* $@168 */
+ YYSYMBOL_order_list = 1566, /* order_list */
+ YYSYMBOL_order_dir = 1567, /* order_dir */
+ YYSYMBOL_opt_limit_clause = 1568, /* opt_limit_clause */
+ YYSYMBOL_limit_clause = 1569, /* limit_clause */
+ YYSYMBOL_fetch_first_clause = 1570, /* fetch_first_clause */
+ YYSYMBOL_first_or_next = 1571, /* first_or_next */
+ YYSYMBOL_row_or_rows = 1572, /* row_or_rows */
+ YYSYMBOL_only_or_with_ties = 1573, /* only_or_with_ties */
+ YYSYMBOL_opt_global_limit_clause = 1574, /* opt_global_limit_clause */
+ YYSYMBOL_limit_options = 1575, /* limit_options */
+ YYSYMBOL_limit_option = 1576, /* limit_option */
+ YYSYMBOL_limit_rows_option = 1577, /* limit_rows_option */
+ YYSYMBOL_delete_limit_clause = 1578, /* delete_limit_clause */
+ YYSYMBOL_order_limit_lock = 1579, /* order_limit_lock */
+ YYSYMBOL_opt_order_limit_lock = 1580, /* opt_order_limit_lock */
+ YYSYMBOL_query_expression_tail = 1581, /* query_expression_tail */
+ YYSYMBOL_opt_query_expression_tail = 1582, /* opt_query_expression_tail */
+ YYSYMBOL_opt_procedure_or_into = 1583, /* opt_procedure_or_into */
+ YYSYMBOL_order_or_limit = 1584, /* order_or_limit */
+ YYSYMBOL_opt_plus = 1585, /* opt_plus */
+ YYSYMBOL_int_num = 1586, /* int_num */
+ YYSYMBOL_ulong_num = 1587, /* ulong_num */
+ YYSYMBOL_real_ulong_num = 1588, /* real_ulong_num */
+ YYSYMBOL_longlong_num = 1589, /* longlong_num */
+ YYSYMBOL_ulonglong_num = 1590, /* ulonglong_num */
+ YYSYMBOL_real_ulonglong_num = 1591, /* real_ulonglong_num */
+ YYSYMBOL_dec_num_error = 1592, /* dec_num_error */
+ YYSYMBOL_dec_num = 1593, /* dec_num */
+ YYSYMBOL_choice = 1594, /* choice */
+ YYSYMBOL_bool = 1595, /* bool */
+ YYSYMBOL_procedure_clause = 1596, /* procedure_clause */
+ YYSYMBOL_1597_169 = 1597, /* $@169 */
+ YYSYMBOL_procedure_list = 1598, /* procedure_list */
+ YYSYMBOL_procedure_list2 = 1599, /* procedure_list2 */
+ YYSYMBOL_procedure_item = 1600, /* procedure_item */
+ YYSYMBOL_select_var_list_init = 1601, /* select_var_list_init */
+ YYSYMBOL_1602_170 = 1602, /* $@170 */
+ YYSYMBOL_select_var_list = 1603, /* select_var_list */
+ YYSYMBOL_select_var_ident = 1604, /* select_var_ident */
+ YYSYMBOL_select_outvar = 1605, /* select_outvar */
+ YYSYMBOL_into = 1606, /* into */
+ YYSYMBOL_into_destination = 1607, /* into_destination */
+ YYSYMBOL_1608_171 = 1608, /* $@171 */
+ YYSYMBOL_1609_172 = 1609, /* $@172 */
+ YYSYMBOL_do = 1610, /* do */
+ YYSYMBOL_1611_173 = 1611, /* $@173 */
+ YYSYMBOL_drop = 1612, /* drop */
+ YYSYMBOL_1613_174 = 1613, /* $@174 */
+ YYSYMBOL_1614_175 = 1614, /* $@175 */
+ YYSYMBOL_1615_176 = 1615, /* $@176 */
+ YYSYMBOL_1616_177 = 1616, /* $@177 */
+ YYSYMBOL_table_list = 1617, /* table_list */
+ YYSYMBOL_table_name = 1618, /* table_name */
+ YYSYMBOL_table_name_with_opt_use_partition = 1619, /* table_name_with_opt_use_partition */
+ YYSYMBOL_table_alias_ref_list = 1620, /* table_alias_ref_list */
+ YYSYMBOL_table_alias_ref = 1621, /* table_alias_ref */
+ YYSYMBOL_opt_if_exists_table_element = 1622, /* opt_if_exists_table_element */
+ YYSYMBOL_opt_if_exists = 1623, /* opt_if_exists */
+ YYSYMBOL_opt_temporary = 1624, /* opt_temporary */
+ YYSYMBOL_insert = 1625, /* insert */
+ YYSYMBOL_1626_178 = 1626, /* $@178 */
+ YYSYMBOL_1627_179 = 1627, /* $@179 */
+ YYSYMBOL_replace = 1628, /* replace */
+ YYSYMBOL_1629_180 = 1629, /* $@180 */
+ YYSYMBOL_1630_181 = 1630, /* $@181 */
+ YYSYMBOL_insert_start = 1631, /* insert_start */
+ YYSYMBOL_stmt_end = 1632, /* stmt_end */
+ YYSYMBOL_insert_lock_option = 1633, /* insert_lock_option */
+ YYSYMBOL_replace_lock_option = 1634, /* replace_lock_option */
+ YYSYMBOL_insert_replace_option = 1635, /* insert_replace_option */
+ YYSYMBOL_opt_into = 1636, /* opt_into */
+ YYSYMBOL_insert_table = 1637, /* insert_table */
+ YYSYMBOL_1638_182 = 1638, /* $@182 */
+ YYSYMBOL_insert_field_spec = 1639, /* insert_field_spec */
+ YYSYMBOL_1640_183 = 1640, /* $@183 */
+ YYSYMBOL_insert_field_list = 1641, /* insert_field_list */
+ YYSYMBOL_opt_fields = 1642, /* opt_fields */
+ YYSYMBOL_fields = 1643, /* fields */
+ YYSYMBOL_insert_values = 1644, /* insert_values */
+ YYSYMBOL_values_list = 1645, /* values_list */
+ YYSYMBOL_ident_eq_list = 1646, /* ident_eq_list */
+ YYSYMBOL_ident_eq_value = 1647, /* ident_eq_value */
+ YYSYMBOL_equal = 1648, /* equal */
+ YYSYMBOL_opt_equal = 1649, /* opt_equal */
+ YYSYMBOL_opt_with = 1650, /* opt_with */
+ YYSYMBOL_opt_by = 1651, /* opt_by */
+ YYSYMBOL_no_braces = 1652, /* no_braces */
+ YYSYMBOL_1653_184 = 1653, /* $@184 */
+ YYSYMBOL_no_braces_with_names = 1654, /* no_braces_with_names */
+ YYSYMBOL_1655_185 = 1655, /* $@185 */
+ YYSYMBOL_opt_values = 1656, /* opt_values */
+ YYSYMBOL_opt_values_with_names = 1657, /* opt_values_with_names */
+ YYSYMBOL_values = 1658, /* values */
+ YYSYMBOL_values_with_names = 1659, /* values_with_names */
+ YYSYMBOL_expr_or_ignore = 1660, /* expr_or_ignore */
+ YYSYMBOL_expr_or_ignore_or_default = 1661, /* expr_or_ignore_or_default */
+ YYSYMBOL_opt_insert_update = 1662, /* opt_insert_update */
+ YYSYMBOL_1663_186 = 1663, /* $@186 */
+ YYSYMBOL_1664_187 = 1664, /* $@187 */
+ YYSYMBOL_update_table_list = 1665, /* update_table_list */
+ YYSYMBOL_update = 1666, /* update */
+ YYSYMBOL_1667_188 = 1667, /* $@188 */
+ YYSYMBOL_1668_189 = 1668, /* $@189 */
+ YYSYMBOL_1669_190 = 1669, /* $@190 */
+ YYSYMBOL_update_list = 1670, /* update_list */
+ YYSYMBOL_update_elem = 1671, /* update_elem */
+ YYSYMBOL_insert_update_list = 1672, /* insert_update_list */
+ YYSYMBOL_insert_update_elem = 1673, /* insert_update_elem */
+ YYSYMBOL_opt_low_priority = 1674, /* opt_low_priority */
+ YYSYMBOL_delete = 1675, /* delete */
+ YYSYMBOL_1676_191 = 1676, /* $@191 */
+ YYSYMBOL_opt_delete_system_time = 1677, /* opt_delete_system_time */
+ YYSYMBOL_delete_part2 = 1678, /* delete_part2 */
+ YYSYMBOL_delete_single_table = 1679, /* delete_single_table */
+ YYSYMBOL_delete_single_table_for_period = 1680, /* delete_single_table_for_period */
+ YYSYMBOL_single_multi = 1681, /* single_multi */
+ YYSYMBOL_1682_192 = 1682, /* $@192 */
+ YYSYMBOL_1683_193 = 1683, /* $@193 */
+ YYSYMBOL_1684_194 = 1684, /* $@194 */
+ YYSYMBOL_1685_195 = 1685, /* $@195 */
+ YYSYMBOL_opt_returning = 1686, /* opt_returning */
+ YYSYMBOL_1687_196 = 1687, /* $@196 */
+ YYSYMBOL_table_wild_list = 1688, /* table_wild_list */
+ YYSYMBOL_table_wild_one = 1689, /* table_wild_one */
+ YYSYMBOL_opt_wild = 1690, /* opt_wild */
+ YYSYMBOL_opt_delete_options = 1691, /* opt_delete_options */
+ YYSYMBOL_opt_delete_option = 1692, /* opt_delete_option */
+ YYSYMBOL_truncate = 1693, /* truncate */
+ YYSYMBOL_1694_197 = 1694, /* $@197 */
+ YYSYMBOL_1695_198 = 1695, /* $@198 */
+ YYSYMBOL_opt_table_sym = 1696, /* opt_table_sym */
+ YYSYMBOL_opt_profile_defs = 1697, /* opt_profile_defs */
+ YYSYMBOL_profile_defs = 1698, /* profile_defs */
+ YYSYMBOL_profile_def = 1699, /* profile_def */
+ YYSYMBOL_opt_profile_args = 1700, /* opt_profile_args */
+ YYSYMBOL_show = 1701, /* show */
+ YYSYMBOL_1702_199 = 1702, /* $@199 */
+ YYSYMBOL_show_param = 1703, /* show_param */
+ YYSYMBOL_1704_200 = 1704, /* $@200 */
+ YYSYMBOL_1705_201 = 1705, /* $@201 */
+ YYSYMBOL_show_engine_param = 1706, /* show_engine_param */
+ YYSYMBOL_master_or_binary = 1707, /* master_or_binary */
+ YYSYMBOL_opt_storage = 1708, /* opt_storage */
+ YYSYMBOL_opt_db = 1709, /* opt_db */
+ YYSYMBOL_opt_full = 1710, /* opt_full */
+ YYSYMBOL_from_or_in = 1711, /* from_or_in */
+ YYSYMBOL_binlog_in = 1712, /* binlog_in */
+ YYSYMBOL_binlog_from = 1713, /* binlog_from */
+ YYSYMBOL_wild_and_where = 1714, /* wild_and_where */
+ YYSYMBOL_describe = 1715, /* describe */
+ YYSYMBOL_1716_202 = 1716, /* $@202 */
+ YYSYMBOL_1717_203 = 1717, /* $@203 */
+ YYSYMBOL_explainable_command = 1718, /* explainable_command */
+ YYSYMBOL_describe_command = 1719, /* describe_command */
+ YYSYMBOL_analyze_stmt_command = 1720, /* analyze_stmt_command */
+ YYSYMBOL_opt_extended_describe = 1721, /* opt_extended_describe */
+ YYSYMBOL_opt_format_json = 1722, /* opt_format_json */
+ YYSYMBOL_opt_describe_column = 1723, /* opt_describe_column */
+ YYSYMBOL_explain_for_connection = 1724, /* explain_for_connection */
+ YYSYMBOL_flush = 1725, /* flush */
+ YYSYMBOL_1726_204 = 1726, /* $@204 */
+ YYSYMBOL_flush_options = 1727, /* flush_options */
+ YYSYMBOL_1728_205 = 1728, /* $@205 */
+ YYSYMBOL_opt_flush_lock = 1729, /* opt_flush_lock */
+ YYSYMBOL_flush_lock = 1730, /* flush_lock */
+ YYSYMBOL_1731_206 = 1731, /* $@206 */
+ YYSYMBOL_flush_options_list = 1732, /* flush_options_list */
+ YYSYMBOL_flush_option = 1733, /* flush_option */
+ YYSYMBOL_opt_table_list = 1734, /* opt_table_list */
+ YYSYMBOL_backup = 1735, /* backup */
+ YYSYMBOL_backup_statements = 1736, /* backup_statements */
+ YYSYMBOL_1737_207 = 1737, /* $@207 */
+ YYSYMBOL_opt_delete_gtid_domain = 1738, /* opt_delete_gtid_domain */
+ YYSYMBOL_delete_domain_id_list = 1739, /* delete_domain_id_list */
+ YYSYMBOL_delete_domain_id = 1740, /* delete_domain_id */
+ YYSYMBOL_optional_flush_tables_arguments = 1741, /* optional_flush_tables_arguments */
+ YYSYMBOL_reset = 1742, /* reset */
+ YYSYMBOL_1743_208 = 1743, /* $@208 */
+ YYSYMBOL_reset_options = 1744, /* reset_options */
+ YYSYMBOL_reset_option = 1745, /* reset_option */
+ YYSYMBOL_1746_209 = 1746, /* $@209 */
+ YYSYMBOL_1747_210 = 1747, /* $@210 */
+ YYSYMBOL_slave_reset_options = 1748, /* slave_reset_options */
+ YYSYMBOL_master_reset_options = 1749, /* master_reset_options */
+ YYSYMBOL_purge = 1750, /* purge */
+ YYSYMBOL_1751_211 = 1751, /* $@211 */
+ YYSYMBOL_kill = 1752, /* kill */
+ YYSYMBOL_1753_212 = 1753, /* $@212 */
+ YYSYMBOL_kill_type = 1754, /* kill_type */
+ YYSYMBOL_kill_option = 1755, /* kill_option */
+ YYSYMBOL_opt_connection = 1756, /* opt_connection */
+ YYSYMBOL_kill_expr = 1757, /* kill_expr */
+ YYSYMBOL_shutdown = 1758, /* shutdown */
+ YYSYMBOL_1759_213 = 1759, /* $@213 */
+ YYSYMBOL_shutdown_option = 1760, /* shutdown_option */
+ YYSYMBOL_use = 1761, /* use */
+ YYSYMBOL_load = 1762, /* load */
+ YYSYMBOL_1763_214 = 1763, /* $@214 */
+ YYSYMBOL_1764_215 = 1764, /* $@215 */
+ YYSYMBOL_1765_216 = 1765, /* $@216 */
+ YYSYMBOL_1766_217 = 1766, /* $@217 */
+ YYSYMBOL_data_or_xml = 1767, /* data_or_xml */
+ YYSYMBOL_opt_local = 1768, /* opt_local */
+ YYSYMBOL_load_data_lock = 1769, /* load_data_lock */
+ YYSYMBOL_opt_duplicate = 1770, /* opt_duplicate */
+ YYSYMBOL_opt_field_term = 1771, /* opt_field_term */
+ YYSYMBOL_field_term_list = 1772, /* field_term_list */
+ YYSYMBOL_field_term = 1773, /* field_term */
+ YYSYMBOL_opt_line_term = 1774, /* opt_line_term */
+ YYSYMBOL_line_term_list = 1775, /* line_term_list */
+ YYSYMBOL_line_term = 1776, /* line_term */
+ YYSYMBOL_opt_xml_rows_identified_by = 1777, /* opt_xml_rows_identified_by */
+ YYSYMBOL_opt_ignore_lines = 1778, /* opt_ignore_lines */
+ YYSYMBOL_lines_or_rows = 1779, /* lines_or_rows */
+ YYSYMBOL_opt_field_or_var_spec = 1780, /* opt_field_or_var_spec */
+ YYSYMBOL_fields_or_vars = 1781, /* fields_or_vars */
+ YYSYMBOL_field_or_var = 1782, /* field_or_var */
+ YYSYMBOL_opt_load_data_set_spec = 1783, /* opt_load_data_set_spec */
+ YYSYMBOL_load_data_set_list = 1784, /* load_data_set_list */
+ YYSYMBOL_load_data_set_elem = 1785, /* load_data_set_elem */
+ YYSYMBOL_text_literal = 1786, /* text_literal */
+ YYSYMBOL_text_string = 1787, /* text_string */
+ YYSYMBOL_hex_or_bin_String = 1788, /* hex_or_bin_String */
+ YYSYMBOL_param_marker = 1789, /* param_marker */
+ YYSYMBOL_signed_literal = 1790, /* signed_literal */
+ YYSYMBOL_literal = 1791, /* literal */
+ YYSYMBOL_NUM_literal = 1792, /* NUM_literal */
+ YYSYMBOL_temporal_literal = 1793, /* temporal_literal */
+ YYSYMBOL_with_clause = 1794, /* with_clause */
+ YYSYMBOL_1795_218 = 1795, /* $@218 */
+ YYSYMBOL_opt_recursive = 1796, /* opt_recursive */
+ YYSYMBOL_with_list = 1797, /* with_list */
+ YYSYMBOL_with_list_element = 1798, /* with_list_element */
+ YYSYMBOL_opt_cycle = 1799, /* opt_cycle */
+ YYSYMBOL_1800_219 = 1800, /* $@219 */
+ YYSYMBOL_opt_with_column_list = 1801, /* opt_with_column_list */
+ YYSYMBOL_with_column_list = 1802, /* with_column_list */
+ YYSYMBOL_ident_sys_alloc = 1803, /* ident_sys_alloc */
+ YYSYMBOL_comma_separated_ident_list = 1804, /* comma_separated_ident_list */
+ YYSYMBOL_with_element_head = 1805, /* with_element_head */
+ YYSYMBOL_insert_ident = 1806, /* insert_ident */
+ YYSYMBOL_table_wild = 1807, /* table_wild */
+ YYSYMBOL_select_sublist_qualified_asterisk = 1808, /* select_sublist_qualified_asterisk */
+ YYSYMBOL_order_ident = 1809, /* order_ident */
+ YYSYMBOL_simple_ident = 1810, /* simple_ident */
+ YYSYMBOL_simple_ident_nospvar = 1811, /* simple_ident_nospvar */
+ YYSYMBOL_field_ident = 1812, /* field_ident */
+ YYSYMBOL_table_ident = 1813, /* table_ident */
+ YYSYMBOL_table_ident_opt_wild = 1814, /* table_ident_opt_wild */
+ YYSYMBOL_table_ident_nodb = 1815, /* table_ident_nodb */
+ YYSYMBOL_IDENT_cli = 1816, /* IDENT_cli */
+ YYSYMBOL_ident_cli = 1817, /* ident_cli */
+ YYSYMBOL_IDENT_sys = 1818, /* IDENT_sys */
+ YYSYMBOL_ident_cli_func = 1819, /* ident_cli_func */
+ YYSYMBOL_ident_func = 1820, /* ident_func */
+ YYSYMBOL_TEXT_STRING_sys = 1821, /* TEXT_STRING_sys */
+ YYSYMBOL_TEXT_STRING_literal = 1822, /* TEXT_STRING_literal */
+ YYSYMBOL_TEXT_STRING_filesystem = 1823, /* TEXT_STRING_filesystem */
+ YYSYMBOL_ident_table_alias = 1824, /* ident_table_alias */
+ YYSYMBOL_ident_cli_set_usual_case = 1825, /* ident_cli_set_usual_case */
+ YYSYMBOL_ident_sysvar_name = 1826, /* ident_sysvar_name */
+ YYSYMBOL_ident = 1827, /* ident */
+ YYSYMBOL_label_ident = 1828, /* label_ident */
+ YYSYMBOL_ident_or_text = 1829, /* ident_or_text */
+ YYSYMBOL_user_maybe_role = 1830, /* user_maybe_role */
+ YYSYMBOL_user_or_role = 1831, /* user_or_role */
+ YYSYMBOL_user = 1832, /* user */
+ YYSYMBOL_keyword_table_alias = 1833, /* keyword_table_alias */
+ YYSYMBOL_keyword_ident = 1834, /* keyword_ident */
+ YYSYMBOL_keyword_sysvar_name = 1835, /* keyword_sysvar_name */
+ YYSYMBOL_keyword_set_usual_case = 1836, /* keyword_set_usual_case */
+ YYSYMBOL_non_reserved_keyword_udt = 1837, /* non_reserved_keyword_udt */
+ YYSYMBOL_keyword_sp_var_not_label = 1838, /* keyword_sp_var_not_label */
+ YYSYMBOL_keyword_sp_head = 1839, /* keyword_sp_head */
+ YYSYMBOL_keyword_verb_clause = 1840, /* keyword_verb_clause */
+ YYSYMBOL_keyword_set_special_case = 1841, /* keyword_set_special_case */
+ YYSYMBOL_keyword_sysvar_type = 1842, /* keyword_sysvar_type */
+ YYSYMBOL_keyword_data_type = 1843, /* keyword_data_type */
+ YYSYMBOL_keyword_cast_type = 1844, /* keyword_cast_type */
+ YYSYMBOL_keyword_func_sp_var_and_label = 1845, /* keyword_func_sp_var_and_label */
+ YYSYMBOL_keyword_func_sp_var_not_label = 1846, /* keyword_func_sp_var_not_label */
+ YYSYMBOL_keyword_sp_var_and_label = 1847, /* keyword_sp_var_and_label */
+ YYSYMBOL_reserved_keyword_udt_not_param_type = 1848, /* reserved_keyword_udt_not_param_type */
+ YYSYMBOL_set = 1849, /* set */
+ YYSYMBOL_1850_220 = 1850, /* $@220 */
+ YYSYMBOL_set_param = 1851, /* set_param */
+ YYSYMBOL_1852_221 = 1852, /* $@221 */
+ YYSYMBOL_1853_222 = 1853, /* $@222 */
+ YYSYMBOL_1854_223 = 1854, /* $@223 */
+ YYSYMBOL_set_stmt_option_list = 1855, /* set_stmt_option_list */
+ YYSYMBOL_start_option_value_list_following_option_type = 1856, /* start_option_value_list_following_option_type */
+ YYSYMBOL_1857_224 = 1857, /* $@224 */
+ YYSYMBOL_option_value_list = 1858, /* option_value_list */
+ YYSYMBOL_option_value = 1859, /* option_value */
+ YYSYMBOL_1860_225 = 1860, /* $@225 */
+ YYSYMBOL_option_type = 1861, /* option_type */
+ YYSYMBOL_opt_var_type = 1862, /* opt_var_type */
+ YYSYMBOL_opt_var_ident_type = 1863, /* opt_var_ident_type */
+ YYSYMBOL_set_stmt_option = 1864, /* set_stmt_option */
+ YYSYMBOL_1865_226 = 1865, /* $@226 */
+ YYSYMBOL_1866_227 = 1866, /* $@227 */
+ YYSYMBOL_1867_228 = 1867, /* $@228 */
+ YYSYMBOL_option_value_following_option_type = 1868, /* option_value_following_option_type */
+ YYSYMBOL_1869_229 = 1869, /* $@229 */
+ YYSYMBOL_1870_230 = 1870, /* $@230 */
+ YYSYMBOL_1871_231 = 1871, /* $@231 */
+ YYSYMBOL_option_value_no_option_type = 1872, /* option_value_no_option_type */
+ YYSYMBOL_1873_232 = 1873, /* $@232 */
+ YYSYMBOL_1874_233 = 1874, /* $@233 */
+ YYSYMBOL_1875_234 = 1875, /* $@234 */
+ YYSYMBOL_1876_235 = 1876, /* $@235 */
+ YYSYMBOL_1877_236 = 1877, /* $@236 */
+ YYSYMBOL_1878_237 = 1878, /* $@237 */
+ YYSYMBOL_1879_238 = 1879, /* $@238 */
+ YYSYMBOL_1880_239 = 1880, /* $@239 */
+ YYSYMBOL_1881_240 = 1881, /* $@240 */
+ YYSYMBOL_1882_241 = 1882, /* $@241 */
+ YYSYMBOL_transaction_characteristics = 1883, /* transaction_characteristics */
+ YYSYMBOL_transaction_access_mode = 1884, /* transaction_access_mode */
+ YYSYMBOL_isolation_level = 1885, /* isolation_level */
+ YYSYMBOL_transaction_access_mode_types = 1886, /* transaction_access_mode_types */
+ YYSYMBOL_isolation_types = 1887, /* isolation_types */
+ YYSYMBOL_text_or_password = 1888, /* text_or_password */
+ YYSYMBOL_set_expr_or_default = 1889, /* set_expr_or_default */
+ YYSYMBOL_lock = 1890, /* lock */
+ YYSYMBOL_1891_242 = 1891, /* $@242 */
+ YYSYMBOL_opt_lock_wait_timeout = 1892, /* opt_lock_wait_timeout */
+ YYSYMBOL_table_or_tables = 1893, /* table_or_tables */
+ YYSYMBOL_table_lock_list = 1894, /* table_lock_list */
+ YYSYMBOL_table_lock = 1895, /* table_lock */
+ YYSYMBOL_lock_option = 1896, /* lock_option */
+ YYSYMBOL_unlock = 1897, /* unlock */
+ YYSYMBOL_1898_243 = 1898, /* $@243 */
+ YYSYMBOL_handler = 1899, /* handler */
+ YYSYMBOL_1900_244 = 1900, /* $@244 */
+ YYSYMBOL_handler_tail = 1901, /* handler_tail */
+ YYSYMBOL_1902_245 = 1902, /* $@245 */
+ YYSYMBOL_handler_read_or_scan = 1903, /* handler_read_or_scan */
+ YYSYMBOL_handler_scan_function = 1904, /* handler_scan_function */
+ YYSYMBOL_handler_rkey_function = 1905, /* handler_rkey_function */
+ YYSYMBOL_1906_246 = 1906, /* $@246 */
+ YYSYMBOL_handler_rkey_mode = 1907, /* handler_rkey_mode */
+ YYSYMBOL_revoke = 1908, /* revoke */
+ YYSYMBOL_revoke_command = 1909, /* revoke_command */
+ YYSYMBOL_admin_option_for_role = 1910, /* admin_option_for_role */
+ YYSYMBOL_grant = 1911, /* grant */
+ YYSYMBOL_grant_command = 1912, /* grant_command */
+ YYSYMBOL_opt_with_admin = 1913, /* opt_with_admin */
+ YYSYMBOL_opt_with_admin_option = 1914, /* opt_with_admin_option */
+ YYSYMBOL_role_list = 1915, /* role_list */
+ YYSYMBOL_current_role = 1916, /* current_role */
+ YYSYMBOL_role_name = 1917, /* role_name */
+ YYSYMBOL_grant_role = 1918, /* grant_role */
+ YYSYMBOL_opt_table = 1919, /* opt_table */
+ YYSYMBOL_grant_privileges = 1920, /* grant_privileges */
+ YYSYMBOL_opt_privileges = 1921, /* opt_privileges */
+ YYSYMBOL_object_privilege_list = 1922, /* object_privilege_list */
+ YYSYMBOL_column_list_privilege = 1923, /* column_list_privilege */
+ YYSYMBOL_column_privilege = 1924, /* column_privilege */
+ YYSYMBOL_object_privilege = 1925, /* object_privilege */
+ YYSYMBOL_opt_and = 1926, /* opt_and */
+ YYSYMBOL_require_list = 1927, /* require_list */
+ YYSYMBOL_require_list_element = 1928, /* require_list_element */
+ YYSYMBOL_grant_ident = 1929, /* grant_ident */
+ YYSYMBOL_user_list = 1930, /* user_list */
+ YYSYMBOL_grant_list = 1931, /* grant_list */
+ YYSYMBOL_user_and_role_list = 1932, /* user_and_role_list */
+ YYSYMBOL_via_or_with = 1933, /* via_or_with */
+ YYSYMBOL_using_or_as = 1934, /* using_or_as */
+ YYSYMBOL_grant_user = 1935, /* grant_user */
+ YYSYMBOL_auth_expression = 1936, /* auth_expression */
+ YYSYMBOL_auth_token = 1937, /* auth_token */
+ YYSYMBOL_opt_auth_str = 1938, /* opt_auth_str */
+ YYSYMBOL_opt_require_clause = 1939, /* opt_require_clause */
+ YYSYMBOL_resource_option = 1940, /* resource_option */
+ YYSYMBOL_resource_option_list = 1941, /* resource_option_list */
+ YYSYMBOL_opt_resource_options = 1942, /* opt_resource_options */
+ YYSYMBOL_opt_grant_options = 1943, /* opt_grant_options */
+ YYSYMBOL_opt_grant_option = 1944, /* opt_grant_option */
+ YYSYMBOL_grant_option_list = 1945, /* grant_option_list */
+ YYSYMBOL_grant_option = 1946, /* grant_option */
+ YYSYMBOL_begin_stmt_mariadb = 1947, /* begin_stmt_mariadb */
+ YYSYMBOL_1948_247 = 1948, /* $@247 */
+ YYSYMBOL_compound_statement = 1949, /* compound_statement */
+ YYSYMBOL_opt_not = 1950, /* opt_not */
+ YYSYMBOL_opt_work = 1951, /* opt_work */
+ YYSYMBOL_opt_chain = 1952, /* opt_chain */
+ YYSYMBOL_opt_release = 1953, /* opt_release */
+ YYSYMBOL_commit = 1954, /* commit */
+ YYSYMBOL_rollback = 1955, /* rollback */
+ YYSYMBOL_savepoint = 1956, /* savepoint */
+ YYSYMBOL_release = 1957, /* release */
+ YYSYMBOL_unit_type_decl = 1958, /* unit_type_decl */
+ YYSYMBOL_union_option = 1959, /* union_option */
+ YYSYMBOL_query_expression_option = 1960, /* query_expression_option */
+ YYSYMBOL_definer_opt = 1961, /* definer_opt */
+ YYSYMBOL_no_definer = 1962, /* no_definer */
+ YYSYMBOL_definer = 1963, /* definer */
+ YYSYMBOL_view_algorithm = 1964, /* view_algorithm */
+ YYSYMBOL_opt_view_suid = 1965, /* opt_view_suid */
+ YYSYMBOL_view_suid = 1966, /* view_suid */
+ YYSYMBOL_view_list_opt = 1967, /* view_list_opt */
+ YYSYMBOL_view_list = 1968, /* view_list */
+ YYSYMBOL_view_select = 1969, /* view_select */
+ YYSYMBOL_1970_248 = 1970, /* $@248 */
+ YYSYMBOL_view_check_option = 1971, /* view_check_option */
+ YYSYMBOL_trigger_action_order = 1972, /* trigger_action_order */
+ YYSYMBOL_trigger_follows_precedes_clause = 1973, /* trigger_follows_precedes_clause */
+ YYSYMBOL_trigger_tail = 1974, /* trigger_tail */
+ YYSYMBOL_1975_249 = 1975, /* $@249 */
+ YYSYMBOL_1976_250 = 1976, /* $@250 */
+ YYSYMBOL_1977_251 = 1977, /* $@251 */
+ YYSYMBOL_1978_252 = 1978, /* $@252 */
+ YYSYMBOL_1979_253 = 1979, /* $@253 */
+ YYSYMBOL_sf_return_type = 1980, /* sf_return_type */
+ YYSYMBOL_1981_254 = 1981, /* $@254 */
+ YYSYMBOL_xa = 1982, /* xa */
+ YYSYMBOL_opt_format_xid = 1983, /* opt_format_xid */
+ YYSYMBOL_xid = 1984, /* xid */
+ YYSYMBOL_begin_or_start = 1985, /* begin_or_start */
+ YYSYMBOL_opt_join_or_resume = 1986, /* opt_join_or_resume */
+ YYSYMBOL_opt_one_phase = 1987, /* opt_one_phase */
+ YYSYMBOL_opt_suspend = 1988, /* opt_suspend */
+ YYSYMBOL_1989_255 = 1989, /* $@255 */
+ YYSYMBOL_opt_migrate = 1990, /* opt_migrate */
+ YYSYMBOL_install = 1991, /* install */
+ YYSYMBOL_uninstall = 1992, /* uninstall */
+ YYSYMBOL_keep_gcc_happy = 1993, /* keep_gcc_happy */
+ YYSYMBOL__empty = 1994, /* _empty */
+ YYSYMBOL_statement = 1995, /* statement */
+ YYSYMBOL_sp_statement = 1996, /* sp_statement */
+ YYSYMBOL_sp_if_then_statements = 1997, /* sp_if_then_statements */
+ YYSYMBOL_sp_case_then_statements = 1998, /* sp_case_then_statements */
+ YYSYMBOL_reserved_keyword_udt_param_type = 1999, /* reserved_keyword_udt_param_type */
+ YYSYMBOL_reserved_keyword_udt = 2000, /* reserved_keyword_udt */
+ YYSYMBOL_keyword_sp_block_section = 2001, /* keyword_sp_block_section */
+ YYSYMBOL_keyword_label = 2002, /* keyword_label */
+ YYSYMBOL_keyword_sp_decl = 2003, /* keyword_sp_decl */
+ YYSYMBOL_opt_truncate_table_storage_clause = 2004, /* opt_truncate_table_storage_clause */
+ YYSYMBOL_ident_for_loop_index = 2005, /* ident_for_loop_index */
+ YYSYMBOL_row_field_name = 2006, /* row_field_name */
+ YYSYMBOL_while_body = 2007, /* while_body */
+ YYSYMBOL_2008_256 = 2008, /* $@256 */
+ YYSYMBOL_for_loop_statements = 2009, /* for_loop_statements */
+ YYSYMBOL_sp_label = 2010, /* sp_label */
+ YYSYMBOL_sp_control_label = 2011, /* sp_control_label */
+ YYSYMBOL_sp_block_label = 2012, /* sp_block_label */
+ YYSYMBOL_sp_opt_default = 2013, /* sp_opt_default */
+ YYSYMBOL_sp_decl_variable_list_anchored = 2014, /* sp_decl_variable_list_anchored */
+ YYSYMBOL_sp_param_name_and_mode = 2015, /* sp_param_name_and_mode */
+ YYSYMBOL_sp_param = 2016, /* sp_param */
+ YYSYMBOL_sp_param_anchored = 2017, /* sp_param_anchored */
+ YYSYMBOL_sf_c_chistics_and_body_standalone = 2018, /* sf_c_chistics_and_body_standalone */
+ YYSYMBOL_2019_257 = 2019, /* $@257 */
+ YYSYMBOL_sp_tail_standalone = 2020, /* sp_tail_standalone */
+ YYSYMBOL_2021_258 = 2021, /* $@258 */
+ YYSYMBOL_2022_259 = 2022, /* $@259 */
+ YYSYMBOL_drop_routine = 2023, /* drop_routine */
+ YYSYMBOL_create_routine = 2024, /* create_routine */
+ YYSYMBOL_2025_260 = 2025, /* $@260 */
+ YYSYMBOL_2026_261 = 2026, /* $@261 */
+ YYSYMBOL_2027_262 = 2027, /* $@262 */
+ YYSYMBOL_sp_decls = 2028, /* sp_decls */
+ YYSYMBOL_sp_decl = 2029, /* sp_decl */
+ YYSYMBOL_sp_decl_body = 2030, /* sp_decl_body */
+ YYSYMBOL_2031_263 = 2031, /* $@263 */
+ YYSYMBOL_sp_proc_stmt_in_returns_clause = 2032, /* sp_proc_stmt_in_returns_clause */
+ YYSYMBOL_sp_proc_stmt = 2033, /* sp_proc_stmt */
+ YYSYMBOL_sp_proc_stmt_compound_ok = 2034, /* sp_proc_stmt_compound_ok */
+ YYSYMBOL_sp_labeled_block = 2035, /* sp_labeled_block */
+ YYSYMBOL_2036_264 = 2036, /* $@264 */
+ YYSYMBOL_sp_unlabeled_block = 2037, /* sp_unlabeled_block */
+ YYSYMBOL_2038_265 = 2038, /* $@265 */
+ YYSYMBOL_sp_unlabeled_block_not_atomic = 2039, /* sp_unlabeled_block_not_atomic */
+ YYSYMBOL_2040_266 = 2040 /* $@266 */
+};
+typedef enum yysymbol_kind_t yysymbol_kind_t;
+
+
+/* Second part of user prologue. */
+#line 330 "/home/buildbot/git/sql/sql_yacc.yy"
+
+/* avoid unintentional %union size increases, it's what a parser stack made of */
+static_assert(sizeof(YYSTYPE) == sizeof(void*)*2+8, "%union size check");
+bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize);
+
+#line 2324 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+
+
+#ifdef short
+# undef short
+#endif
+
+/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure
+ <limits.h> and (if available) <stdint.h> are included
+ so that the code can choose integer types of a good width. */
+
+#ifndef __PTRDIFF_MAX__
+# include <limits.h> /* INFRINGES ON USER NAME SPACE */
+# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
+# include <stdint.h> /* INFRINGES ON USER NAME SPACE */
+# define YY_STDINT_H
+# endif
+#endif
+
+/* Narrow types that promote to a signed type and that can represent a
+ signed or unsigned integer of at least N bits. In tables they can
+ save space and decrease cache pressure. Promoting to a signed type
+ helps avoid bugs in integer arithmetic. */
+
+#ifdef __INT_LEAST8_MAX__
+typedef __INT_LEAST8_TYPE__ yytype_int8;
+#elif defined YY_STDINT_H
+typedef int_least8_t yytype_int8;
+#else
+typedef signed char yytype_int8;
+#endif
+
+#ifdef __INT_LEAST16_MAX__
+typedef __INT_LEAST16_TYPE__ yytype_int16;
+#elif defined YY_STDINT_H
+typedef int_least16_t yytype_int16;
+#else
+typedef short yytype_int16;
+#endif
+
+/* Work around bug in HP-UX 11.23, which defines these macros
+ incorrectly for preprocessor constants. This workaround can likely
+ be removed in 2023, as HPE has promised support for HP-UX 11.23
+ (aka HP-UX 11i v2) only through the end of 2022; see Table 2 of
+ <https://h20195.www2.hpe.com/V2/getpdf.aspx/4AA4-7673ENW.pdf>. */
+#ifdef __hpux
+# undef UINT_LEAST8_MAX
+# undef UINT_LEAST16_MAX
+# define UINT_LEAST8_MAX 255
+# define UINT_LEAST16_MAX 65535
+#endif
+
+#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
+typedef __UINT_LEAST8_TYPE__ yytype_uint8;
+#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
+ && UINT_LEAST8_MAX <= INT_MAX)
+typedef uint_least8_t yytype_uint8;
+#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
+typedef unsigned char yytype_uint8;
+#else
+typedef short yytype_uint8;
+#endif
+
+#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
+typedef __UINT_LEAST16_TYPE__ yytype_uint16;
+#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
+ && UINT_LEAST16_MAX <= INT_MAX)
+typedef uint_least16_t yytype_uint16;
+#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
+typedef unsigned short yytype_uint16;
+#else
+typedef int yytype_uint16;
+#endif
+
+#ifndef YYPTRDIFF_T
+# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
+# define YYPTRDIFF_T __PTRDIFF_TYPE__
+# define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__
+# elif defined PTRDIFF_MAX
+# ifndef ptrdiff_t
+# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
+# endif
+# define YYPTRDIFF_T ptrdiff_t
+# define YYPTRDIFF_MAXIMUM PTRDIFF_MAX
+# else
+# define YYPTRDIFF_T long
+# define YYPTRDIFF_MAXIMUM LONG_MAX
+# endif
+#endif
+
+#ifndef YYSIZE_T
+# ifdef __SIZE_TYPE__
+# define YYSIZE_T __SIZE_TYPE__
+# elif defined size_t
+# define YYSIZE_T size_t
+# elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
+# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
+# define YYSIZE_T size_t
+# else
+# define YYSIZE_T unsigned
+# endif
+#endif
+
+#define YYSIZE_MAXIMUM \
+ YY_CAST (YYPTRDIFF_T, \
+ (YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \
+ ? YYPTRDIFF_MAXIMUM \
+ : YY_CAST (YYSIZE_T, -1)))
+
+#define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X))
+
+
+/* Stored state numbers (used for stacks). */
+typedef yytype_int16 yy_state_t;
+
+/* State numbers in computations. */
+typedef int yy_state_fast_t;
+
+#ifndef YY_
+# if defined YYENABLE_NLS && YYENABLE_NLS
+# if ENABLE_NLS
+# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
+# define YY_(Msgid) dgettext ("bison-runtime", Msgid)
+# endif
+# endif
+# ifndef YY_
+# define YY_(Msgid) Msgid
+# endif
+#endif
+
+
+#ifndef YY_ATTRIBUTE_PURE
+# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
+# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
+# else
+# define YY_ATTRIBUTE_PURE
+# endif
+#endif
+
+#ifndef YY_ATTRIBUTE_UNUSED
+# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
+# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
+# else
+# define YY_ATTRIBUTE_UNUSED
+# endif
+#endif
+
+/* Suppress unused-variable warnings by "using" E. */
+#if ! defined lint || defined __GNUC__
+# define YY_USE(E) ((void) (E))
+#else
+# define YY_USE(E) /* empty */
+#endif
+
+/* Suppress an incorrect diagnostic about yylval being uninitialized. */
+#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__
+# if __GNUC__ * 100 + __GNUC_MINOR__ < 407
+# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
+ _Pragma ("GCC diagnostic push") \
+ _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")
+# else
+# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
+ _Pragma ("GCC diagnostic push") \
+ _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
+ _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
+# endif
+# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
+ _Pragma ("GCC diagnostic pop")
+#else
+# define YY_INITIAL_VALUE(Value) Value
+#endif
+#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+# define YY_IGNORE_MAYBE_UNINITIALIZED_END
+#endif
+#ifndef YY_INITIAL_VALUE
+# define YY_INITIAL_VALUE(Value) /* Nothing. */
+#endif
+
+#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
+# define YY_IGNORE_USELESS_CAST_BEGIN \
+ _Pragma ("GCC diagnostic push") \
+ _Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
+# define YY_IGNORE_USELESS_CAST_END \
+ _Pragma ("GCC diagnostic pop")
+#endif
+#ifndef YY_IGNORE_USELESS_CAST_BEGIN
+# define YY_IGNORE_USELESS_CAST_BEGIN
+# define YY_IGNORE_USELESS_CAST_END
+#endif
+
+
+#define YY_ASSERT(E) ((void) (0 && (E)))
+
+#if !defined yyoverflow
+
+/* The parser invokes alloca or malloc; define the necessary symbols. */
+
+# ifdef YYSTACK_USE_ALLOCA
+# if YYSTACK_USE_ALLOCA
+# ifdef __GNUC__
+# define YYSTACK_ALLOC __builtin_alloca
+# elif defined __BUILTIN_VA_ARG_INCR
+# include <alloca.h> /* INFRINGES ON USER NAME SPACE */
+# elif defined _AIX
+# define YYSTACK_ALLOC __alloca
+# elif defined _MSC_VER
+# include <malloc.h> /* INFRINGES ON USER NAME SPACE */
+# define alloca _alloca
+# else
+# define YYSTACK_ALLOC alloca
+# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
+# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+ /* Use EXIT_SUCCESS as a witness for stdlib.h. */
+# ifndef EXIT_SUCCESS
+# define EXIT_SUCCESS 0
+# endif
+# endif
+# endif
+# endif
+# endif
+
+# ifdef YYSTACK_ALLOC
+ /* Pacify GCC's 'empty if-body' warning. */
+# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
+# ifndef YYSTACK_ALLOC_MAXIMUM
+ /* The OS might guarantee only one guard page at the bottom of the stack,
+ and a page size can be as small as 4096 bytes. So we cannot safely
+ invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
+ to allow for a few compiler-allocated temporary stack slots. */
+# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
+# endif
+# else
+# define YYSTACK_ALLOC YYMALLOC
+# define YYSTACK_FREE YYFREE
+# ifndef YYSTACK_ALLOC_MAXIMUM
+# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
+# endif
+# if (defined __cplusplus && ! defined EXIT_SUCCESS \
+ && ! ((defined YYMALLOC || defined malloc) \
+ && (defined YYFREE || defined free)))
+# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+# ifndef EXIT_SUCCESS
+# define EXIT_SUCCESS 0
+# endif
+# endif
+# ifndef YYMALLOC
+# define YYMALLOC malloc
+# if ! defined malloc && ! defined EXIT_SUCCESS
+void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
+# endif
+# endif
+# ifndef YYFREE
+# define YYFREE free
+# if ! defined free && ! defined EXIT_SUCCESS
+void free (void *); /* INFRINGES ON USER NAME SPACE */
+# endif
+# endif
+# endif
+#endif /* !defined yyoverflow */
+
+#if (! defined yyoverflow \
+ && (! defined __cplusplus \
+ || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
+
+/* A type that is properly aligned for any stack member. */
+union yyalloc
+{
+ yy_state_t yyss_alloc;
+ YYSTYPE yyvs_alloc;
+};
+
+/* The size of the maximum gap between one aligned stack and the next. */
+# define YYSTACK_GAP_MAXIMUM (YYSIZEOF (union yyalloc) - 1)
+
+/* The size of an array large to enough to hold all stacks, each with
+ N elements. */
+# define YYSTACK_BYTES(N) \
+ ((N) * (YYSIZEOF (yy_state_t) + YYSIZEOF (YYSTYPE)) \
+ + YYSTACK_GAP_MAXIMUM)
+
+# define YYCOPY_NEEDED 1
+
+/* Relocate STACK from its old location to the new one. The
+ local variables YYSIZE and YYSTACKSIZE give the old and new number of
+ elements in the stack, and YYPTR gives the new location of the
+ stack. Advance YYPTR to a properly aligned location for the next
+ stack. */
+# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
+ do \
+ { \
+ YYPTRDIFF_T yynewbytes; \
+ YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
+ Stack = &yyptr->Stack_alloc; \
+ yynewbytes = yystacksize * YYSIZEOF (*Stack) + YYSTACK_GAP_MAXIMUM; \
+ yyptr += yynewbytes / YYSIZEOF (*yyptr); \
+ } \
+ while (0)
+
+#endif
+
+#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
+/* Copy COUNT objects from SRC to DST. The source and destination do
+ not overlap. */
+# ifndef YYCOPY
+# if defined __GNUC__ && 1 < __GNUC__
+# define YYCOPY(Dst, Src, Count) \
+ __builtin_memcpy (Dst, Src, YY_CAST (YYSIZE_T, (Count)) * sizeof (*(Src)))
+# else
+# define YYCOPY(Dst, Src, Count) \
+ do \
+ { \
+ YYPTRDIFF_T yyi; \
+ for (yyi = 0; yyi < (Count); yyi++) \
+ (Dst)[yyi] = (Src)[yyi]; \
+ } \
+ while (0)
+# endif
+# endif
+#endif /* !YYCOPY_NEEDED */
+
+/* YYFINAL -- State number of the termination state. */
+#define YYFINAL 740
+/* YYLAST -- Last index in YYTABLE. */
+#define YYLAST 112981
+
+/* YYNTOKENS -- Number of terminals. */
+#define YYNTOKENS 789
+/* YYNNTS -- Number of nonterminals. */
+#define YYNNTS 1252
+/* YYNRULES -- Number of rules. */
+#define YYNRULES 3718
+/* YYNSTATES -- Number of states. */
+#define YYNSTATES 6225
+
+/* YYMAXUTOK -- Last valid token kind. */
+#define YYMAXUTOK 1021
+
+
+/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
+ as returned by yylex, with out-of-bounds checking. */
+#define YYTRANSLATE(YYX) \
+ (0 <= (YYX) && (YYX) <= YYMAXUTOK \
+ ? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \
+ : YYSYMBOL_YYUNDEF)
+
+/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
+ as returned by yylex. */
+static const yytype_int16 yytranslate[] =
+{
+ 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 783, 2, 2, 2, 772, 767, 2,
+ 779, 780, 770, 769, 782, 768, 787, 771, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 788, 786,
+ 765, 763, 764, 2, 3, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 773, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 784, 766, 785, 774, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 1, 2, 4, 5,
+ 6, 7, 8, 9, 10, 11, 12, 13, 14, 15,
+ 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
+ 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
+ 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
+ 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
+ 66, 67, 68, 69, 70, 71, 72, 73, 74, 75,
+ 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
+ 86, 87, 88, 89, 90, 91, 92, 93, 94, 95,
+ 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
+ 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
+ 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
+ 126, 127, 128, 129, 130, 131, 132, 133, 134, 135,
+ 136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
+ 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
+ 156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
+ 166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
+ 176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
+ 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, 660, 661, 662, 663, 664, 665,
+ 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, 681, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, 755,
+ 756, 757, 758, 759, 760, 761, 762, 775, 776, 777,
+ 778, 781
+};
+
+#if YYDEBUG
+/* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
+static const yytype_int16 yyrline[] =
+{
+ 0, 1975, 1975, 1985, 1984, 2009, 2016, 2018, 2022, 2023,
+ 2024, 2029, 2030, 2031, 2032, 2033, 2034, 2035, 2036, 2037,
+ 2038, 2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047,
+ 2048, 2049, 2050, 2051, 2052, 2053, 2054, 2055, 2056, 2057,
+ 2058, 2059, 2060, 2061, 2062, 2063, 2064, 2065, 2066, 2067,
+ 2068, 2069, 2070, 2071, 2072, 2073, 2074, 2075, 2076, 2077,
+ 2078, 2079, 2080, 2081, 2082, 2083, 2084, 2085, 2086, 2087,
+ 2088, 2092, 2099, 2100, 2105, 2104, 2115, 2121, 2123, 2120,
+ 2132, 2134, 2133, 2143, 2148, 2160, 2159, 2176, 2175, 2185,
+ 2186, 2190, 2194, 2198, 2202, 2206, 2210, 2220, 2225, 2229,
+ 2233, 2237, 2241, 2245, 2250, 2254, 2259, 2287, 2291, 2295,
+ 2300, 2303, 2305, 2306, 2310, 2316, 2318, 2319, 2323, 2329,
+ 2331, 2332, 2336, 2343, 2347, 2362, 2366, 2372, 2378, 2384,
+ 2390, 2398, 2402, 2406, 2418, 2421, 2426, 2448, 2460, 2447,
+ 2483, 2482, 2538, 2545, 2537, 2557, 2564, 2556, 2577, 2583,
+ 2576, 2595, 2601, 2594, 2613, 2612, 2626, 2624, 2640, 2638,
+ 2652, 2651, 2662, 2661, 2671, 2678, 2685, 2685, 2688, 2692,
+ 2693, 2697, 2698, 2702, 2707, 2713, 2719, 2727, 2733, 2739,
+ 2747, 2755, 2763, 2771, 2779, 2787, 2799, 2815, 2815, 2819,
+ 2818, 2830, 2831, 2835, 2840, 2845, 2850, 2855, 2860, 2865,
+ 2873, 2872, 2905, 2904, 2911, 2918, 2919, 2925, 2931, 2941,
+ 2947, 2953, 2955, 2962, 2963, 2967, 2977, 2978, 2986, 2986,
+ 3028, 3037, 3038, 3043, 3044, 3045, 3046, 3051, 3056, 3064,
+ 3065, 3069, 3070, 3075, 3077, 3079, 3081, 3083, 3085, 3087,
+ 3093, 3094, 3098, 3099, 3104, 3103, 3114, 3113, 3124, 3123,
+ 3136, 3138, 3141, 3143, 3147, 3151, 3160, 3165, 3165, 3175,
+ 3176, 3180, 3188, 3190, 3194, 3195, 3199, 3200, 3201, 3206,
+ 3205, 3217, 3221, 3222, 3226, 3227, 3232, 3238, 3244, 3254,
+ 3262, 3267, 3275, 3279, 3288, 3286, 3300, 3308, 3313, 3312,
+ 3326, 3328, 3333, 3343, 3342, 3361, 3362, 3363, 3364, 3369,
+ 3371, 3376, 3391, 3399, 3403, 3423, 3424, 3428, 3432, 3438,
+ 3444, 3450, 3456, 3466, 3471, 3479, 3487, 3492, 3498, 3499,
+ 3505, 3508, 3512, 3520, 3537, 3539, 3557, 3563, 3565, 3567,
+ 3569, 3571, 3573, 3575, 3577, 3579, 3581, 3583, 3585, 3587,
+ 3592, 3600, 3616, 3617, 3622, 3628, 3637, 3644, 3653, 3662,
+ 3667, 3681, 3683, 3685, 3694, 3699, 3706, 3715, 3724, 3726,
+ 3728, 3730, 3732, 3734, 3736, 3738, 3740, 3742, 3744, 3746,
+ 3748, 3750, 3755, 3756, 3764, 3776, 3792, 3791, 3802, 3802,
+ 3824, 3825, 3830, 3829, 3837, 3848, 3853, 3859, 3858, 3865,
+ 3864, 3873, 3878, 3884, 3883, 3890, 3889, 3899, 3907, 3915,
+ 3924, 3924, 3947, 3957, 3956, 3977, 3976, 3996, 4002, 4010,
+ 4011, 4015, 4016, 4017, 4021, 4029, 4034, 4039, 4047, 4048,
+ 4056, 4074, 4090, 4110, 4115, 4109, 4127, 4129, 4130, 4131,
+ 4136, 4135, 4206, 4205, 4212, 4217, 4218, 4222, 4223, 4228,
+ 4227, 4243, 4242, 4257, 4267, 4271, 4272, 4277, 4278, 4282,
+ 4290, 4295, 4302, 4311, 4325, 4333, 4342, 4341, 4349, 4348,
+ 4356, 4361, 4368, 4355, 4378, 4377, 4388, 4387, 4397, 4396,
+ 4406, 4413, 4405, 4428, 4427, 4439, 4441, 4446, 4448, 4450,
+ 4456, 4455, 4458, 4459, 4473, 4474, 4478, 4479, 4489, 4494,
+ 4505, 4542, 4543, 4548, 4547, 4563, 4578, 4577, 4599, 4598,
+ 4604, 4612, 4611, 4614, 4616, 4619, 4618, 4627, 4630, 4629,
+ 4638, 4639, 4645, 4646, 4663, 4664, 4668, 4669, 4673, 4687,
+ 4697, 4708, 4717, 4718, 4731, 4733, 4732, 4737, 4735, 4746,
+ 4747, 4751, 4765, 4777, 4778, 4791, 4800, 4822, 4823, 4826,
+ 4828, 4833, 4832, 4856, 4868, 4884, 4883, 4898, 4897, 4911,
+ 4918, 4925, 4945, 4963, 4967, 4994, 5006, 5007, 5012, 5021,
+ 5011, 5046, 5047, 5051, 5062, 5081, 5094, 5120, 5121, 5126,
+ 5125, 5162, 5171, 5172, 5176, 5177, 5181, 5182, 5190, 5191,
+ 5195, 5196, 5200, 5202, 5208, 5214, 5216, 5218, 5220, 5222,
+ 5224, 5229, 5230, 5230, 5239, 5251, 5254, 5262, 5265, 5275,
+ 5276, 5280, 5281, 5285, 5286, 5290, 5291, 5292, 5301, 5304,
+ 5312, 5315, 5322, 5326, 5332, 5334, 5338, 5339, 5343, 5344,
+ 5345, 5349, 5364, 5369, 5374, 5379, 5384, 5389, 5394, 5409,
+ 5415, 5430, 5435, 5450, 5456, 5474, 5479, 5484, 5489, 5494,
+ 5499, 5505, 5504, 5530, 5531, 5532, 5537, 5542, 5547, 5549,
+ 5551, 5553, 5559, 5564, 5569, 5573, 5578, 5582, 5589, 5596,
+ 5601, 5608, 5610, 5614, 5633, 5641, 5650, 5660, 5671, 5672,
+ 5673, 5674, 5675, 5676, 5677, 5681, 5682, 5683, 5687, 5688,
+ 5689, 5690, 5695, 5702, 5709, 5710, 5714, 5715, 5716, 5717,
+ 5718, 5722, 5724, 5735, 5734, 5742, 5741, 5749, 5748, 5756,
+ 5755, 5765, 5762, 5773, 5771, 5780, 5779, 5798, 5806, 5814,
+ 5822, 5823, 5827, 5837, 5838, 5842, 5843, 5847, 5852, 5851,
+ 5890, 5889, 5902, 5901, 5912, 5913, 5917, 5918, 5922, 5923,
+ 5927, 5928, 5932, 5933, 5934, 5935, 5941, 5940, 5948, 5954,
+ 5963, 5964, 5969, 5972, 5976, 5980, 5987, 5988, 5992, 5993,
+ 5997, 6003, 6009, 6010, 6018, 6017, 6039, 6040, 6050, 6058,
+ 6070, 6070, 6073, 6074, 6081, 6088, 6092, 6100, 6101, 6102,
+ 6106, 6107, 6108, 6109, 6110, 6111, 6119, 6123, 6124, 6138,
+ 6142, 6146, 6150, 6152, 6159, 6161, 6167, 6168, 6169, 6170,
+ 6174, 6178, 6183, 6187, 6191, 6195, 6200, 6204, 6211, 6227,
+ 6228, 6235, 6242, 6250, 6254, 6258, 6262, 6266, 6270, 6274,
+ 6278, 6280, 6282, 6284, 6286, 6288, 6290, 6292, 6299, 6301,
+ 6306, 6310, 6311, 6315, 6316, 6320, 6321, 6322, 6323, 6324,
+ 6328, 6329, 6330, 6331, 6332, 6336, 6342, 6343, 6348, 6350,
+ 6357, 6358, 6359, 6363, 6367, 6368, 6369, 6370, 6371, 6372,
+ 6376, 6380, 6381, 6382, 6383, 6386, 6390, 6395, 6396, 6400,
+ 6401, 6405, 6406, 6411, 6416, 6420, 6426, 6431, 6439, 6440,
+ 6447, 6451, 6455, 6456, 6460, 6461, 6465, 6466, 6470, 6478,
+ 6486, 6495, 6499, 6505, 6509, 6510, 6514, 6527, 6533, 6543,
+ 6544, 6548, 6555, 6559, 6560, 6564, 6565, 6569, 6578, 6582,
+ 6583, 6587, 6595, 6596, 6600, 6601, 6605, 6606, 6607, 6615,
+ 6616, 6620, 6624, 6628, 6633, 6634, 6639, 6643, 6649, 6653,
+ 6660, 6661, 6666, 6665, 6678, 6679, 6683, 6686, 6687, 6688,
+ 6689, 6693, 6701, 6708, 6709, 6713, 6723, 6724, 6728, 6729,
+ 6732, 6734, 6738, 6750, 6751, 6755, 6762, 6775, 6776, 6778,
+ 6780, 6786, 6791, 6797, 6803, 6810, 6820, 6821, 6822, 6823,
+ 6824, 6828, 6829, 6833, 6834, 6838, 6839, 6843, 6844, 6845,
+ 6849, 6853, 6865, 6866, 6870, 6871, 6875, 6876, 6880, 6881,
+ 6885, 6886, 6890, 6891, 6895, 6896, 6901, 6902, 6903, 6907,
+ 6909, 6914, 6919, 6921, 6925, 6929, 6936, 6937, 6941, 6945,
+ 6946, 6956, 6957, 6958, 6962, 6963, 6967, 6972, 6980, 6981,
+ 6989, 6995, 7007, 7008, 7012, 7014, 7024, 7040, 7023, 7063,
+ 7062, 7079, 7078, 7093, 7102, 7101, 7109, 7108, 7116, 7115,
+ 7129, 7123, 7137, 7136, 7176, 7175, 7182, 7189, 7197, 7207,
+ 7188, 7216, 7220, 7228, 7231, 7235, 7239, 7247, 7249, 7250,
+ 7251, 7252, 7256, 7257, 7258, 7259, 7263, 7264, 7276, 7277,
+ 7282, 7283, 7286, 7288, 7296, 7304, 7306, 7308, 7309, 7317,
+ 7318, 7324, 7333, 7331, 7344, 7357, 7356, 7369, 7367, 7380,
+ 7387, 7397, 7398, 7404, 7416, 7415, 7455, 7462, 7466, 7472,
+ 7470, 7487, 7489, 7494, 7502, 7501, 7515, 7519, 7518, 7530,
+ 7531, 7535, 7548, 7549, 7553, 7557, 7564, 7569, 7573, 7580,
+ 7587, 7591, 7596, 7604, 7612, 7622, 7633, 7643, 7654, 7664,
+ 7670, 7676, 7683, 7693, 7698, 7704, 7709, 7719, 7724, 7730,
+ 7735, 7739, 7744, 7745, 7746, 7751, 7756, 7760, 7770, 7772,
+ 7773, 7774, 7775, 7779, 7784, 7792, 7797, 7805, 7806, 7810,
+ 7811, 7815, 7815, 7818, 7820, 7824, 7825, 7829, 7830, 7838,
+ 7839, 7840, 7844, 7845, 7850, 7859, 7860, 7861, 7862, 7867,
+ 7866, 7876, 7875, 7883, 7890, 7900, 7917, 7920, 7927, 7931,
+ 7938, 7942, 7946, 7953, 7953, 7959, 7960, 7964, 7965, 7966,
+ 7970, 7971, 7980, 7987, 7988, 7993, 7992, 8004, 8005, 8006,
+ 8010, 8012, 8011, 8018, 8017, 8038, 8039, 8043, 8044, 8048,
+ 8049, 8050, 8054, 8055, 8056, 8061, 8060, 8081, 8082, 8086,
+ 8091, 8092, 8099, 8101, 8106, 8108, 8107, 8120, 8122, 8121,
+ 8135, 8136, 8141, 8150, 8151, 8152, 8156, 8163, 8173, 8181,
+ 8190, 8192, 8191, 8197, 8196, 8219, 8220, 8224, 8225, 8229,
+ 8230, 8231, 8232, 8233, 8234, 8238, 8239, 8244, 8243, 8264,
+ 8265, 8266, 8271, 8270, 8281, 8288, 8294, 8303, 8304, 8308,
+ 8324, 8323, 8336, 8337, 8341, 8342, 8346, 8357, 8368, 8369,
+ 8374, 8373, 8388, 8389, 8393, 8394, 8398, 8409, 8421, 8420,
+ 8428, 8428, 8437, 8438, 8443, 8444, 8454, 8453, 8468, 8467,
+ 8486, 8485, 8502, 8500, 8521, 8522, 8527, 8526, 8540, 8549,
+ 8539, 8559, 8571, 8635, 8640, 8655, 8656, 8671, 8670, 8686,
+ 8685, 8698, 8700, 8715, 8723, 8721, 8736, 8754, 8756, 8766,
+ 8770, 8811, 8820, 8830, 8831, 8835, 8839, 8845, 8852, 8854,
+ 8863, 8867, 8871, 8878, 8887, 8891, 8898, 8915, 8918, 8926,
+ 8929, 8936, 8940, 8944, 8948, 8955, 8956, 8960, 8961, 8970,
+ 8983, 8989, 9000, 9003, 9011, 9014, 9020, 9026, 9035, 9036,
+ 9037, 9057, 9062, 9084, 9090, 9096, 9102, 9103, 9104, 9105,
+ 9106, 9110, 9111, 9112, 9116, 9117, 9118, 9122, 9123, 9128,
+ 9179, 9186, 9229, 9235, 9239, 9245, 9251, 9257, 9263, 9269,
+ 9275, 9281, 9287, 9293, 9299, 9305, 9309, 9315, 9324, 9330,
+ 9338, 9344, 9353, 9359, 9367, 9377, 9383, 9390, 9397, 9405,
+ 9411, 9420, 9424, 9430, 9436, 9442, 9448, 9455, 9461, 9467,
+ 9473, 9479, 9486, 9492, 9498, 9504, 9510, 9516, 9522, 9528,
+ 9534, 9538, 9539, 9543, 9544, 9548, 9549, 9553, 9554, 9558,
+ 9559, 9560, 9561, 9562, 9563, 9567, 9568, 9573, 9576, 9580,
+ 9581, 9582, 9586, 9587, 9588, 9589, 9590, 9591, 9595, 9596,
+ 9597, 9601, 9606, 9613, 9635, 9642, 9651, 9652, 9653, 9654,
+ 9658, 9667, 9668, 9672, 9676, 9677, 9678, 9679, 9680, 9681,
+ 9682, 9714, 9715, 9716, 9717, 9718, 9719, 9720, 9721, 9722,
+ 9730, 9738, 9739, 9746, 9752, 9757, 9767, 9772, 9777, 9783,
+ 9788, 9794, 9805, 9812, 9817, 9822, 9827, 9832, 9837, 9842,
+ 9850, 9851, 9852, 9853, 9861, 9862, 9871, 9872, 9878, 9882,
+ 9888, 9894, 9903, 9904, 9913, 9920, 9934, 9940, 9946, 9955,
+ 9964, 9970, 9976, 9982, 9988, 10003, 10014, 10020, 10026, 10032,
+ 10038, 10044, 10052, 10059, 10063, 10069, 10077, 10086, 10087, 10091,
+ 10095, 10102, 10106, 10126, 10133, 10139, 10146, 10153, 10159, 10165,
+ 10171, 10177, 10184, 10190, 10201, 10208, 10214, 10227, 10232, 10237,
+ 10243, 10249, 10254, 10261, 10268, 10276, 10283, 10290, 10297, 10312,
+ 10318, 10324, 10333, 10344, 10351, 10357, 10365, 10371, 10377, 10383,
+ 10389, 10397, 10409, 10429, 10428, 10504, 10510, 10516, 10522, 10527,
+ 10532, 10537, 10542, 10547, 10552, 10572, 10574, 10579, 10580, 10584,
+ 10585, 10589, 10590, 10594, 10601, 10609, 10636, 10642, 10648, 10654,
+ 10660, 10666, 10675, 10682, 10684, 10681, 10691, 10702, 10708, 10714,
+ 10720, 10726, 10732, 10738, 10744, 10750, 10757, 10756, 10777, 10776,
+ 10807, 10806, 10820, 10829, 10847, 10849, 10851, 10866, 10873, 10880,
+ 10887, 10894, 10901, 10908, 10915, 10922, 10929, 10940, 10947, 10958,
+ 10969, 10989, 10988, 10994, 11011, 11017, 11026, 11035, 11045, 11044,
+ 11056, 11071, 11084, 11089, 11097, 11098, 11103, 11108, 11111, 11113,
+ 11117, 11122, 11130, 11131, 11136, 11143, 11153, 11152, 11169, 11171,
+ 11177, 11183, 11189, 11193, 11194, 11195, 11203, 11204, 11205, 11206,
+ 11207, 11208, 11209, 11210, 11214, 11215, 11216, 11217, 11224, 11225,
+ 11229, 11234, 11242, 11243, 11247, 11254, 11262, 11271, 11281, 11282,
+ 11293, 11294, 11306, 11310, 11314, 11322, 11323, 11327, 11331, 11335,
+ 11342, 11346, 11351, 11352, 11358, 11357, 11386, 11385, 11401, 11410,
+ 11422, 11434, 11435, 11436, 11437, 11442, 11443, 11444, 11445, 11446,
+ 11450, 11454, 11458, 11468, 11475, 11483, 11489, 11482, 11535, 11536,
+ 11542, 11547, 11561, 11569, 11567, 11587, 11585, 11598, 11610, 11608,
+ 11628, 11627, 11639, 11652, 11650, 11671, 11670, 11683, 11697, 11698,
+ 11699, 11703, 11704, 11712, 11713, 11717, 11726, 11727, 11728, 11733,
+ 11734, 11738, 11739, 11743, 11744, 11748, 11749, 11757, 11765, 11773,
+ 11774, 11787, 11803, 11822, 11823, 11828, 11832, 11833, 11834, 11838,
+ 11839, 11844, 11843, 11849, 11848, 11856, 11857, 11860, 11862, 11862,
+ 11866, 11866, 11871, 11872, 11876, 11878, 11883, 11884, 11888, 11899,
+ 11913, 11914, 11915, 11916, 11917, 11918, 11919, 11920, 11921, 11922,
+ 11923, 11924, 11928, 11929, 11930, 11931, 11932, 11933, 11934, 11935,
+ 11936, 11940, 11941, 11942, 11943, 11946, 11948, 11949, 11953, 11954,
+ 11958, 11966, 11968, 11972, 11974, 11973, 11987, 11990, 11989, 12007,
+ 12009, 12013, 12018, 12026, 12027, 12044, 12067, 12068, 12074, 12075,
+ 12079, 12092, 12091, 12100, 12101, 12110, 12111, 12115, 12116, 12120,
+ 12121, 12135, 12136, 12140, 12150, 12159, 12166, 12173, 12183, 12184,
+ 12191, 12201, 12202, 12204, 12206, 12208, 12210, 12219, 12223, 12224,
+ 12228, 12242, 12243, 12249, 12248, 12259, 12265, 12274, 12275, 12276,
+ 12282, 12283, 12288, 12295, 12301, 12306, 12317, 12327, 12338, 12345,
+ 12353, 12363, 12364, 12368, 12369, 12373, 12374, 12379, 12386, 12393,
+ 12400, 12410, 12415, 12420, 12424, 12430, 12436, 12445, 12453, 12457,
+ 12464, 12465, 12469, 12474, 12479, 12492, 12496, 12500, 12504, 12509,
+ 12512, 12516, 12530, 12538, 12549, 12551, 12555, 12556, 12560, 12561,
+ 12562, 12563, 12564, 12565, 12569, 12570, 12571, 12572, 12573, 12577,
+ 12578, 12579, 12580, 12584, 12585, 12586, 12587, 12588, 12592, 12593,
+ 12594, 12595, 12596, 12600, 12605, 12606, 12610, 12611, 12615, 12616,
+ 12617, 12622, 12621, 12653, 12654, 12658, 12659, 12663, 12673, 12673,
+ 12685, 12686, 12689, 12709, 12719, 12724, 12732, 12738, 12749, 12737,
+ 12751, 12766, 12778, 12777, 12800, 12799, 12809, 12808, 12831, 12837,
+ 12841, 12846, 12845, 12854, 12859, 12865, 12872, 12870, 12881, 12885,
+ 12886, 12890, 12902, 12915, 12916, 12920, 12934, 12938, 12947, 12950,
+ 12957, 12958, 12966, 12973, 12965, 12986, 12993, 12985, 13004, 13013,
+ 13022, 13030, 13031, 13035, 13036, 13040, 13041, 13049, 13049, 13052,
+ 13052, 13065, 13066, 13068, 13067, 13080, 13086, 13088, 13092, 13094,
+ 13100, 13104, 13105, 13109, 13110, 13114, 13124, 13125, 13129, 13130,
+ 13134, 13135, 13139, 13140, 13145, 13144, 13161, 13160, 13176, 13177,
+ 13181, 13182, 13186, 13191, 13199, 13207, 13218, 13219, 13228, 13229,
+ 13237, 13239, 13241, 13239, 13251, 13263, 13270, 13280, 13299, 13269,
+ 13306, 13307, 13311, 13318, 13326, 13327, 13331, 13341, 13342, 13349,
+ 13348, 13369, 13372, 13379, 13380, 13390, 13405, 13413, 13426, 13432,
+ 13425, 13437, 13443, 13436, 13451, 13455, 13454, 13488, 13489, 13493,
+ 13508, 13526, 13527, 13531, 13532, 13536, 13537, 13538, 13543, 13554,
+ 13542, 13564, 13566, 13569, 13571, 13574, 13575, 13578, 13582, 13586,
+ 13590, 13594, 13598, 13602, 13606, 13610, 13618, 13621, 13631, 13630,
+ 13649, 13656, 13664, 13672, 13680, 13688, 13696, 13703, 13710, 13716,
+ 13718, 13720, 13729, 13733, 13738, 13737, 13744, 13743, 13750, 13759,
+ 13766, 13771, 13776, 13781, 13786, 13791, 13793, 13795, 13797, 13804,
+ 13812, 13814, 13822, 13829, 13836, 13844, 13850, 13855, 13863, 13871,
+ 13879, 13883, 13887, 13894, 13901, 13908, 13915, 13921, 13927, 13933,
+ 13939, 13945, 13953, 13958, 13965, 13972, 13979, 13986, 13993, 14000,
+ 14005, 14010, 14015, 14020, 14025, 14037, 14045, 14067, 14069, 14071,
+ 14076, 14077, 14080, 14082, 14086, 14087, 14091, 14092, 14096, 14097,
+ 14101, 14102, 14106, 14107, 14111, 14112, 14121, 14133, 14132, 14151,
+ 14150, 14160, 14161, 14162, 14163, 14164, 14165, 14169, 14170, 14174,
+ 14181, 14182, 14184, 14185, 14189, 14190, 14203, 14204, 14205, 14221,
+ 14245, 14244, 14256, 14255, 14267, 14272, 14273, 14286, 14289, 14288,
+ 14301, 14302, 14307, 14309, 14311, 14313, 14315, 14317, 14325, 14327,
+ 14329, 14331, 14336, 14338, 14346, 14348, 14350, 14352, 14354, 14356,
+ 14373, 14374, 14378, 14382, 14395, 14394, 14409, 14419, 14420, 14423,
+ 14425, 14426, 14430, 14446, 14447, 14452, 14451, 14461, 14462, 14466,
+ 14466, 14471, 14470, 14476, 14480, 14481, 14485, 14486, 14493, 14498,
+ 14497, 14512, 14511, 14526, 14527, 14528, 14532, 14533, 14534, 14543,
+ 14544, 14548, 14552, 14560, 14560, 14565, 14566, 14575, 14587, 14601,
+ 14612, 14625, 14586, 14636, 14637, 14641, 14642, 14646, 14647, 14655,
+ 14659, 14660, 14661, 14664, 14666, 14670, 14671, 14675, 14680, 14687,
+ 14692, 14699, 14701, 14705, 14706, 14710, 14715, 14723, 14724, 14728,
+ 14730, 14738, 14739, 14743, 14744, 14745, 14749, 14751, 14756, 14757,
+ 14772, 14773, 14777, 14778, 14782, 14795, 14800, 14805, 14810, 14818,
+ 14826, 14831, 14839, 14847, 14862, 14869, 14875, 14885, 14886, 14894,
+ 14895, 14896, 14897, 14911, 14917, 14923, 14929, 14935, 14941, 14962,
+ 14972, 14982, 14988, 14995, 15005, 15012, 15019, 15030, 15029, 15054,
+ 15055, 15060, 15061, 15066, 15090, 15093, 15092, 15108, 15112, 15117,
+ 15121, 15128, 15134, 15143, 15161, 15162, 15166, 15171, 15179, 15184,
+ 15192, 15197, 15202, 15207, 15213, 15218, 15226, 15231, 15236, 15241,
+ 15247, 15255, 15256, 15267, 15275, 15279, 15285, 15291, 15301, 15307,
+ 15316, 15326, 15327, 15331, 15332, 15333, 15337, 15345, 15346, 15347,
+ 15348, 15352, 15361, 15369, 15377, 15385, 15386, 15394, 15395, 15399,
+ 15400, 15405, 15414, 15415, 15423, 15424, 15432, 15433, 15434, 15438,
+ 15449, 15478, 15487, 15487, 15489, 15499, 15500, 15501, 15502, 15503,
+ 15504, 15505, 15506, 15507, 15508, 15509, 15510, 15515, 15516, 15517,
+ 15518, 15519, 15520, 15521, 15522, 15523, 15524, 15525, 15526, 15527,
+ 15531, 15532, 15533, 15534, 15535, 15536, 15537, 15538, 15539, 15540,
+ 15541, 15542, 15543, 15547, 15548, 15549, 15550, 15551, 15552, 15553,
+ 15554, 15555, 15556, 15557, 15558, 15559, 15563, 15564, 15565, 15566,
+ 15567, 15568, 15569, 15570, 15583, 15584, 15585, 15586, 15587, 15588,
+ 15589, 15590, 15591, 15592, 15593, 15594, 15595, 15596, 15597, 15598,
+ 15599, 15600, 15601, 15602, 15603, 15604, 15605, 15606, 15607, 15608,
+ 15609, 15610, 15611, 15612, 15613, 15614, 15615, 15616, 15617, 15618,
+ 15619, 15620, 15621, 15622, 15623, 15624, 15625, 15626, 15627, 15628,
+ 15629, 15630, 15631, 15632, 15633, 15634, 15635, 15676, 15677, 15678,
+ 15679, 15680, 15681, 15692, 15693, 15694, 15695, 15696, 15697, 15698,
+ 15699, 15700, 15701, 15705, 15706, 15707, 15711, 15712, 15713, 15722,
+ 15723, 15724, 15725, 15726, 15727, 15728, 15729, 15730, 15731, 15732,
+ 15733, 15734, 15735, 15736, 15737, 15738, 15739, 15740, 15741, 15742,
+ 15743, 15744, 15745, 15746, 15747, 15752, 15757, 15758, 15759, 15760,
+ 15761, 15762, 15763, 15764, 15765, 15766, 15767, 15768, 15769, 15770,
+ 15771, 15772, 15773, 15774, 15775, 15776, 15777, 15778, 15779, 15780,
+ 15781, 15782, 15783, 15784, 15785, 15786, 15787, 15788, 15789, 15790,
+ 15791, 15792, 15793, 15794, 15795, 15796, 15797, 15798, 15799, 15800,
+ 15805, 15806, 15807, 15808, 15809, 15810, 15811, 15812, 15813, 15814,
+ 15815, 15816, 15817, 15818, 15819, 15820, 15821, 15822, 15823, 15824,
+ 15825, 15826, 15827, 15828, 15829, 15830, 15831, 15832, 15833, 15834,
+ 15835, 15836, 15837, 15838, 15839, 15840, 15841, 15842, 15843, 15844,
+ 15845, 15846, 15847, 15848, 15849, 15850, 15851, 15852, 15853, 15854,
+ 15855, 15856, 15857, 15858, 15859, 15860, 15861, 15862, 15863, 15864,
+ 15865, 15866, 15867, 15868, 15869, 15870, 15871, 15872, 15873, 15874,
+ 15875, 15876, 15877, 15878, 15879, 15880, 15881, 15882, 15883, 15884,
+ 15885, 15886, 15887, 15888, 15889, 15890, 15891, 15892, 15893, 15894,
+ 15895, 15896, 15897, 15898, 15899, 15900, 15901, 15902, 15903, 15904,
+ 15905, 15906, 15907, 15908, 15909, 15910, 15911, 15912, 15913, 15914,
+ 15915, 15917, 15919, 15920, 15921, 15922, 15923, 15924, 15925, 15926,
+ 15927, 15928, 15929, 15930, 15931, 15932, 15933, 15934, 15935, 15936,
+ 15937, 15938, 15939, 15940, 15941, 15942, 15943, 15944, 15945, 15946,
+ 15947, 15948, 15949, 15950, 15951, 15952, 15953, 15954, 15955, 15956,
+ 15957, 15958, 15959, 15960, 15961, 15962, 15963, 15964, 15965, 15966,
+ 15967, 15968, 15969, 15970, 15971, 15972, 15973, 15974, 15975, 15976,
+ 15977, 15978, 15979, 15980, 15981, 15982, 15983, 15984, 15985, 15986,
+ 15987, 15988, 15989, 15990, 15991, 15992, 15993, 15994, 15995, 15996,
+ 15997, 15998, 15999, 16000, 16001, 16002, 16003, 16004, 16005, 16006,
+ 16007, 16008, 16009, 16010, 16011, 16012, 16013, 16014, 16015, 16016,
+ 16017, 16018, 16019, 16020, 16021, 16022, 16023, 16024, 16025, 16026,
+ 16027, 16028, 16029, 16030, 16031, 16032, 16033, 16034, 16035, 16036,
+ 16037, 16038, 16039, 16040, 16041, 16042, 16043, 16044, 16045, 16046,
+ 16047, 16048, 16049, 16050, 16051, 16052, 16053, 16054, 16055, 16056,
+ 16057, 16058, 16059, 16060, 16061, 16062, 16063, 16064, 16068, 16069,
+ 16075, 16076, 16077, 16078, 16079, 16080, 16081, 16082, 16083, 16084,
+ 16085, 16086, 16087, 16088, 16089, 16091, 16093, 16094, 16095, 16096,
+ 16098, 16100, 16101, 16102, 16103, 16104, 16105, 16110, 16111, 16112,
+ 16113, 16114, 16115, 16116, 16117, 16118, 16119, 16120, 16121, 16122,
+ 16123, 16124, 16125, 16126, 16127, 16128, 16129, 16130, 16131, 16132,
+ 16133, 16134, 16135, 16136, 16137, 16138, 16139, 16140, 16141, 16142,
+ 16143, 16144, 16145, 16146, 16147, 16148, 16149, 16150, 16151, 16152,
+ 16153, 16154, 16155, 16156, 16157, 16158, 16159, 16160, 16161, 16162,
+ 16163, 16164, 16165, 16166, 16167, 16168, 16169, 16170, 16171, 16172,
+ 16173, 16174, 16175, 16176, 16177, 16178, 16179, 16180, 16181, 16182,
+ 16183, 16184, 16185, 16186, 16187, 16188, 16189, 16190, 16191, 16192,
+ 16193, 16194, 16195, 16196, 16197, 16198, 16199, 16200, 16201, 16202,
+ 16203, 16204, 16205, 16206, 16207, 16208, 16209, 16210, 16211, 16212,
+ 16213, 16214, 16215, 16216, 16217, 16218, 16219, 16220, 16221, 16222,
+ 16223, 16224, 16225, 16226, 16227, 16228, 16229, 16233, 16234, 16235,
+ 16236, 16237, 16238, 16239, 16240, 16241, 16242, 16243, 16244, 16245,
+ 16246, 16247, 16248, 16249, 16250, 16251, 16252, 16253, 16254, 16255,
+ 16256, 16257, 16258, 16259, 16260, 16261, 16262, 16263, 16264, 16265,
+ 16266, 16267, 16268, 16269, 16270, 16271, 16272, 16273, 16274, 16275,
+ 16276, 16277, 16278, 16279, 16280, 16281, 16282, 16283, 16284, 16285,
+ 16286, 16287, 16288, 16289, 16290, 16291, 16292, 16293, 16294, 16295,
+ 16296, 16297, 16298, 16299, 16300, 16301, 16302, 16303, 16304, 16305,
+ 16306, 16307, 16308, 16309, 16310, 16311, 16312, 16313, 16314, 16315,
+ 16316, 16317, 16318, 16319, 16320, 16321, 16322, 16323, 16324, 16325,
+ 16326, 16327, 16328, 16329, 16330, 16331, 16332, 16333, 16334, 16335,
+ 16336, 16337, 16338, 16339, 16340, 16341, 16342, 16343, 16344, 16345,
+ 16346, 16347, 16359, 16358, 16371, 16372, 16374, 16373, 16385, 16384,
+ 16391, 16389, 16409, 16410, 16415, 16416, 16418, 16417, 16431, 16432,
+ 16438, 16437, 16442, 16446, 16447, 16448, 16452, 16453, 16454, 16455,
+ 16459, 16460, 16461, 16462, 16471, 16470, 16484, 16483, 16498, 16497,
+ 16515, 16514, 16528, 16527, 16541, 16540, 16556, 16555, 16569, 16568,
+ 16582, 16581, 16594, 16593, 16611, 16610, 16622, 16621, 16633, 16632,
+ 16643, 16661, 16672, 16679, 16688, 16710, 16726, 16738, 16737, 16751,
+ 16750, 16762, 16761, 16775, 16776, 16777, 16778, 16782, 16801, 16819,
+ 16820, 16824, 16825, 16826, 16827, 16832, 16837, 16842, 16853, 16854,
+ 16855, 16861, 16867, 16879, 16878, 16892, 16893, 16899, 16908, 16909,
+ 16913, 16914, 16918, 16937, 16938, 16939, 16944, 16945, 16950, 16949,
+ 16967, 16966, 16978, 16987, 16997, 16996, 17039, 17040, 17044, 17045,
+ 17049, 17050, 17051, 17052, 17054, 17053, 17066, 17067, 17068, 17069,
+ 17070, 17076, 17081, 17086, 17091, 17095, 17100, 17109, 17111, 17116,
+ 17121, 17127, 17133, 17138, 17150, 17151, 17155, 17156, 17160, 17165,
+ 17173, 17182, 17203, 17203, 17205, 17207, 17211, 17212, 17219, 17221,
+ 17225, 17230, 17237, 17241, 17250, 17257, 17258, 17259, 17260, 17264,
+ 17265, 17266, 17267, 17268, 17269, 17270, 17271, 17272, 17273, 17274,
+ 17275, 17276, 17277, 17278, 17279, 17280, 17281, 17282, 17283, 17284,
+ 17285, 17286, 17287, 17288, 17289, 17290, 17291, 17292, 17293, 17294,
+ 17295, 17296, 17297, 17298, 17299, 17300, 17301, 17302, 17303, 17304,
+ 17305, 17309, 17310, 17314, 17315, 17319, 17326, 17333, 17343, 17352,
+ 17358, 17365, 17373, 17378, 17386, 17391, 17399, 17404, 17411, 17411,
+ 17412, 17412, 17415, 17421, 17427, 17432, 17439, 17445, 17452, 17461,
+ 17465, 17471, 17479, 17481, 17485, 17489, 17493, 17500, 17505, 17510,
+ 17515, 17520, 17528, 17529, 17533, 17534, 17539, 17540, 17544, 17545,
+ 17549, 17550, 17554, 17555, 17560, 17559, 17569, 17578, 17579, 17583,
+ 17584, 17589, 17590, 17591, 17596, 17597, 17598, 17602, 17614, 17623,
+ 17629, 17638, 17647, 17660, 17662, 17664, 17672, 17673, 17674, 17678,
+ 17679, 17685, 17686, 17687, 17688, 17689, 17690, 17691, 17701, 17702,
+ 17707, 17720, 17734, 17735, 17736, 17740, 17741, 17745, 17746, 17751,
+ 17752, 17756, 17762, 17771, 17771, 17785, 17786, 17787, 17788, 17798,
+ 17800, 17806, 17812, 17822, 17831, 17837, 17842, 17846, 17820, 17895,
+ 17895, 17910, 17914, 17918, 17922, 17926, 17930, 17938, 17939, 17955,
+ 17962, 17969, 17982, 17983, 17984, 17988, 17989, 17990, 17994, 17995,
+ 18000, 18002, 18001, 18007, 18008, 18012, 18017, 18024, 18029, 18038,
+ 18044, 18052, 18056, 18060, 18064, 18068, 18069, 18070, 18074, 18075,
+ 18080, 18081, 18087, 18088, 18089, 18090, 18091, 18092, 18093, 18097,
+ 18098, 18099, 18100, 18101, 18102, 18103, 18104, 18105, 18106, 18107,
+ 18108, 18112, 18117, 18121, 18130, 18129, 18142, 18147, 18151, 18155,
+ 18164, 18165, 18169, 18177, 18188, 18193, 18197, 18202, 18207, 18211,
+ 18218, 18224, 18229, 18239, 18238, 18253, 18261, 18252, 18273, 18278,
+ 18283, 18293, 18292, 18303, 18301, 18315, 18313, 18325, 18336, 18340,
+ 18352, 18357, 18358, 18365, 18367, 18366, 18394, 18395, 18396, 18397,
+ 18398, 18402, 18403, 18404, 18405, 18406, 18407, 18408, 18409, 18413,
+ 18414, 18415, 18416, 18423, 18421, 18438, 18437, 18452, 18451
+};
+#endif
+
+/** Accessing symbol of state STATE. */
+#define YY_ACCESSING_SYMBOL(State) YY_CAST (yysymbol_kind_t, yystos[State])
+
+#if YYDEBUG || 0
+/* The user-facing name of the symbol whose (internal) number is
+ YYSYMBOL. No bounds checking. */
+static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED;
+
+/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
+ First, the terminals, then, starting at YYNTOKENS, nonterminals. */
+static const char *const yytname[] =
+{
+ "\"end of file\"", "error", "\"invalid token\"", "'@'", "ABORT_SYM",
+ "IMPOSSIBLE_ACTION", "FORCE_LOOKAHEAD", "END_OF_INPUT",
+ "COLON_ORACLE_SYM", "PARAM_MARKER", "FOR_SYSTEM_TIME_SYM",
+ "LEFT_PAREN_ALT", "LEFT_PAREN_WITH", "LEFT_PAREN_LIKE",
+ "ORACLE_CONCAT_SYM", "PERCENT_ORACLE_SYM", "WITH_CUBE_SYM",
+ "WITH_ROLLUP_SYM", "WITH_SYSTEM_SYM", "IDENT", "IDENT_QUOTED",
+ "LEX_HOSTNAME", "UNDERSCORE_CHARSET", "BIN_NUM", "DECIMAL_NUM",
+ "FLOAT_NUM", "HEX_NUM", "HEX_STRING", "LONG_NUM", "NCHAR_STRING", "NUM",
+ "TEXT_STRING", "ULONGLONG_NUM", "AND_AND_SYM", "DOT_DOT_SYM",
+ "EQUAL_SYM", "GE", "LE", "MYSQL_CONCAT_SYM", "NE", "NOT2_SYM", "OR2_SYM",
+ "SET_VAR", "SHIFT_LEFT", "SHIFT_RIGHT", "ACCESSIBLE_SYM", "ADD", "ALL",
+ "ALTER", "ANALYZE_SYM", "AND_SYM", "ASC", "ASENSITIVE_SYM", "AS",
+ "BEFORE_SYM", "BETWEEN_SYM", "BIGINT", "BINARY", "BIT_AND", "BIT_OR",
+ "BIT_XOR", "BLOB_MARIADB_SYM", "BLOB_ORACLE_SYM", "BODY_ORACLE_SYM",
+ "BOTH", "BY", "CALL_SYM", "CASCADE", "CASE_SYM", "CAST_SYM", "CHANGE",
+ "CHAR_SYM", "CHECK_SYM", "COLLATE_SYM", "CONDITION_SYM", "CONSTRAINT",
+ "CONTINUE_MARIADB_SYM", "CONTINUE_ORACLE_SYM", "CONVERT_SYM",
+ "COUNT_SYM", "CREATE", "CROSS", "CUME_DIST_SYM", "CURDATE",
+ "CURRENT_ROLE", "CURRENT_USER", "CURSOR_SYM", "CURTIME", "DATABASE",
+ "DATABASES", "DATE_ADD_INTERVAL", "DATE_SUB_INTERVAL", "DAY_HOUR_SYM",
+ "DAY_MICROSECOND_SYM", "DAY_MINUTE_SYM", "DAY_SECOND_SYM", "DECIMAL_SYM",
+ "DECLARE_MARIADB_SYM", "DECLARE_ORACLE_SYM", "DEFAULT",
+ "DELETE_DOMAIN_ID_SYM", "DELETE_SYM", "DENSE_RANK_SYM", "DESCRIBE",
+ "DESC", "DETERMINISTIC_SYM", "DISTINCT", "DIV_SYM", "DO_DOMAIN_IDS_SYM",
+ "DOUBLE_SYM", "DROP", "DUAL_SYM", "EACH_SYM", "ELSEIF_MARIADB_SYM",
+ "ELSE", "ELSIF_ORACLE_SYM", "EMPTY_SYM", "ENCLOSED", "ESCAPED",
+ "EXCEPT_SYM", "EXISTS", "EXTRACT_SYM", "FALSE_SYM", "FETCH_SYM",
+ "FIRST_VALUE_SYM", "FLOAT_SYM", "FOREIGN", "FOR_SYM", "FROM",
+ "FULLTEXT_SYM", "GOTO_ORACLE_SYM", "GRANT", "GROUP_CONCAT_SYM",
+ "JSON_ARRAYAGG_SYM", "JSON_OBJECTAGG_SYM", "JSON_TABLE_SYM", "GROUP_SYM",
+ "HAVING", "HOUR_MICROSECOND_SYM", "HOUR_MINUTE_SYM", "HOUR_SECOND_SYM",
+ "IF_SYM", "IGNORE_DOMAIN_IDS_SYM", "IGNORE_SYM", "IGNORED_SYM",
+ "INDEX_SYM", "INFILE", "INNER_SYM", "INOUT_SYM", "INSENSITIVE_SYM",
+ "INSERT", "IN_SYM", "INTERSECT_SYM", "INTERVAL_SYM", "INTO", "INT_SYM",
+ "IS", "ITERATE_SYM", "JOIN_SYM", "KEYS", "KEY_SYM", "KILL_SYM",
+ "LAG_SYM", "LEADING", "LEAD_SYM", "LEAVE_SYM", "LEFT", "LIKE", "LIMIT",
+ "LINEAR_SYM", "LINES", "LOAD", "LOCATOR_SYM", "LOCK_SYM", "LONGBLOB",
+ "LONG_SYM", "LONGTEXT", "LOOP_SYM", "LOW_PRIORITY",
+ "MASTER_SSL_VERIFY_SERVER_CERT_SYM", "MATCH", "MAX_SYM", "MAXVALUE_SYM",
+ "MEDIAN_SYM", "MEDIUMBLOB", "MEDIUMINT", "MEDIUMTEXT", "MIN_SYM",
+ "MINUS_ORACLE_SYM", "MINUTE_MICROSECOND_SYM", "MINUTE_SECOND_SYM",
+ "MODIFIES_SYM", "MOD_SYM", "NATURAL", "NEG", "NESTED_SYM", "NOT_SYM",
+ "NO_WRITE_TO_BINLOG", "NOW_SYM", "NTH_VALUE_SYM", "NTILE_SYM",
+ "NULL_SYM", "NUMERIC_SYM", "ON", "OPTIMIZE", "OPTIONALLY", "ORDER_SYM",
+ "ORDINALITY_SYM", "OR_SYM", "OTHERS_ORACLE_SYM", "OUTER", "OUTFILE",
+ "OUT_SYM", "OVER_SYM", "PACKAGE_ORACLE_SYM", "PAGE_CHECKSUM_SYM",
+ "PARSE_VCOL_EXPR_SYM", "PARTITION_SYM", "PATH_SYM",
+ "PERCENTILE_CONT_SYM", "PERCENTILE_DISC_SYM", "PERCENT_RANK_SYM",
+ "PORTION_SYM", "POSITION_SYM", "PRECISION", "PRIMARY_SYM",
+ "PROCEDURE_SYM", "PURGE", "RAISE_ORACLE_SYM", "RANGE_SYM", "RANK_SYM",
+ "READS_SYM", "READ_SYM", "READ_WRITE_SYM", "REAL", "RECURSIVE_SYM",
+ "REFERENCES", "REF_SYSTEM_ID_SYM", "REGEXP", "RELEASE_SYM", "RENAME",
+ "REPEAT_SYM", "REQUIRE_SYM", "RESIGNAL_SYM", "RESTRICT", "RETURNING_SYM",
+ "RETURN_MARIADB_SYM", "RETURN_ORACLE_SYM", "REVOKE", "RIGHT",
+ "ROW_NUMBER_SYM", "ROWS_SYM", "ROWTYPE_ORACLE_SYM",
+ "SECOND_MICROSECOND_SYM", "SELECT_SYM", "SENSITIVE_SYM", "SEPARATOR_SYM",
+ "SERVER_OPTIONS", "SET", "SHOW", "SIGNAL_SYM", "SMALLINT", "SPATIAL_SYM",
+ "SPECIFIC_SYM", "SQL_BIG_RESULT", "SQLEXCEPTION_SYM", "SQL_SMALL_RESULT",
+ "SQLSTATE_SYM", "SQL_SYM", "SQLWARNING_SYM", "SSL_SYM", "STARTING",
+ "STATS_AUTO_RECALC_SYM", "STATS_PERSISTENT_SYM",
+ "STATS_SAMPLE_PAGES_SYM", "STDDEV_SAMP_SYM", "STD_SYM", "STRAIGHT_JOIN",
+ "SUM_SYM", "SYSDATE", "TABLE_REF_PRIORITY", "TABLE_SYM", "TERMINATED",
+ "THEN_SYM", "TINYBLOB", "TINYINT", "TINYTEXT", "TO_SYM", "TRAILING",
+ "TRIGGER_SYM", "TRUE_SYM", "UNDO_SYM", "UNION_SYM", "UNIQUE_SYM",
+ "UNLOCK_SYM", "UNSIGNED", "UPDATE_SYM", "USAGE", "USE_SYM", "USING",
+ "UTC_DATE_SYM", "UTC_TIMESTAMP_SYM", "UTC_TIME_SYM", "VALUES_IN_SYM",
+ "VALUES_LESS_SYM", "VALUES", "VARBINARY", "VARCHAR", "VARIANCE_SYM",
+ "VAR_SAMP_SYM", "VARYING", "WHEN_SYM", "WHERE", "WHILE_SYM", "WITH",
+ "XOR", "YEAR_MONTH_SYM", "ZEROFILL", "BODY_MARIADB_SYM",
+ "ELSEIF_ORACLE_SYM", "ELSIF_MARIADB_SYM", "EXCEPTION_ORACLE_SYM",
+ "GOTO_MARIADB_SYM", "OTHERS_MARIADB_SYM", "PACKAGE_MARIADB_SYM",
+ "RAISE_MARIADB_SYM", "ROWTYPE_MARIADB_SYM", "ROWNUM_SYM", "REPLACE",
+ "SUBSTRING", "TRIM", "ACCOUNT_SYM", "ACTION", "ADMIN_SYM", "ADDDATE_SYM",
+ "AFTER_SYM", "AGAINST", "AGGREGATE_SYM", "ALGORITHM_SYM", "ALWAYS_SYM",
+ "ANY_SYM", "ASCII_SYM", "AT_SYM", "ATOMIC_SYM", "AUTHORS_SYM",
+ "AUTOEXTEND_SIZE_SYM", "AUTO_INC", "AUTO_SYM", "AVG_ROW_LENGTH",
+ "AVG_SYM", "BACKUP_SYM", "BEGIN_MARIADB_SYM", "BEGIN_ORACLE_SYM",
+ "BINLOG_SYM", "BIT_SYM", "BLOCK_SYM", "BOOL_SYM", "BOOLEAN_SYM",
+ "BTREE_SYM", "BYTE_SYM", "CACHE_SYM", "CASCADED", "CATALOG_NAME_SYM",
+ "CHAIN_SYM", "CHANGED", "CHANNEL_SYM", "CHARSET", "CHECKPOINT_SYM",
+ "CHECKSUM_SYM", "CIPHER_SYM", "CLASS_ORIGIN_SYM", "CLIENT_SYM",
+ "CLOB_MARIADB_SYM", "CLOB_ORACLE_SYM", "CLOSE_SYM", "COALESCE",
+ "CODE_SYM", "COLLATION_SYM", "COLUMNS", "COLUMN_ADD_SYM",
+ "COLUMN_CHECK_SYM", "COLUMN_CREATE_SYM", "COLUMN_DELETE_SYM",
+ "COLUMN_GET_SYM", "COLUMN_SYM", "COLUMN_NAME_SYM", "COMMENT_SYM",
+ "COMMITTED_SYM", "COMMIT_SYM", "COMPACT_SYM", "COMPLETION_SYM",
+ "COMPRESSED_SYM", "CONCURRENT", "CONNECTION_SYM", "CONSISTENT_SYM",
+ "CONSTRAINT_CATALOG_SYM", "CONSTRAINT_NAME_SYM", "CONSTRAINT_SCHEMA_SYM",
+ "CONTAINS_SYM", "CONTEXT_SYM", "CONTRIBUTORS_SYM", "CPU_SYM", "CUBE_SYM",
+ "CURRENT_SYM", "CURRENT_POS_SYM", "CURSOR_NAME_SYM", "CYCLE_SYM",
+ "DATAFILE_SYM", "DATA_SYM", "DATETIME", "DATE_SYM", "DAY_SYM",
+ "DEALLOCATE_SYM", "DEFINER_SYM", "DELAYED_SYM", "DELAY_KEY_WRITE_SYM",
+ "DES_KEY_FILE", "DIAGNOSTICS_SYM", "DIRECTORY_SYM", "DISABLE_SYM",
+ "DISCARD", "DISK_SYM", "DO_SYM", "DUMPFILE", "DUPLICATE_SYM",
+ "DYNAMIC_SYM", "ENABLE_SYM", "END", "ENDS_SYM", "ENGINES_SYM",
+ "ENGINE_SYM", "ENUM", "ERROR_SYM", "ERRORS", "ESCAPE_SYM", "EVENTS_SYM",
+ "EVENT_SYM", "EVERY_SYM", "EXCHANGE_SYM", "EXAMINED_SYM", "EXCLUDE_SYM",
+ "EXECUTE_SYM", "EXCEPTION_MARIADB_SYM", "EXIT_MARIADB_SYM",
+ "EXIT_ORACLE_SYM", "EXPANSION_SYM", "EXPIRE_SYM", "EXPORT_SYM",
+ "EXTENDED_SYM", "EXTENT_SIZE_SYM", "FAST_SYM", "FAULTS_SYM",
+ "FEDERATED_SYM", "FILE_SYM", "FIRST_SYM", "FIXED_SYM", "FLUSH_SYM",
+ "FOLLOWS_SYM", "FOLLOWING_SYM", "FORCE_SYM", "FORMAT_SYM", "FOUND_SYM",
+ "FULL", "FUNCTION_SYM", "GENERAL", "GENERATED_SYM", "GET_FORMAT",
+ "GET_SYM", "GLOBAL_SYM", "GRANTS", "HANDLER_SYM", "HARD_SYM", "HASH_SYM",
+ "HELP_SYM", "HIGH_PRIORITY", "HISTORY_SYM", "HOST_SYM", "HOSTS_SYM",
+ "HOUR_SYM", "ID_SYM", "IDENTIFIED_SYM", "IGNORE_SERVER_IDS_SYM",
+ "IMMEDIATE_SYM", "IMPORT", "INCREMENT_SYM", "INDEXES",
+ "INITIAL_SIZE_SYM", "INSERT_METHOD", "INSTALL_SYM", "INVOKER_SYM",
+ "IO_SYM", "IPC_SYM", "ISOLATION", "ISOPEN_SYM", "ISSUER_SYM",
+ "INVISIBLE_SYM", "JSON_SYM", "KEY_BLOCK_SIZE", "LANGUAGE_SYM",
+ "LAST_SYM", "LAST_VALUE", "LASTVAL_SYM", "LEAVES", "LESS_SYM",
+ "LEVEL_SYM", "LIST_SYM", "LOCAL_SYM", "LOCKED_SYM", "LOCKS_SYM",
+ "LOGFILE_SYM", "LOGS_SYM", "MASTER_CONNECT_RETRY_SYM",
+ "MASTER_DELAY_SYM", "MASTER_GTID_POS_SYM", "MASTER_HOST_SYM",
+ "MASTER_LOG_FILE_SYM", "MASTER_LOG_POS_SYM", "MASTER_PASSWORD_SYM",
+ "MASTER_PORT_SYM", "MASTER_SERVER_ID_SYM", "MASTER_SSL_CAPATH_SYM",
+ "MASTER_SSL_CA_SYM", "MASTER_SSL_CERT_SYM", "MASTER_SSL_CIPHER_SYM",
+ "MASTER_SSL_CRL_SYM", "MASTER_SSL_CRLPATH_SYM", "MASTER_SSL_KEY_SYM",
+ "MASTER_SSL_SYM", "MASTER_SYM", "MASTER_USER_SYM", "MASTER_USE_GTID_SYM",
+ "MASTER_HEARTBEAT_PERIOD_SYM", "MASTER_DEMOTE_TO_SLAVE_SYM",
+ "MAX_CONNECTIONS_PER_HOUR", "MAX_QUERIES_PER_HOUR", "MAX_ROWS",
+ "MAX_SIZE_SYM", "MAX_UPDATES_PER_HOUR", "MAX_STATEMENT_TIME_SYM",
+ "MAX_USER_CONNECTIONS_SYM", "MEDIUM_SYM", "MEMORY_SYM", "MERGE_SYM",
+ "MESSAGE_TEXT_SYM", "MICROSECOND_SYM", "MIGRATE_SYM", "MINUTE_SYM",
+ "MINVALUE_SYM", "MIN_ROWS", "MODE_SYM", "MODIFY_SYM", "MONITOR_SYM",
+ "MONTH_SYM", "MUTEX_SYM", "MYSQL_SYM", "MYSQL_ERRNO_SYM", "NAMES_SYM",
+ "NAME_SYM", "NATIONAL_SYM", "NCHAR_SYM", "NEVER_SYM", "NEXT_SYM",
+ "NEXTVAL_SYM", "NOCACHE_SYM", "NOCYCLE_SYM", "NODEGROUP_SYM", "NONE_SYM",
+ "NOTFOUND_SYM", "NO_SYM", "NOMAXVALUE_SYM", "NOMINVALUE_SYM",
+ "NO_WAIT_SYM", "NOWAIT_SYM", "NUMBER_MARIADB_SYM", "NUMBER_ORACLE_SYM",
+ "NVARCHAR_SYM", "OF_SYM", "OFFSET_SYM", "OLD_PASSWORD_SYM", "ONE_SYM",
+ "ONLY_SYM", "ONLINE_SYM", "OPEN_SYM", "OPTIONS_SYM", "OPTION",
+ "OVERLAPS_SYM", "OWNER_SYM", "PACK_KEYS_SYM", "PAGE_SYM", "PARSER_SYM",
+ "PARTIAL", "PARTITIONS_SYM", "PARTITIONING_SYM", "PASSWORD_SYM",
+ "PERIOD_SYM", "PERSISTENT_SYM", "PHASE_SYM", "PLUGINS_SYM", "PLUGIN_SYM",
+ "PORT_SYM", "PRECEDES_SYM", "PRECEDING_SYM", "PREPARE_SYM",
+ "PRESERVE_SYM", "PREV_SYM", "PREVIOUS_SYM", "PRIVILEGES", "PROCESS",
+ "PROCESSLIST_SYM", "PROFILE_SYM", "PROFILES_SYM", "PROXY_SYM",
+ "QUARTER_SYM", "QUERY_SYM", "QUICK", "RAW_MARIADB_SYM", "RAW_ORACLE_SYM",
+ "READ_ONLY_SYM", "REBUILD_SYM", "RECOVER_SYM", "REDOFILE_SYM",
+ "REDO_BUFFER_SIZE_SYM", "REDUNDANT_SYM", "RELAY", "RELAYLOG_SYM",
+ "RELAY_LOG_FILE_SYM", "RELAY_LOG_POS_SYM", "RELAY_THREAD", "RELOAD",
+ "REMOVE_SYM", "REORGANIZE_SYM", "REPAIR", "REPEATABLE_SYM", "REPLAY_SYM",
+ "REPLICATION", "RESET_SYM", "RESTART_SYM", "RESOURCES", "RESTORE_SYM",
+ "RESUME_SYM", "RETURNED_SQLSTATE_SYM", "RETURNS_SYM", "REUSE_SYM",
+ "REVERSE_SYM", "ROLE_SYM", "ROLLBACK_SYM", "ROLLUP_SYM", "ROUTINE_SYM",
+ "ROWCOUNT_SYM", "ROW_SYM", "ROW_COUNT_SYM", "ROW_FORMAT_SYM",
+ "RTREE_SYM", "SAVEPOINT_SYM", "SCHEDULE_SYM", "SCHEMA_NAME_SYM",
+ "SECOND_SYM", "SECURITY_SYM", "SEQUENCE_SYM", "SERIALIZABLE_SYM",
+ "SERIAL_SYM", "SESSION_SYM", "SERVER_SYM", "SETVAL_SYM", "SHARE_SYM",
+ "SHUTDOWN", "SIGNED_SYM", "SIMPLE_SYM", "SKIP_SYM", "SLAVE", "SLAVES",
+ "SLAVE_POS_SYM", "SLOW", "SNAPSHOT_SYM", "SOCKET_SYM", "SOFT_SYM",
+ "SONAME_SYM", "SOUNDS_SYM", "SOURCE_SYM", "SQL_BUFFER_RESULT",
+ "SQL_CACHE_SYM", "SQL_CALC_FOUND_ROWS", "SQL_NO_CACHE_SYM", "SQL_THREAD",
+ "STAGE_SYM", "STARTS_SYM", "START_SYM", "STATEMENT_SYM", "STATUS_SYM",
+ "STOP_SYM", "STORAGE_SYM", "STORED_SYM", "STRING_SYM",
+ "SUBCLASS_ORIGIN_SYM", "SUBDATE_SYM", "SUBJECT_SYM", "SUBPARTITIONS_SYM",
+ "SUBPARTITION_SYM", "SUPER_SYM", "SUSPEND_SYM", "SWAPS_SYM",
+ "SWITCHES_SYM", "SYSTEM", "SYSTEM_TIME_SYM", "TABLES", "TABLESPACE",
+ "TABLE_CHECKSUM_SYM", "TABLE_NAME_SYM", "TEMPORARY", "TEMPTABLE_SYM",
+ "TEXT_SYM", "THAN_SYM", "TIES_SYM", "TIMESTAMP", "TIMESTAMP_ADD",
+ "TIMESTAMP_DIFF", "TIME_SYM", "TRANSACTION_SYM", "TRANSACTIONAL_SYM",
+ "THREADS_SYM", "TRIGGERS_SYM", "TRIM_ORACLE", "TRUNCATE_SYM", "TYPE_SYM",
+ "UDF_RETURNS_SYM", "UNBOUNDED_SYM", "UNCOMMITTED_SYM", "UNDEFINED_SYM",
+ "UNDOFILE_SYM", "UNDO_BUFFER_SIZE_SYM", "UNICODE_SYM", "UNINSTALL_SYM",
+ "UNKNOWN_SYM", "UNTIL_SYM", "UPGRADE_SYM", "USER_SYM", "USE_FRM",
+ "VALUE_SYM", "VARCHAR2_MARIADB_SYM", "VARCHAR2_ORACLE_SYM", "VARIABLES",
+ "VERSIONING_SYM", "VIA_SYM", "VIEW_SYM", "VISIBLE_SYM", "VIRTUAL_SYM",
+ "WAIT_SYM", "WARNINGS", "WEEK_SYM", "WEIGHT_STRING_SYM", "WINDOW_SYM",
+ "WITHIN", "WITHOUT", "WORK_SYM", "WRAPPER_SYM", "WRITE_SYM", "X509_SYM",
+ "XA_SYM", "XML_SYM", "YEAR_SYM", "CONDITIONLESS_JOIN", "ON_SYM",
+ "PREC_BELOW_NOT", "'='", "'>'", "'<'", "'|'", "'&'", "'-'", "'+'", "'*'",
+ "'/'", "'%'", "'^'", "'~'", "SUBQUERY_AS_EXPR",
+ "PREC_BELOW_IDENTIFIER_OPT_SPECIAL_CASE", "USER",
+ "PREC_BELOW_CONTRACTION_TOKEN2", "'('", "')'", "EMPTY_FROM_CLAUSE",
+ "','", "'!'", "'{'", "'}'", "';'", "'.'", "':'", "$accept", "query",
+ "$@1", "opt_end_of_input", "directly_executable_statement",
+ "verb_clause", "deallocate", "deallocate_or_drop", "prepare", "$@2",
+ "execute", "$@3", "$@4", "execute_using", "$@5", "execute_params",
+ "help", "$@6", "change", "$@7", "master_defs", "master_def",
+ "ignore_server_id_list", "ignore_server_id", "do_domain_id_list",
+ "do_domain_id", "ignore_domain_id_list", "ignore_domain_id",
+ "master_file_def", "optional_connection_name", "connection_name",
+ "optional_for_channel", "for_channel", "create", "$@8", "$@9", "$@10",
+ "$@11", "$@12", "$@13", "$@14", "$@15", "$@16", "$@17", "$@18", "$@19",
+ "$@20", "$@21", "$@22", "$@23", "$@24", "opt_sequence", "sequence_defs",
+ "sequence_def", "force_lookahead", "server_def", "$@25",
+ "server_options_list", "server_option", "event_tail", "$@26",
+ "ev_schedule_time", "$@27", "opt_ev_status", "ev_starts", "ev_ends",
+ "opt_ev_on_completion", "ev_on_completion", "opt_ev_comment",
+ "ev_sql_stmt", "$@28", "clear_privileges", "opt_aggregate", "sp_handler",
+ "sp_name", "sp_a_chistics", "sp_c_chistics", "sp_chistic",
+ "sp_c_chistic", "sp_suid", "call", "$@29", "$@30", "$@31",
+ "opt_sp_cparam_list", "opt_sp_cparams", "sp_cparams", "sp_fdparam_list",
+ "$@32", "sp_fdparams", "sp_param_name", "sp_pdparam_list", "sp_pdparams",
+ "sp_parameter_type", "sp_parenthesized_pdparam_list", "$@33",
+ "sp_parenthesized_fdparam_list", "sp_proc_stmts", "sp_proc_stmts1",
+ "optionally_qualified_column_ident", "row_field_definition",
+ "row_field_definition_list", "row_type_body", "sp_decl_idents_init_vars",
+ "sp_decl_variable_list", "$@34", "sp_decl_handler", "$@35",
+ "opt_parenthesized_cursor_formal_parameters", "sp_cursor_stmt_lex",
+ "sp_cursor_stmt", "$@36", "sp_handler_type", "sp_hcond_list",
+ "sp_hcond_element", "sp_cond", "sqlstate", "opt_value", "sp_hcond",
+ "raise_stmt_oracle", "signal_stmt", "signal_value", "opt_signal_value",
+ "opt_set_signal_information", "signal_information_item_list",
+ "signal_allowed_expr", "signal_condition_information_item_name",
+ "resignal_stmt", "get_diagnostics", "which_area",
+ "diagnostics_information", "statement_information",
+ "statement_information_item", "simple_target_specification",
+ "statement_information_item_name", "condition_number",
+ "condition_information", "condition_information_item",
+ "condition_information_item_name", "sp_decl_ident", "sp_decl_idents",
+ "sp_proc_stmt_if", "$@37", "sp_proc_stmt_statement", "$@38",
+ "RETURN_ALLMODES_SYM", "sp_proc_stmt_return", "$@39",
+ "sp_proc_stmt_exit_oracle", "$@40", "$@41",
+ "sp_proc_stmt_continue_oracle", "$@42", "$@43", "sp_proc_stmt_leave",
+ "sp_proc_stmt_iterate", "sp_proc_stmt_goto_oracle", "expr_lex", "@44",
+ "assignment_source_lex", "assignment_source_expr", "$@45",
+ "for_loop_bound_expr", "$@46", "cursor_actual_parameters",
+ "opt_parenthesized_cursor_actual_parameters", "sp_proc_stmt_with_cursor",
+ "sp_proc_stmt_open", "sp_proc_stmt_fetch_head", "sp_proc_stmt_fetch",
+ "sp_proc_stmt_close", "sp_fetch_list", "sp_if", "$@47", "$@48",
+ "sp_elseifs", "case_stmt_specification", "$@49", "case_stmt_body",
+ "$@50", "simple_when_clause_list", "searched_when_clause_list",
+ "simple_when_clause", "$@51", "searched_when_clause", "$@52",
+ "else_clause_opt", "sp_opt_label", "opt_sp_for_loop_direction",
+ "sp_for_loop_index_and_bounds", "sp_for_loop_bounds", "loop_body",
+ "repeat_body", "pop_sp_loop_label", "sp_labeled_control", "$@53", "$@54",
+ "$@55", "$@56", "$@57", "$@58", "sp_unlabeled_control", "$@59", "$@60",
+ "$@61", "$@62", "$@63", "trg_action_time", "trg_event", "create_body",
+ "$@64", "create_like", "opt_create_select",
+ "create_select_query_expression", "opt_create_partitioning",
+ "opt_partitioning", "partitioning", "$@65", "have_partitioning",
+ "partition_entry", "$@66", "partition", "$@67", "part_type_def", "$@68",
+ "$@69", "$@70", "opt_linear", "opt_key_algo", "part_field_list",
+ "part_field_item_list", "part_field_item", "part_column_list",
+ "part_func", "sub_part_func", "opt_num_parts", "opt_sub_part", "$@71",
+ "$@72", "sub_part_field_list", "sub_part_field_item", "part_func_expr",
+ "opt_num_subparts", "part_defs", "part_def_list", "opt_partition",
+ "part_definition", "$@73", "part_name", "opt_part_values", "$@74",
+ "$@75", "part_func_max", "part_values_in", "part_value_list",
+ "part_value_item", "$@76", "$@77", "part_value_item_list",
+ "part_value_expr_item", "opt_sub_partition", "sub_part_list",
+ "sub_part_definition", "$@78", "sub_name", "opt_part_options",
+ "part_option_list", "part_option", "opt_subpart_options",
+ "subpart_option_list", "server_part_option", "opt_versioning_rotation",
+ "$@79", "opt_versioning_interval_start", "opt_vers_auto_part", "opt_as",
+ "opt_create_database_options", "create_database_options",
+ "create_database_option", "opt_if_not_exists_table_element",
+ "opt_if_not_exists", "create_or_replace", "opt_create_table_options",
+ "create_table_options_space_separated", "create_table_options",
+ "create_table_option", "$@80", "engine_defined_option",
+ "opt_versioning_option", "versioning_option", "default_charset",
+ "default_collation", "storage_engines", "known_storage_engines",
+ "row_types", "merge_insert_types", "udf_type", "create_field_list",
+ "create_field_list_parens", "field_list", "field_list_item",
+ "column_def", "key_def", "$@81", "$@82", "$@83", "$@84", "$@85", "$@86",
+ "$@87", "constraint_def", "period_for_system_time",
+ "period_for_application_time", "opt_check_constraint",
+ "check_constraint", "opt_constraint_no_id", "opt_constraint",
+ "constraint", "field_spec", "@88", "field_type_or_serial", "$@89",
+ "$@90", "opt_serial_attribute", "opt_serial_attribute_list",
+ "opt_asrow_attribute", "opt_asrow_attribute_list", "field_def", "$@91",
+ "opt_generated_always", "vcol_opt_specifier", "vcol_opt_attribute",
+ "vcol_opt_attribute_list", "vcol_attribute", "parse_vcol_expr", "$@92",
+ "parenthesized_expr", "virtual_column_func", "expr_or_literal",
+ "column_default_expr", "field_type", "qualified_field_type", "udt_name",
+ "field_type_all", "field_type_numeric", "opt_binary_and_compression",
+ "field_type_string", "field_type_temporal", "field_type_lob",
+ "field_type_misc", "char", "nchar", "varchar", "nvarchar", "int_type",
+ "real_type", "srid_option", "float_options", "precision",
+ "field_options", "last_field_options", "field_length_str",
+ "field_length", "field_scale", "opt_field_length", "opt_field_scale",
+ "opt_precision", "attribute_list", "attribute", "opt_compression_method",
+ "opt_compressed", "opt_enable", "compressed",
+ "compressed_deprecated_data_type_attribute",
+ "compressed_deprecated_column_attribute", "asrow_attribute",
+ "serial_attribute", "with_or_without_system", "charset", "charset_name",
+ "charset_name_or_default", "opt_load_data_charset",
+ "old_or_new_charset_name", "old_or_new_charset_name_or_default",
+ "collation_name", "collation_name_or_default", "opt_default",
+ "charset_or_alias", "opt_binary", "binary", "opt_bin_mod", "ws_nweights",
+ "$@93", "ws_level_flag_desc", "ws_level_flag_reverse", "ws_level_flags",
+ "ws_level_number", "ws_level_list_item", "ws_level_list",
+ "ws_level_range", "ws_level_list_or_range", "opt_ws_levels",
+ "opt_primary", "references", "opt_ref_list", "ref_list",
+ "opt_match_clause", "opt_on_update_delete", "delete_option",
+ "constraint_key_type", "key_or_index", "opt_key_or_index",
+ "keys_or_index", "fulltext", "spatial", "normal_key_options",
+ "fulltext_key_options", "spatial_key_options", "normal_key_opts",
+ "spatial_key_opts", "fulltext_key_opts", "opt_USING_key_algorithm",
+ "opt_key_algorithm_clause", "key_using_alg", "all_key_opt",
+ "normal_key_opt", "spatial_key_opt", "fulltext_key_opt",
+ "btree_or_rtree", "ignorability", "key_list", "opt_without_overlaps",
+ "key_part", "opt_ident", "string_list", "alter", "$@94", "$@95", "$@96",
+ "$@97", "$@98", "$@99", "$@100", "$@101", "$@102", "$@103", "$@104",
+ "$@105", "$@106", "account_locking_option", "opt_password_expire_option",
+ "opt_account_locking_and_opt_password_expiration",
+ "ev_alter_on_schedule_completion", "opt_ev_rename_to", "opt_ev_sql_stmt",
+ "ident_or_empty", "alter_commands", "$@107", "$@108", "$@109", "$@110",
+ "remove_partitioning", "all_or_alt_part_name_list", "add_partition_rule",
+ "$@111", "add_part_extra", "reorg_partition_rule", "$@112",
+ "reorg_parts_rule", "$@113", "alt_part_name_list", "alt_part_name_item",
+ "alter_list", "add_column", "alter_list_item",
+ "opt_index_lock_algorithm", "alter_algorithm_option",
+ "alter_lock_option", "opt_column", "opt_ignore", "alter_options",
+ "$@114", "alter_options_part2", "alter_option_list", "alter_option",
+ "opt_restrict", "opt_place", "opt_to", "slave", "$@115", "$@116",
+ "start", "opt_start_transaction_option_list",
+ "start_transaction_option_list", "start_transaction_option",
+ "slave_thread_opts", "$@117", "slave_thread_opt_list",
+ "slave_thread_opt", "slave_until", "slave_until_opts", "checksum",
+ "$@118", "opt_checksum_type", "repair_table_or_view", "$@119", "repair",
+ "$@120", "opt_mi_repair_type", "mi_repair_types", "mi_repair_type",
+ "opt_view_repair_type", "analyze", "$@121", "analyze_table_list",
+ "analyze_table_elem_spec", "opt_persistent_stat_clause",
+ "persistent_stat_spec", "persistent_column_stat_spec", "$@122",
+ "persistent_index_stat_spec", "$@123", "table_column_list",
+ "table_index_list", "table_index_name", "binlog_base64_event",
+ "check_view_or_table", "$@124", "check", "$@125", "opt_mi_check_type",
+ "mi_check_types", "mi_check_type", "opt_view_check_type", "optimize",
+ "$@126", "opt_no_write_to_binlog", "rename", "$@127", "rename_list",
+ "table_to_table_list", "table_to_table", "keycache", "$@128",
+ "keycache_list_or_parts", "keycache_list", "assign_to_keycache",
+ "assign_to_keycache_parts", "key_cache_name", "preload", "$@129",
+ "preload_list_or_parts", "preload_list", "preload_keys",
+ "preload_keys_parts", "adm_partition", "$@130", "cache_keys_spec",
+ "$@131", "cache_key_list_or_empty", "opt_ignore_leaves", "select",
+ "$@132", "$@133", "select_into", "$@134", "$@135", "simple_table",
+ "table_value_constructor", "$@136", "query_specification_start", "$@137",
+ "$@138", "query_specification", "select_into_query_specification",
+ "query_expression", "query_expression_no_with_clause",
+ "query_expression_body_ext", "$@139", "$@140",
+ "query_expression_body_ext_parens", "query_expression_body", "$@141",
+ "query_primary", "query_simple", "subselect", "subquery",
+ "opt_from_clause", "from_clause", "table_reference_list",
+ "select_options", "opt_history_unit", "history_point",
+ "for_portion_of_time_clause", "opt_for_portion_of_time_clause",
+ "opt_for_system_time_clause", "system_time_expr", "select_option_list",
+ "select_option", "select_lock_type", "opt_select_lock_type",
+ "opt_lock_wait_timeout_new", "select_item_list", "select_item",
+ "remember_tok_start", "remember_name", "remember_end", "select_alias",
+ "opt_default_time_precision", "opt_time_precision", "optional_braces",
+ "expr", "boolean_test", "predicate", "bit_expr", "or", "and", "not",
+ "not2", "comp_op", "all_or_any", "opt_dyncol_type", "dyncol_type",
+ "numeric_dyncol_type", "temporal_dyncol_type", "string_dyncol_type",
+ "dyncall_create_element", "dyncall_create_list", "plsql_cursor_attr",
+ "explicit_cursor_attr", "trim_operands", "trim_operands_regular",
+ "trim_operands_special", "column_default_non_parenthesized_expr",
+ "primary_expr", "string_factor_expr", "simple_expr",
+ "mysql_concatenation_expr", "function_call_keyword_timestamp",
+ "function_call_keyword", "substring_operands",
+ "substring_operands_regular", "substring_operands_special",
+ "function_call_nonkeyword", "function_call_conflict",
+ "function_call_generic", "@142", "fulltext_options",
+ "opt_natural_language_mode", "opt_query_expansion", "opt_udf_expr_list",
+ "udf_expr_list", "udf_expr", "sum_expr", "$@143", "$@144", "$@145",
+ "$@146", "$@147", "window_func_expr", "window_func",
+ "simple_window_func", "inverse_distribution_function",
+ "percentile_function", "$@148", "inverse_distribution_function_def",
+ "order_by_single_element_list", "window_name", "variable", "$@149",
+ "variable_aux", "opt_distinct", "opt_gconcat_separator",
+ "opt_gorder_clause", "gorder_list", "opt_glimit_clause", "glimit_clause",
+ "glimit_options", "in_sum_expr", "$@150", "cast_type",
+ "cast_type_numeric", "cast_type_temporal", "opt_expr_list", "expr_list",
+ "ident_list_arg", "ident_list", "when_list", "when_list_opt_else",
+ "table_ref", "json_text_literal", "json_text_literal_or_num",
+ "join_table_list", "json_table_columns_clause",
+ "json_table_columns_list", "json_table_column", "$@151", "$@152",
+ "json_table_column_type", "json_table_field_type",
+ "json_opt_on_empty_or_error", "json_on_response",
+ "json_on_error_response", "json_on_empty_response", "table_function",
+ "$@153", "$@154", "esc_table_ref", "derived_table_list", "join_table",
+ "$@155", "$@156", "$@157", "$@158", "$@159", "$@160", "inner_join",
+ "normal_join", "opt_use_partition", "use_partition", "table_factor",
+ "table_primary_ident_opt_parens", "table_primary_derived_opt_parens",
+ "table_reference_list_parens", "nested_table_reference_list",
+ "join_table_parens", "table_primary_ident", "table_primary_derived",
+ "opt_outer", "index_hint_clause", "index_hint_type",
+ "index_hint_definition", "$@161", "$@162", "index_hints_list",
+ "opt_index_hints_list", "$@163", "opt_key_definition", "$@164",
+ "opt_key_usage_list", "key_usage_element", "key_usage_list",
+ "using_list", "interval", "interval_time_stamp", "date_time_type",
+ "table_alias", "opt_table_alias_clause", "table_alias_clause", "opt_all",
+ "opt_where_clause", "$@165", "opt_having_clause", "$@166",
+ "opt_group_clause", "group_list", "olap_opt", "opt_window_clause",
+ "window_def_list", "window_def", "window_spec", "$@167",
+ "opt_window_ref", "opt_window_partition_clause",
+ "opt_window_order_clause", "opt_window_frame_clause",
+ "window_frame_units", "window_frame_extent", "window_frame_start",
+ "window_frame_bound", "opt_window_frame_exclusion", "alter_order_clause",
+ "alter_order_list", "alter_order_item", "opt_order_clause",
+ "order_clause", "$@168", "order_list", "order_dir", "opt_limit_clause",
+ "limit_clause", "fetch_first_clause", "first_or_next", "row_or_rows",
+ "only_or_with_ties", "opt_global_limit_clause", "limit_options",
+ "limit_option", "limit_rows_option", "delete_limit_clause",
+ "order_limit_lock", "opt_order_limit_lock", "query_expression_tail",
+ "opt_query_expression_tail", "opt_procedure_or_into", "order_or_limit",
+ "opt_plus", "int_num", "ulong_num", "real_ulong_num", "longlong_num",
+ "ulonglong_num", "real_ulonglong_num", "dec_num_error", "dec_num",
+ "choice", "bool", "procedure_clause", "$@169", "procedure_list",
+ "procedure_list2", "procedure_item", "select_var_list_init", "$@170",
+ "select_var_list", "select_var_ident", "select_outvar", "into",
+ "into_destination", "$@171", "$@172", "do", "$@173", "drop", "$@174",
+ "$@175", "$@176", "$@177", "table_list", "table_name",
+ "table_name_with_opt_use_partition", "table_alias_ref_list",
+ "table_alias_ref", "opt_if_exists_table_element", "opt_if_exists",
+ "opt_temporary", "insert", "$@178", "$@179", "replace", "$@180", "$@181",
+ "insert_start", "stmt_end", "insert_lock_option", "replace_lock_option",
+ "insert_replace_option", "opt_into", "insert_table", "$@182",
+ "insert_field_spec", "$@183", "insert_field_list", "opt_fields",
+ "fields", "insert_values", "values_list", "ident_eq_list",
+ "ident_eq_value", "equal", "opt_equal", "opt_with", "opt_by",
+ "no_braces", "$@184", "no_braces_with_names", "$@185", "opt_values",
+ "opt_values_with_names", "values", "values_with_names", "expr_or_ignore",
+ "expr_or_ignore_or_default", "opt_insert_update", "$@186", "$@187",
+ "update_table_list", "update", "$@188", "$@189", "$@190", "update_list",
+ "update_elem", "insert_update_list", "insert_update_elem",
+ "opt_low_priority", "delete", "$@191", "opt_delete_system_time",
+ "delete_part2", "delete_single_table", "delete_single_table_for_period",
+ "single_multi", "$@192", "$@193", "$@194", "$@195", "opt_returning",
+ "$@196", "table_wild_list", "table_wild_one", "opt_wild",
+ "opt_delete_options", "opt_delete_option", "truncate", "$@197", "$@198",
+ "opt_table_sym", "opt_profile_defs", "profile_defs", "profile_def",
+ "opt_profile_args", "show", "$@199", "show_param", "$@200", "$@201",
+ "show_engine_param", "master_or_binary", "opt_storage", "opt_db",
+ "opt_full", "from_or_in", "binlog_in", "binlog_from", "wild_and_where",
+ "describe", "$@202", "$@203", "explainable_command", "describe_command",
+ "analyze_stmt_command", "opt_extended_describe", "opt_format_json",
+ "opt_describe_column", "explain_for_connection", "flush", "$@204",
+ "flush_options", "$@205", "opt_flush_lock", "flush_lock", "$@206",
+ "flush_options_list", "flush_option", "opt_table_list", "backup",
+ "backup_statements", "$@207", "opt_delete_gtid_domain",
+ "delete_domain_id_list", "delete_domain_id",
+ "optional_flush_tables_arguments", "reset", "$@208", "reset_options",
+ "reset_option", "$@209", "$@210", "slave_reset_options",
+ "master_reset_options", "purge", "$@211", "kill", "$@212", "kill_type",
+ "kill_option", "opt_connection", "kill_expr", "shutdown", "$@213",
+ "shutdown_option", "use", "load", "$@214", "$@215", "$@216", "$@217",
+ "data_or_xml", "opt_local", "load_data_lock", "opt_duplicate",
+ "opt_field_term", "field_term_list", "field_term", "opt_line_term",
+ "line_term_list", "line_term", "opt_xml_rows_identified_by",
+ "opt_ignore_lines", "lines_or_rows", "opt_field_or_var_spec",
+ "fields_or_vars", "field_or_var", "opt_load_data_set_spec",
+ "load_data_set_list", "load_data_set_elem", "text_literal",
+ "text_string", "hex_or_bin_String", "param_marker", "signed_literal",
+ "literal", "NUM_literal", "temporal_literal", "with_clause", "$@218",
+ "opt_recursive", "with_list", "with_list_element", "opt_cycle", "$@219",
+ "opt_with_column_list", "with_column_list", "ident_sys_alloc",
+ "comma_separated_ident_list", "with_element_head", "insert_ident",
+ "table_wild", "select_sublist_qualified_asterisk", "order_ident",
+ "simple_ident", "simple_ident_nospvar", "field_ident", "table_ident",
+ "table_ident_opt_wild", "table_ident_nodb", "IDENT_cli", "ident_cli",
+ "IDENT_sys", "ident_cli_func", "ident_func", "TEXT_STRING_sys",
+ "TEXT_STRING_literal", "TEXT_STRING_filesystem", "ident_table_alias",
+ "ident_cli_set_usual_case", "ident_sysvar_name", "ident", "label_ident",
+ "ident_or_text", "user_maybe_role", "user_or_role", "user",
+ "keyword_table_alias", "keyword_ident", "keyword_sysvar_name",
+ "keyword_set_usual_case", "non_reserved_keyword_udt",
+ "keyword_sp_var_not_label", "keyword_sp_head", "keyword_verb_clause",
+ "keyword_set_special_case", "keyword_sysvar_type", "keyword_data_type",
+ "keyword_cast_type", "keyword_func_sp_var_and_label",
+ "keyword_func_sp_var_not_label", "keyword_sp_var_and_label",
+ "reserved_keyword_udt_not_param_type", "set", "$@220", "set_param",
+ "$@221", "$@222", "$@223", "set_stmt_option_list",
+ "start_option_value_list_following_option_type", "$@224",
+ "option_value_list", "option_value", "$@225", "option_type",
+ "opt_var_type", "opt_var_ident_type", "set_stmt_option", "$@226",
+ "$@227", "$@228", "option_value_following_option_type", "$@229", "$@230",
+ "$@231", "option_value_no_option_type", "$@232", "$@233", "$@234",
+ "$@235", "$@236", "$@237", "$@238", "$@239", "$@240", "$@241",
+ "transaction_characteristics", "transaction_access_mode",
+ "isolation_level", "transaction_access_mode_types", "isolation_types",
+ "text_or_password", "set_expr_or_default", "lock", "$@242",
+ "opt_lock_wait_timeout", "table_or_tables", "table_lock_list",
+ "table_lock", "lock_option", "unlock", "$@243", "handler", "$@244",
+ "handler_tail", "$@245", "handler_read_or_scan", "handler_scan_function",
+ "handler_rkey_function", "$@246", "handler_rkey_mode", "revoke",
+ "revoke_command", "admin_option_for_role", "grant", "grant_command",
+ "opt_with_admin", "opt_with_admin_option", "role_list", "current_role",
+ "role_name", "grant_role", "opt_table", "grant_privileges",
+ "opt_privileges", "object_privilege_list", "column_list_privilege",
+ "column_privilege", "object_privilege", "opt_and", "require_list",
+ "require_list_element", "grant_ident", "user_list", "grant_list",
+ "user_and_role_list", "via_or_with", "using_or_as", "grant_user",
+ "auth_expression", "auth_token", "opt_auth_str", "opt_require_clause",
+ "resource_option", "resource_option_list", "opt_resource_options",
+ "opt_grant_options", "opt_grant_option", "grant_option_list",
+ "grant_option", "begin_stmt_mariadb", "$@247", "compound_statement",
+ "opt_not", "opt_work", "opt_chain", "opt_release", "commit", "rollback",
+ "savepoint", "release", "unit_type_decl", "union_option",
+ "query_expression_option", "definer_opt", "no_definer", "definer",
+ "view_algorithm", "opt_view_suid", "view_suid", "view_list_opt",
+ "view_list", "view_select", "$@248", "view_check_option",
+ "trigger_action_order", "trigger_follows_precedes_clause",
+ "trigger_tail", "$@249", "$@250", "$@251", "$@252", "$@253",
+ "sf_return_type", "$@254", "xa", "opt_format_xid", "xid",
+ "begin_or_start", "opt_join_or_resume", "opt_one_phase", "opt_suspend",
+ "$@255", "opt_migrate", "install", "uninstall", "keep_gcc_happy",
+ "_empty", "statement", "sp_statement", "sp_if_then_statements",
+ "sp_case_then_statements", "reserved_keyword_udt_param_type",
+ "reserved_keyword_udt", "keyword_sp_block_section", "keyword_label",
+ "keyword_sp_decl", "opt_truncate_table_storage_clause",
+ "ident_for_loop_index", "row_field_name", "while_body", "$@256",
+ "for_loop_statements", "sp_label", "sp_control_label", "sp_block_label",
+ "sp_opt_default", "sp_decl_variable_list_anchored",
+ "sp_param_name_and_mode", "sp_param", "sp_param_anchored",
+ "sf_c_chistics_and_body_standalone", "$@257", "sp_tail_standalone",
+ "$@258", "$@259", "drop_routine", "create_routine", "$@260", "$@261",
+ "$@262", "sp_decls", "sp_decl", "sp_decl_body", "$@263",
+ "sp_proc_stmt_in_returns_clause", "sp_proc_stmt",
+ "sp_proc_stmt_compound_ok", "sp_labeled_block", "$@264",
+ "sp_unlabeled_block", "$@265", "sp_unlabeled_block_not_atomic", "$@266", YY_NULLPTR
+};
+
+static const char *
+yysymbol_name (yysymbol_kind_t yysymbol)
+{
+ return yytname[yysymbol];
+}
+#endif
+
+#define YYPACT_NINF (-5341)
+
+#define yypact_value_is_default(Yyn) \
+ ((Yyn) == YYPACT_NINF)
+
+#define YYTABLE_NINF (-3660)
+
+#define yytable_value_is_error(Yyn) \
+ 0
+
+/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
+ STATE-NUM. */
+static const int yypact[] =
+{
+ 7647, -5341, -5341, 2971, 1711, 93552, -5341, 116, -5341, 1031,
+ -5341, -5341, -5341, 3395, -5341, -5341, -5341, -5341, -5341, 198,
+ 463, -5341, 326, -5341, -5341, 353, 80214, 634, 580, -5341,
+ 83178, -5341, -5341, -5341, -5341, 83178, -5341, -5341, 93552, -5341,
+ -5341, 1436, -5341, 172, 1568, 2263, 1565, 463, 1074, -5341,
+ -5341, 94293, 326, 1603, -5341, -5341, 1251, 93552, 326, -5341,
+ 1074, 93552, -5341, 313, 279, -5341, 1342, 4371, 133, 2180,
+ 2197, -5341, -5341, 1640, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 4703, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 1891, -5341, -5341, -5341,
+ -5341, 4408, 1835, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, 45266, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 133, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 95034, 93552, 1543, 1584,
+ 93552, 2226, 80955, 2226, -5341, 126, -5341, -5341, 1971, -5341,
+ 1630, -5341, 463, 2744, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, 1718, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 2204, 2508,
+ 536, 2237, 278, 2226, -5341, 2226, 2226, 2226, 2226, 2226,
+ 2226, -5341, 2226, 2226, 943, 93552, 67617, -5341, -5341, 108,
+ 2417, -5341, -5341, -5341, -5341, -5341, -5341,108132, 463, 23317,
+ 2512, -5341, -5341, 2074, 3711, 1871, -5341, 2356, -5341, -5341,
+ 93552, -5341, 2226,108132, -5341, 2356, 68358, 3781, 49723, 7733,
+ 2356, 463, 2453, -5341, 1882, -5341, -5341, -5341, -5341, -5341,
+ -5341, 93552, -5341, -5341, -5341, 2338, 1074, 80955, -5341, -5341,
+ -5341, -5341, -5341, 2625, 23317, 243, 2385, -5341, -5341, 2304,
+ 46007, 80955, 2583, 2508, 2606, -5341, 1528, 572, -5341, 1998,
+ 2077, 2508, 1514, 2091, 2508, 2497, 2226, 2226, -5341, -5341,
+ 3364, 3364, 3364, 2333, 3364, -5341, 3364, 2673, 2022, 447,
+ -5341, -5341, 2028, 93552, 2583, -5341, 2583, -5341, 2668, 2583,
+ 2583, 2166, 2682, 2695, 160, 1531, 187, 187, 1971, 40820,
+ 1148, 2531, -5341, 2673, 2078, 1905, 2119, 2119, 2119, 2078,
+ 133, 2078, -5341, 2861, 1630, 2895, 93552, -5341, 2729, -5341,
+ 2070, -5341, -5341, 239, -5341, 2133, -5341, 2092, 1415, 69840,
+ -5341, 2763, -5341, -5341, -5341, -5341, -5341, -5341, 2589, 259,
+ 2235, 2457, 2161, -5341, 2642, 80955, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 93552, 2132, -5341, -5341, 23317, 2801,
+ 2204, -5341, 2632, -5341, -5341, -5341, -5341, 46007, -5341, -5341,
+ -5341, 2800, -5341, -5341, 83919, 663, 93552, 2813, 93552, 93552,
+ 93552, 93552, -5341, 80955, -5341, -5341, 2226, 2226, -5341, -5341,
+ 2795, 2350, 2316, 1553, 2203, 2511, -5341, 2399, -5341, 2210,
+ 2289, 2420, 2227, 2230, 2283, 211, -5341, 2242, -5341, 929,
+ 2692, 146, 154, 2696, 162, 424, 2847, 2705, 454, 971,
+ 466, 2503, 470, -5341, -5341, -5341, -5341, 2780, 2867, 2309,
+ -5341, 2323, -5341, 2812, 2646, 1149, -5341, -5341, 895, 2748,
+ 1213, 46007,110200, 81696,111492, -5341,111492,111492, -5341, 245,
+ -5341, 1568, 93552,110846, -5341, 93552,103866, -5341, 11694, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 93552, -5341,
+ -5341, -5341, -5341, -5341, 2321, -5341, -5341, -5341, -5341, -5341,
+ 2765, 2247, 2772, -5341, 2345, -5341, -5341, -5341, -5341, -5341,
+ 84660, -5341, 190, 205, 3475, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 29469, 2357, 2360, 2363,
+ 18703, 2366, 2372, 2376, 2390, 2394, 2203, 2203, 2203, 2395,
+ 2400, 2414, 2422, 2423, 2434, 2477, -5341, 2478, 2482, 2506,
+ 2518, 2527, 2551, 24086, 2555, 2560, 2561, 37103, 2567, 2568,
+ 2578, 2579, 23317, 2395, 2610, 2622, -5341, 2629, 2644, 2657,
+ 2674, 2693, 2711, 2720, 2726, 3149, 2730, 2738, 2745, 2746,
+ -5341, 2203, 2395, 2395, 2755, 2758, 2759, 2773, 2776, 2781,
+ 2788, 2799, 2811, 2830, 2833, 2844, 2845, 2853, 2855, 201,
+ 2859, 2866, 2868, 2869, 2872, 2873, 2875, 2461, 2884, 2886,
+ 2887, 2504, 2888, 2889, 2891, 2899, 206, 2902, 2903, 210,
+ 2904, 2908, 2910, 2913, 2914, 2920, 2921, 30238, 31007, 29469,
+ 16396, -5341, 93552, 95775, -5341, -5341, 4197, 1112, 3315, 2082,
+ 29469, -5341, -5341, -5341, 3126, -5341, 3243, -5341, -5341, -5341,
+ -5341, 3077, 3097, -5341, 3108, -5341, -5341, 3138, 2660, -5341,
+ 3448, -5341, -5341, -5341, -5341, -5341, 2721, -5341, 2926, 3514,
+ 3536, 2933, 2934, -5341, -5341, 479, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 2792,
+ 2864, -5341, 3448, -5341, -5341, 72804, -5341,108843, -5341, -5341,
+ 2350, 3007, 3413, -5341, 3518, -5341, 3452, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 3781,
+ -5341, -5341, 51227, 3458, -105, -5341, -5341, 186, -5341, 196,
+ 240, 63171, -5341, 305, 63912, 260, 85401, 949, -5341, 70581,
+ -5341, 316, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 2935, -5341, 3051, 3262, 2944, 3317, 1571, -5341,
+ -5341, 384, 537, 3038, 115, -5341, 62, -5341, 1571, -5341,
+ 73545, 725, 2169, -5341, 801, -5341, 3601, -5341, -5341, 3043,
+ 3029, 3059, -5341, 3276, -5341, 2508, -5341, 539, -5341, 725,
+ 1571, 2169, -5341, 3226, 3308, 1383, 3262, -5341, 1084, -5341,
+ -5341, -5341, 3597, -5341, 2959, -5341, 3321, -5341, 93552, 1217,
+ 46007, -5341, -5341, -5341, 2963, 46007, 46007, 1221, 299, 4197,
+ 2965, 23317, -5341, -5341, 4092, 53483, 3166, 368, 1085, -5341,
+ -5341, 1568, 93552, -5341, -5341, 624, -5341, 3389, -5341, 2968,
+ -5341, 96516, 299, 3628, -5341, -5341, -5341, 774, 3362, -5341,
+ 2977, -5341, -5341, -5341, -5341, 46007, 93552, 2508, -5341, -5341,
+ -5341, -5341, 2979, -5341, -5341, 3183, 3065, -5341, 3003, -5341,
+ -5341, 225, -5341, -5341, 3761, -5341, 93552, -5341, 2583, -5341,
+ -5341, 2583, -5341, -5341, -5341, 2583, 2583, 2583, -5341, -5341,
+ 3031, -5341, 3313, 3314, 2642, -5341, 3002, 40079, 93552, 3777,
+ -5341, 3572, -5341, -5341, -5341, 3009, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 3575, 3762, 3762, -5341, 51979, -5341,
+ -5341, 3660, 2531, 1589, 3501, 54987, 3649, 3737, 57243, -5341,
+ 725, -5341, -5341, -5341, -5341, 2249, 93552, -5341, 2249, 2249,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 133, -5341, -5341, 2744, 3410, 71322, 93552, 2078,
+ 1905, -5341, -5341, -5341, 2508, 369, 3406, -5341, 93552, -5341,
+ -5341, -5341, 2203, 3812, -5341, -5341, -5341, -5341, -5341, 46007,
+ 3235, 69840, 2226, -5341, -5341, -5341, 259, -5341, 1596, 93552,
+ 46007, 3076, -5341, 46007, 3037, 23317, -5341, -5341, 3515, 4197,
+ 108132, 3398, -5341, -5341, 46007, 1686, -5341, -5341, 46007, 3773,
+ 46007, 3707, 2531, -5341, 3053, -5341, 3052, -5341, -5341, 3721,
+ 93552, -5341, -5341, -5341, 3055, 74286, -5341, 72804, 46007, -5341,
+ -5341, 3424, 3205, -5341, -5341, -5341, -5341, -5341, -5341, 3146,
+ -5341, -5341, 3071, -5341, -5341, -5341, -5341, 3519, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 72804, -5341, -5341, 3520,
+ 3523, -5341, 69840, 1506, 5228, 95775, -5341, 3718, -5341, -5341,
+ -5341, 3597, -5341, -5341, 24855, -5341, 25624, -5341, -5341, -5341,
+ 3354, 549, 1062, -5341, -5341, 3550, 93552, 3301, 3746, 3725,
+ -5341, -5341, -5341, -5341, -5341, -5341, 3569, 3102, 3706, 3099,
+ -5341, -5341, -5341, 3104, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 46007, 52731, -5341, -5341, -5341, 3110, -5341, -5341,
+ -5341, 3116, 29469, 29469, -5341, 3842, 3842, 3842, 23317, 2919,
+ 396, 3471, 23317, 23317, 23317, 2143, 3123, -5341, -5341, -5341,
+ 284, -5341, 23317, 23317, 37850, 3150, 987, 5096, 23317, 3820,
+ 3820, -5341, 23317, 23317, 16396, 3454, 23317, 23317, 23317, 95775,
+ 37850, 3595, 3152, -5341, 3156, 2151, 23317, 2184, 23317, -5341,
+ -5341, 23317, 23317, 23317, 23317, 3155, 31776, 3159, 23317, 23317,
+ 3169, 3303, 3842, 3842, 2277, 293, -5341, -5341, -5341, 3842,
+ 3842, 3177, 23317, 23317, 17165, 23317, 23317, 2291, 23317, 23317,
+ 23317, 23317, 23317, 23317, -5341, 23317, 23317, 1009, 23317, 23317,
+ 46007, 23317, 23317, 3831, 46007, 23317, 23317, 3832, 23317, 23317,
+ 46007, 23317, -5341, 23317, 3942, 3942, -5341, 23317, 17165, 23317,
+ 3184, 38597, 23317, 23317, 23317, 24086, -5341, 24086, -5341, -5341,
+ 3188, 3393, 355, 133, 23317, 3178, -5341, -5341, -5341, -5341,
+ 23317, 23317, 23317, 31776, -5341, -5341, -5341, 432, -5341, -5341,
+ -5341, 26393, 31776, 3193, 31776, 31776, 3806, 2112, 31776, 31776,
+ 31776, 31776, 31776, 31776, 31776, 32545, 33314, 31776, 31776, 31776,
+ 31776, -5341, 80955, 29469, 48971, 3199, 3845, -5341, 75027, -5341,
+ 1591, 645, -5341, 2508, 3711, 34852, -5341, 3206, -5341, 3703,
+ 46007, 3203, 3211, 3868, 72804, 69840, 1506, 3229, -5341, 1300,
+ 234, -5341, 74286, 93552, -5341, -5341, -5341, 3928, 23317, -5341,
+ -5341, -5341, -5341, -5341, 3222, 383, 3230, -5341, 1040, -5341,
+ -5341, -5341, -5341, -5341, 93552, -5341, 86142, 50475, 3333, 3892,
+ 3252, 2583, 86883, 93552, 46007, 93552, 97257, 93552, 93552, 46007,
+ 72804, 46007, -5341, -5341, -5341, 818, 1571, 93552, 1571, 2169,
+ 852, 1571, 3874, -5341, -5341, 937, 937, -5341, -5341, -5341,
+ -5341, -5341, -5341, 1571, 93552, 93552, 1571, 69840, -5341, 2169,
+ 1479, -5341, 3539, 3330, -5341, -5341, -5341, 3581, -5341, -5341,
+ 3907, 3254, -5341, 3603, -5341, 3352, -5341, -5341, 46007, -5341,
+ -5341, 2169, -5341, 2169, 2169, 3919, 1571, 1571, 1571, -5341,
+ 41561, 3275, 3280, -5341, 3282, -5341, 3283, -5341, 3911, -5341,
+ -5341, -5341, 4064, 3924, 3289, -5341, -5341, 3859, 890, -5341,
+ 3715, -5341, 3840, -5341, 23317, 4197, 19472, 3570, -5341, -5341,
+ 3573, 3577, 3583, -5341, -5341, -5341, -5341, 3722, 3585, -5341,
+ 2508, 3587, -5341, -5341, -5341, 3319, -5341, -5341, -5341, 80955,
+ 34852, -5341, 3322, -5341, 3336, -5341, 208, -5341, -5341, 3989,
+ 3437, 23317, -5341, -5341, 46007, 3835, -5341, 2508, 1528, 93552,
+ -5341, -5341, 4072, -5341, 1440, 3999, -5341, -5341, 3460, 1514,
+ -5341, 3999, -21, -5341, -5341, 3364, 3531, -5341, -5341, -5341,
+ 80955, -5341, -5341, -5341, -5341, -5341, -5341, 93552, -5341, 74286,
+ 69840, 80955, 2583, 2583, -5341, 46007, -5341, -5341, -5341, 2583,
+ 2583, 2583, 3388, -5341, 2876, 3361, 3365, 3366, 3370, 2027,
+ 3371, 42302, 2341, 291, 3976, 3994, -5341, 3945, 2700, 3945,
+ -5341, -5341, 42302, 41561, 3377, 3777, -5341, -5341, -5341, -5341,
+ 80955, 3375, -5341, -5341, 3374, -5341, 23317, 4097, 4021, 3660,
+ -5341, -5341, 55739, 1465, 84660, -5341, -5341, -5341, 3729, 3913,
+ 1166, -5341, 3383, 3510, -5341, 444, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 23317, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, 234, 229, -5341, -5341, -5341, 1397, 3767,
+ 2573, -5341, -5341, 80955, 2573, -5341, 3407, 3713, -5341, 3716,
+ 122, -5341, 46007, -5341, -5341, -5341, -5341, -5341, 46007, 3405,
+ -5341, 3596, 93552, 2132, 3420, 3421, 4197, 3918, -5341, 3515,
+ -5341,103155, -5341, 4136, 5255, 139, 3472, -5341, -5341, -5341,
+ -5341, -5341, 46007, -5341, -5341, 338, 3575, 3504, -5341, 3427,
+ -5341, -5341, 563, 4007, -5341, -5341, 4005, 93552, 4107, 58725,
+ -5341, -5341, 4040, 93552, 3462, -5341, -5341, 3466, 193, 46007,
+ 46007,108132, -5341, -5341, 3470, -5341, -5341, -5341, 3971, -5341,
+ -5341, 68, 4198, -5341, -5341, -5341, 43043, 43043, 929, 2692,
+ -5341, -5341, 2696, -5341, -5341, 2705, -5341, 971, -5341, 2503,
+ -5341, -5341, -5341, -5341, 2083, -5341,108132, -5341, 3911, 23317,
+ 48230, 4197, -5341, -5341, 46007, -5341, 4116, -5341, -5341,100221,
+ 185, -5341, -5341, 230, 46007, -5341, -5341, -5341, 4111, 3618,
+ 93552, -5341, -5341, 4171, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, 93552, 93552,108132,108132, -5341, -5341, 1091, 1300, -5341,
+ 4229, 95775, 23317, -5341, 3497, -5341, 3499, 3500, 2972, 3858,
+ 23317, 23317, -5341, 2925, 67, 309, -5341, 3506, 3517, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, 3509, -5341, -5341,
+ 379, 413, 3513, -5341, -5341, -5341, 3516, 133, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 4162, -5341,
+ 263, -5341, -5341, -5341, 23317, 493, 511, 612, 3528, 417,
+ 455, 931, 3110, 2095, 3522, 37850, 95775, 3842, 3524, 378,
+ 3842, 3525, 1329, 1461, 515, 766, 893, -5341, 348, -5341,
+ 1483, 1516, -5341, -5341, 3526, 3527, 3842, 3529, -5341, 3532,
+ 3533, 3534, -5341, 1520, 296, 3537, -5341, -5341, 20241, 21010,
+ 21779, 3185, 3538, -5341, -5341, 1526, 905, 3842, 3540, 1188,
+ 1580, 1610, -5341, 2106, 1624, 1712, 3543, 2965, 1536, 1878,
+ -5341, -5341, -5341, -5341, 3542, 1966, 2120, 3544, 3552, 2123,
+ 2272, 46007, 3556, 3560, 2294, 46007, 1793, 2332, 3548, 1813,
+ 813, 3559, 3561, 2398, 3562, 1860, -5341, 95775, 93552, 3564,
+ 3511, 298, 3565, 2480, 3454, 3454, -5341, 23317, 3566, 274,
+ 95775, 581, 1323, -5341, 3315, -5341, -5341, -5341, -5341, 458,
+ -5341, 3568, 3315, 3576, 3112, 16396, -5341, 1382, 1568, 31776,
+ 31776, 3578, 31776, 31776, 809, 354, 354, 3586, 3586, 488,
+ 446, 24086, 809, 24086, 809, 3586, 3586, 3586, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 4083, 3584, 3589, 3591,
+ 3592, -144, 3574, -5341, -5341, -5341, -5341, -5341, -5341, 40,
+ 3933, -5341, 3757, 450, 23317, -5341, 3553, 4271, 4325, 4329,
+ -5341, -5341, -5341, -5341, 72804, 72804, 3579, -5341, -21, 3937,
+ 4243, 74286, 4247, -5341, 3598, 43043, 43043, -5341, 3599, -5341,
+ 23317, 3590, 3600, 3604, 97998, -5341, 4251, 234, 75768, 4197,
+ 72804, 618, 17934, 93552, 93552, -5341, 85401, 4252, 855, 3879,
+ -5341, 3606, 3610, -5341, 234, 17934, 3612, 1140, 400, -5341,
+ 3611, 3615, -5341, -5341, -5341, -5341, 23317, 3621, 93552, 93552,
+ -5341, -5341, -5341, -5341, 93552, -5341, -5341, -5341, -5341, -5341,
+ -5341, 2508, 23317, 93552, 1571, -5341, -5341, -5341, 1571, 93552,
+ 1571, -5341, 2508, 4258, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 1571, -5341, -5341, -5341, -5341, -5341,
+ 3790, 725, 3276, 3874, 3999, 2169, 46007, 1571, 1571, 23317,
+ -5341, -5341, -5341, -5341, 4150, 3575, 19472, 3632, 3631, -5341,
+ -5341,108132, 93552, 95775, 4363, -5341, -5341, 4171, 80955, 87624,
+ 46007, -5341, -5341, -5341, 2218, -5341, -5341, -5341, -5341, -5341,
+ 4197, 2385, 2422, -5341, 3635, 4197, -5341, -5341, 4322, -5341,
+ -5341, -5341, -5341, 2508, -5341, -5341, 4217, -5341, 46007, -5341,
+ -5341, 54235, 54235, 1763, -5341, 98739, -5341, 2508, 4197, 46007,
+ 1151, 230, -5341, 4376, -5341, -5341, 3756, -5341, -5341, -5341,
+ 3642, -5341, 4066, -5341, -5341, -5341, -5341, -5341, -5341, 3653,
+ -5341, 4309, -5341, 1597, 212, 93552, 90, 122, -5341, 93552,
+ 93552, 46007, -5341, 93552, 2583, -5341, -5341, 2583, 46007, 93552,
+ 93552, 2583, 23317, 42302, -5341, -5341, -5341, -5341, -5341, 42302,
+ -5341, 2966, -5341, 3861, 1812, 1812, -5341, -5341, -5341, -5341,
+ -5341, 4280, 3945, 3945, 42302, 4281, 4248, -5341, 93552, 6410,
+ 545, -5341, 51979, 93552, 4197, 23317, -5341, 3690, 4021, -5341,
+ 215, 783, 444, -5341, 3936, 230, -5341, -5341, 57243, 4009,
+ 57243, 57243, 95775, 3897, 23317, -5341, 4326, 3675, 4197, 1597,
+ 2508, -5341, 234, 234, 3895, 4187, 4188, 3800, 2508, 4190,
+ 4196, 4200, -5341, -5341, -5341, -5341, -5341, 3663, 1055, 315,
+ 1019, 69840, 4151, -21, 4266, 3692, -5341, 46007, 4345, -5341,
+ -5341, -5341, -5341, 23317,108132, -5341, -5341, -5341, 3710, 3712,
+ 3714, 3717, 3726, 3730, 3740, 3741, 3742, 3743, 3744, 3755,
+ 3758, 3760, 3763, 3765, 3766, 3770, 3775, 3779, 3785, 3788,
+ 3789, 3796, 3798, 157, -5341, -5341, 3750, -5341, -5341, -5341,
+ -5341, -5341, 1812, 93552, 4186, 58725, -5341, 3916, 4328, -5341,
+ -5341, 41561, -5341, 3732, 46007, -5341, 74286, 72804, -5341, -5341,
+ -5341, 3764, 1091,104577, -5341, -5341, 4502, 69840, 4207, -5341,
+ -5341, 3778, -5341, 3780, 4277, 4279, -5341, 95775,102444, -5341,
+ -5341, 4197, -5341, -5341, 3771, -5341, -5341, 3859, 3762, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 3816, 4069, 4180, -5341, -5341, -5341,
+ 3160, -5341, -5341, -5341, -5341, -5341, -5341, 4423, 76509,105288,
+ 3792, -5341, -5341, -5341, -5341, 2165, -5341, -5341,111492,111492,
+ 111492, 4171, -5341,100962, 23317, -5341, 1872, -5341, 23317, -5341,
+ -5341, 23317, -5341, 4197, 3822,112223, 77250, -5341, 77250,112223,
+ 23317, -5341, 3799, -5341, 4427, 4430, -5341, -5341, -5341, 23317,
+ -5341, 23317, 23317, 1932, 23317, 23317, 23317, 23317, -5341, 23317,
+ -5341, 23317, 23317, -5341, 31776, -5341, 3797, 3807, -5341, -5341,
+ 3808, -5341, 23317, 23317, -5341, -5341, -5341, 23317, 23317, 23317,
+ -5341, -5341, 3810, -5341, -5341, -5341, -5341, 23317, 23317, 23317,
+ -5341, 23317, 3486, 23317, 3521, 23317, 4020, 23317, -5341, 27162,
+ -5341, 3811, -5341, -5341, 23317, 23317, -5341, 23317, 23317, 23317,
+ -5341, -5341, -5341, 23317, -5341, 4379, 23317, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, 23317, -5341, 302, 27931, -5341,
+ 23317, 23317, 23317, -5341, -5341, 23317, 3809, 3813, -5341, 93552,
+ 2435, 3843, 230, 3815, -5341, -5341, 3824, 3830, 2965, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 987, 31776, 827, 31776,
+ 1568, 3733, 16396, -5341, 1431, 1568, 3454, 3454, 93552, 4536,
+ 3826, -5341, 23317, 23317, 17165, 23317, 95775, 23317, 3828, 3836,
+ -5341, 3834, 31776, -5341, -5341, 3838, -5341, 2299, 3843, 3929,
+ 4283, -5341, 4197, 34852, 4338, -5341, 46007, 4340, 4387, 4045,
+ -5341, 72804, 69840, 4503, 4507, -5341, 4197, -5341, 3850, -5341,
+ -5341, -5341, 3851, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ 402, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ 23317, 72804, -5341, -5341, -5341, -5341, 234, -5341, 3860, 3862,
+ -5341, -5341, 29469, 2422, -5341, 4197, -5341, 234, 234, 17934,
+ -5341, 8887, -5341, -5341, 1021, 4138, 4410, -5341, -5341, 93552,
+ 1040, 93552, -5341, 50475, 50475, 88365, 4197, 143, -5341, -5341,
+ -5341, -5341, 4197, -5341, -5341, -5341, -5341, -5341, -5341, 3875,
+ -5341, -5341, -5341, 4613, -5341, -5341, 4258, -5341, 2531, 2169,
+ -5341, -5341, 4197, 38597, 564, -5341, -5341, -5341, 19472,105999,
+ -5341, 3866, 3869, 3873, -5341, 46007,106710, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, 3878, -5341, -5341,
+ 19472, 3885, -5341, 3999, -5341, 3764, 1412, 3890, 3872, -5341,
+ -5341, -5341, -5341, -5341, -5341, 233, 248, 1915, 2531, -5341,
+ -5341, 287, -5341, -5341, -5341, -5341, -5341, 878, -5341, -5341,
+ 3999, -5341, 1440, 2508, 3927, -5341, 230, 4118, -5341, -5341,
+ 1597, 1165, 1165, 4458, 212, 4331, -5341, 4151, 4540, 4464,
+ 4466, -5341, 3663, -5341, -5341, -5341, 93552, -5341, -5341, 1068,
+ -5341, 46007, 1947, 3572, 3572, -5341, 1812, 227, -5341, 31776,
+ 4620, -5341, 4384, 42302, 4514, 4516, -5341, 42302, -5341, -5341,
+ 2173, -5341, -5341, 72063, -5341, -5341, -5341, 4197, 195, 2178,
+ 23317, 93552, -5341, 3690, 3963, -5341, -5341, 783, -5341, -5341,
+ -5341, -5341, 57243, -5341, -5341, -5341, 1465, 3896, 2178, 1589,
+ 3899, -5341, -5341, 75768, 72063, -5341, 4269, 4272, 1659, -5341,
+ -5341, -5341, -5341, 234, 234, -5341, 311, 234, -5341, -5341,
+ 518, -5341, -5341, 1688, 337, 3663, -5341, 2508, 2508, 2508,
+ 2508, 230, 2508, 2508, 2190, -5341, 321, -5341, -5341, 80955,
+ -5341, 4651, 4652, -5341, 4653, -5341, -5341, 841, -5341, 2778,
+ 933, -5341, 961, -5341, 4446, 93552, 4635, 3692, -5341, 461,
+ 2132, 4197, -5341, 4404, 3910, 3912, 230, 3917, 230, 230,
+ 2508, 2508, 3875, 2508, 230, 2508, 2508, 2508, 2508, 2508,
+ 2508, 2508, 230, 2508, 1486, 3754, 414, 2508, 230, 5255,
+ -5341, -5341, -5341, -5341, 3908, 41561, 633, -5341, 56491, 4452,
+ 2531, 3932, -5341, -21, -5341, -5341, 434, 4572, -5341, 3923,
+ 23317, -5341, 113, 4120, 3938, 59466, 69840, 69840, -5341, 2594,
+ -5341, 46007, -5341, 4564, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 65394, -5341, -5341, 4241, 1782, 3931, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 3934, -5341, -5341, 23317, -5341, -5341, 3424, -5341,
+ -5341, -5341, -5341, -5341,107421, 3930, 4197, 23317, 4197, 4197,
+ 23317, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 3939, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 3939, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 3940, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 3947,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 4626, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 4569, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, 3939, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, 3939, -5341, 3939,
+ -5341, 4575, 3939, 3939, -5341, 3952, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ 3953, 3954, 3955, 2965, -5341, 23317, 23317, 2491, 169, 169,
+ 23317, 2008, 2056, 838, -5341, 2493, 2509, 2572, 2311, 95775,
+ -5341, -5341, 2612, 2623, 2624, 2652, 2653, -5341, 2060, 3286,
+ 2096, 4197, 23317, 4197, 23317, 4197, 23317, 4197, 24086, 2753,
+ -5341, 2219, 4130, -5341, 2250, 4219, 2784, 2789, 2253, -5341,
+ 2805, 4706, 2264, 24086, 2796, 2831, 2102, 2158, 2835, 95775,
+ 93552, 3951, 3960, 3960, 194, -5341, 3958, -5341, -5341, -5341,
+ 3959, -5341, 23317, 23317, 3966, 3315, -5341, 23317, 1568, 31776,
+ 1025, 31776, -5341, -5341, 4083, -5341, 23317, -5341, 4538, 3967,
+ 4164, 3969, 3970, 3185, 3972, 3975, 3977, 3983, 4197, -5341,
+ -5341, 93552, 3985, 2082, -5341, 3875, -5341, 4598, -5341, 4701,
+ 3991, 4011, 3993, 3838, -5341, 72804, -5341, 46007, -5341, 4648,
+ 3466, -5341, 69840, 69840, -5341, 82437, -5341, 57984, 93552, 93552,
+ -5341, 4197, -5341, 17934, 618, 4747, 4750, -5341, -5341, -5341,
+ -5341, 72, 4550, -5341, -5341, -5341, -5341, 17934, 234, -5341,
+ 234, 17934, 3615, -5341, -5341, -5341, -5341, 4093, -5341, 725,
+ -5341, -5341, -5341, 1571, 4001, -5341, 234, 1344, -5341, 19472,
+ 4006, 4003, -5341, 4475, -5341, 987, 283, -5341, 3575, -5341,
+ 4016, 89106, -5341, 4018, -5341, -5341, 4558, -5341, -5341, 4649,
+ 54235, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 725, 4065, 4246, -5341, -5341, -5341, -5341, -5341,
+ 2174, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, 46007, 4602, 69840, 933, 4393, 46007, 46007, 6731, 9105,
+ 3663, 4027, 93552, -5341, 3692, 4028, 481, 4028, -5341, -5341,
+ -5341, -5341, 2082, 1812, 1812, 3125, 4509, 42302, 42302, 3605,
+ 4510, 23317, 4031, -5341, 93552, -5341, 1083, -5341, 4434, -5341,
+ -5341, 23317, -5341, -5341, -5341, -5341, 4197, 4761, 4033, -5341,
+ -5341, -5341, -5341, -5341, -5341, 23317, -5341, 55739, 23317, 4037,
+ 4038, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 302, 302,
+ -5341, -5341, 302, 302, -5341, -5341, -5341, -5341, 302, 302,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ 1055, -5341, 4788, 474, -5341, 4614, -5341, -5341, -5341, -5341,
+ 118, 230, 230, 230, 3754, 1727, -5341, 2778, 1685, 4375,
+ -5341, 6390, 1568, 1654, 4537, 1759, -5341, 2273, -5341, 4772,
+ -5341, 200, -5341, -5341,108132, 218, 238, -5341, 257, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 58725, 2531, -5341, 93552,
+ 4388, 4577, -5341, -5341, -5341, -5341, -5341, -5341, 987, -5341,
+ 4197, -5341, 4695, -5341, -5341, -5341, -5341, 122, 122, -5341,
+ 108132, -5341, -5341, 283, -5341, -5341, 4564, 4327, -5341, 1384,
+ -5341, 3939, 3939, 48, -5341, 3940, 4607, 3940, -5341, -5341,
+ 4443, 3148, 2220, 4443, -5341, 2220, 3940, -5341, 4058, -5341,
+ 4443, -5341, 2220, 3939, -5341, 3939, -5341, -5341, 2220, 3939,
+ -5341, 4059, 3940, 4443, 1355, 2330, 3940, -5341, 3939, 1499,
+ 3939, 3939, 3939, 4260, 3939, 3939, -5341, 3940, -5341, -5341,
+ -5341, -5341, -5341, -5341, 138, 3939, 3939, 3939, 3939, 3947,
+ 4712, 4715, -5341, 93552, -5341, 4197, -5341, -5341,111492, 93552,
+ 838, 4197, 3090, -5341, -5341, -5341, 604, 3246, -5341, -5341,
+ -5341, 4814, -5341, -5341, 3939, -5341, 604, -5341, -5341, -5341,
+ -5341, -5341, -5341, 604, -5341, -5341, -5341, -5341, 4070, 3454,
+ 3454, -5341, 4780, 4590, 4683, 2856, 23317, 23317, -5341, 23317,
+ -5341, -5341, -5341, 1350, 4073, 4541, -5341, -5341, -5341, -5341,
+ -5341, -5341, 23317, 23317, 23317, 4197, 4197, 4197, 3454, -5341,
+ -5341, 4057, -5341, -5341,112223, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 414, 3454, -5341, -5341, 23317, 23317, -5341, -5341,
+ -5341, 93552, 3843, 4077, 4348, -5341, -5341, -5341, 3843, 4215,
+ -5341, -5341, 3843, 230, -5341, -5341, -5341, 2280, 3315, -5341,
+ 23317, 1568, 4655, 4078, 4799, 4085, -5341, -5341, -5341, -5341,
+ -5341, -5341, 23317, 82437, -5341, 4086, 4089, -5341, -5341, -5341,
+ 4521, 23317, 4705, 4658, -5341, 3843, 93552, -5341, -5341, -5341,
+ 69840, 3598, 3598, 89847, -5341, -5341, -5341, -5341, 680, 234,
+ 234, 17934, -5341, -5341, 4096, 4099, 17934, 17934, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, 725, -5341, 38597, 2531, 22548, -5341, -5341, -5341, 19472,
+ -5341, 4104, 38597, 4563, -5341, -5341, -5341, 4452, 189, -5341,
+ -5341, 90588, -5341, 4110, -5341, 4090, -5341, 1809, 4440, 4718,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 4113, -5341, -5341, -5341,
+ 4131, -5341, 4115, -5341, 46007, -5341, -5341, 4139, -5341, -5341,
+ 39338, 4728, 4157, 4482, 46007, 234, 234, 234, 234, 234,
+ 234, 234, 234, 234, 234, 4483, 234, 234, 234, 234,
+ 234, 234, 234, 234, 234, 234, 1653, 93552, 234, 234,
+ -5341, -5341, 4685, -5341, 6520, -5341, -5341, -5341, -5341, -5341,
+ 234, -5341, -5341, -5341, 847, 4704, 4851, 4132, 4270, -5341,
+ -5341, -5341, -5341, 4237, 4273, 3692, 2468, -5341, -5341, -5341,
+ 4616, -5341, -5341, -5341, 4617, 4197, 93552, -5341, -5341, -5341,
+ 1163, 2066, 4748, 2178, 4142, 93552, 2178, 783, 444, 4197,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, 551, -5341, 80955, -5341, -5341, -5341, -5341,
+ -5341, 4887, 4892, -5341, -5341, -5341, -5341, 4330, 632, 4372,
+ 1370, 4709, 4544, 4713, 2053, 3582, 234, 4716, 4867, -5341,
+ 459, 234, 4717, 4776, 4235, 4782, 4725, -5341, 4239, 4544,
+ 4729, 4355, 4731, 4733, 4735, -5341, -5341, 9105, -5341, -5341,
+ -5341, -5341, 420, 43784, -5341, -5341, -5341, -5341, -5341, 4350,
+ 23317, 23317, 4752, 93552, 4753, -5341, 4571, -5341, 93552, -5341,
+ 987, -5341, -5341, -5341, 4476, -5341, 2281, -5341, -5341, 2339,
+ -5341, -5341, 2374, -5341, -5341, 3732, -5341, 4834, -5341, 4524,
+ 3229, -5341, -5341, 133, 4383, 4660, 4660, -5341, -5341, -5341,
+ 4765, -5341, -5341, -5341, -5341, 4815, -5341, 4443, 234, 4443,
+ -5341, -5341, 158, -5341, 158, -5341, 217, 3458, 77991, 4443,
+ -5341, -5341, -5341, -5341, 4662, 2220, 604, 77250, 1629, 4584,
+ -5341, -5341, -5341, 158, 3364, -5341, -5341, 4443, -5341, -5341,
+ -5341, 3364, 158, -5341, 4668, -5341, -5341, -5341, 158, 4443,
+ 4405, 93552, 4884, 2220, -5341, -5341,101703, 2220, 158, 4884,
+ 4749, -5341, 604, 4930, 2220, 4443, 158, 158, -5341, 197,
+ 4209, -5341,111492, -5341, -5341, 4213, 4214, 4218, 4220, -5341,
+ -5341, 2383, 4221, -5341, -5341, -5341, -5341, 4222, 4225, 23317,
+ 3364, 4683, 57243, 4226, -5341, -5341, 2857, 2162, 2432, 4491,
+ 4448, -5341, 4382, -5341, 2879, 4197, 4197, 1769, 3940, -5341,
+ -5341, -5341, -5341, 4846, 3939, -5341, 4936, -5341, 3939, 604,
+ -5341, -5341, -5341, -5341, -5341, 4232, 2442, 1776, 2880, 2881,
+ -5341, -5341, -5341, 4234, -5341, -5341, 418, -5341, 4227, -5341,
+ 2445, 4950, 2110, 23317, -5341, 4240, -5341, -5341, 93552, -5341,
+ -5341, 3454, 1118, -5341, 2449, -5341, -5341, -5341, 4244, 3598,
+ -5341, -5341, 60207, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ 17934, 17934, 3999, -5341, 4005, 2422, -5341, -5341, -5341, -5341,
+ 4611, 4245, 4249, -5341, -5341, -5341, 4236, 133, 38597, -5341,
+ -5341, -5341, 4253, 4250, -5341, -5341, -5341, 89106, -5341, 2462,
+ -5341, -5341, 4971, 19472, 2508, 2628, 4256, -5341, 80955, 4257,
+ 4259, 46748, 1625, 93552, 2484, -5341, -5341, -5341, -5341, -5341,
+ 1463, -5341, 484, 2583, 2218, 2218, -5341, 4255, 46007, -5341,
+ 234, -5341, 273, 275, 294, 335, -5341, 3875, 230, 230,
+ 2508, 2508, 234, 230, 80955, 1708, 230, 3875, 3875, 387,
+ 2508, 2329, 273, -5341, -5341, -5341, 230, 273, 265, -5341,
+ -5341, 4495, -5341, 9105, 69099, 78732, 3783, -5341, -5341, 1592,
+ 4373, -5341, 4267, 78732, -5341, 2508, -5341, 4984, 5008, -5341,
+ -5341, 4670, 23317, 4261, 23317, 4274, 2502, -5341, 2218, -5341,
+ 2218, -5341, 1163, 4985, 4986, 4932, 4987, 2066, -5341, 2240,
+ -5341, -5341, -5341, -5341, -5341, -5341, 783, -5341, -5341, 4276,
+ -5341, -5341, -5341, -5341, 4612, -5341, 5030, -5341, 4730, 44525,
+ 2583, -5341, 1739, 4321, -5341, -5341, -5341, 4924, 2813, 2813,
+ 326, 2813, 90588, 93552, 46007, 545, 443, 4907, 2226, 1869,
+ 4332, 4845, 2813, 2813, 91329, 326, 38597, -5341, -5341, -5341,
+ 2813, -5341, 2813, 46007, 92070, 326, -5341, -5341, -5341, 93552,
+ -5341, 2813, 326, -5341, 326, 326, 90588, -5341, 10320, -5341,
+ -5341, 39338, 1406, -5341, 4197, 3454, 4682, -5341, -5341, 4406,
+ 2508, 4656, -5341, -5341, 4762, -5341, 93552, 226, -5341, 230,
+ -5341, 230, -5341, 230, -5341, 31776, -5341, 3599, -5341, -5341,
+ 2065, -5341, -5341, 4657, 4452, 4802, -5341, -5341, 93552, -5341,
+ 4763, 4789, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 79473, 234, -5341, -5341, 2516, -5341,
+ -5341, 2523, -5341, -5341, -5341, -5341,101703, -5341, 2542, -5341,
+ 66876, 23317, -5341, -5341, -5341, 4884, 4298, -5341, -5341, -5341,
+ 4323, -5341, -5341, -5341, -5341, -5341, 4930, -5341, -5341, 62430,
+ -5341, -5341, -5341, 78732, 4960, -5341, -5341, -5341, -5341, -5341,
+ 5059, -5341, -5341, 4308, 2178, -5341, 4311, -5341, -5341, -5341,
+ -5341, 23317, -5341, 4543, -5341, 4650, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 3875, -5341, -5341, -5341,
+ 4313, -5341, 230, -5341, 23317, -5341, -5341, 4314, 3419, 2178,
+ -5341, -5341, 4411, 4283, 4318, -5341, 4658, 93552, -5341, -5341,
+ 17934, 17934, -5341, -5341, -5341, 4328, -5341, -5341, -5341, 38597,
+ 60948, 4319, 4316, -5341, 234, -5341, -5341, 93552, -5341, -5341,
+ 3875, 4681, -5341, 2553, -5341, -5341, 93552, 4324, 4518, 93552,
+ 93552, -5341, -5341, 4333, 93552, -5341, -5341, -5341, 39338, 4334,
+ 4942, 4944, 2218, -5341, 2583, 4869, 46748, -5341, 2583, 2583,
+ 64653, 93552, 4335, 2508, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, 4339, -5341, -5341, -5341, -5341, -5341, 2508,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 5053, -5341, 4685, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ 4341, 4337, 93552, -5341, 66135, -5341, -5341, -5341, -5341, 5002,
+ 108132, -5341, -5341, -5341, 4905, 1654, -5341, -5341, 4342, -5341,
+ -5341, 66876, -5341, -5341, -5341, -5341, 4344, 4346, 4197, 93552,
+ 4197, 93552, -5341, 4982, 4982, -5341, 3364, 3364, 5049, 3364,
+ -5341, 5055, 5060, 2240, -5341, -5341, 5097, 632, 4719, 1685,
+ 1568, 326, 1568, 5000, -5341, -5341, 93552, 46748, 90588, 46748,
+ -5341, 4842, -5341, 72063, 46748, 2813, 93552, -5341, 5004, -5341,
+ 4972, 46748, 46748, -5341, -5341, 90588, 4351, -5341, 2178, 2512,
+ 93552, 46748, -5341, -5341, -5341, 3843, 4822, 46748, 90588, -5341,
+ 90588, -5341, 4634, 4850, 3331, -5341, 4358, 4357, 93552, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 846, -5341, -5341, 2574,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 1346, 4557,
+ -5341, 2065, -5341, -5341, -5341, 46007, -5341, -5341, -5341, -5341,
+ -5341, -5341, 604, 3364, 604, 4884, -5341, 93552, -5341, 4197,
+ -5341, 93552, 5113, -5341, -5341, -5341, -5341, 47489, -5341, -5341,
+ -5341, 4684, -5341, 2581, -5341, 4367, 23317, -5341, -5341, 2892,
+ -5341, -5341, 4368, -5341, 4369, 3896, -5341, 3557, 4501, 4271,
+ 4325, 4329, 4551, 4720, -5341, 4555, -5341, 4193, 4521, 4378,
+ 31776, -5341, -5341, 1600, -5341, -5341, -5341, -5341, 95775, -5341,
+ -5341, 4374, -5341, 38597, 19472, -5341, -5341, 4795, -5341, 2597,
+ 2178, 4385, 93552, 4386, 2603, 2617, 93552, 4389, -5341, 23317,
+ 2583, -5341, -5341, 46748, 46007, -5341, 4868, 708, 46748, 46748,
+ 4392, 1381, 4394, 4396, 2550, 1663, 4397, 4059, 1687, 58,
+ 1355, 462, 1765, 4399, 1785, 4400, 1801, 1831, 1840, 1862,
+ 1864, 4409, 5094, -5341, -5341, 4412, 4415, 4416, 4418, 4419,
+ 4420, 4421, 4422, 4424, -5341, -5341, 46007, -5341, -5341, 189,
+ 265, -5341, 78732, -5341, 1714, 4593, -5341, -5341, 5164, -5341,
+ 4752, 78732, 3783, -5341, -5341, -5341, -5341, 99480, 6991, 2648,
+ 2649, 2241, -5341, -5341, -5341, -5341, 3364, -5341, 3364, 3364,
+ -5341, 4413, -5341, -5341, -5341, 5052, -5341, 5054, -5341, 2071,
+ 1501, -5341, 46748, 338, 4899, 4886, 5122, -5341, 46748, 4250,
+ 93552, -5341, -5341, 434, -5341, 38597, -5341, -5341, 4910, 4911,
+ -5341, 4929, 1406, -5341, 93552, -5341, -5341, -5341, 4527, -5341,
+ 108132, 4630, 5143, 5144, -5341, 93552, 92811, 31776, -5341, -5341,
+ 5058, -5341, 3575, -5341, -5341, -5341, -5341, -5341, 4439, -5341,
+ 62430, -5341, -5341, -5341, -5341, -5341, 2178, -5341, -5341, -5341,
+ 151, -5341, 5171, 1546, -5341, -5341, 253, -5341, -5341, -5341,
+ -5341, 93552, 4447, 4533, -5341, -5341, 4519, -5341, -5341, 2945,
+ -5341, 137, 61689, -5341, -5341, -5341, -21, 93552, -5341, 5201,
+ 4450, 1055, -21, -21, 4451, 93552, 2893, 46748, 4868, 1289,
+ 4459, 1165, -5341, 1165, -5341, -5341, 3008, 66876, -5341, -5341,
+ 3325, 93552, 4460, 5221, -5341, -5341, 4665, -5341, 93552, -5341,
+ -5341, -5341, 1759, -5341, -5341,109554, 5024, 2655, -5341, -5341,
+ -5341, -5341, -5341, 5178, -5341, 5179, 4467, 4468, -5341, -5341,
+ -5341, -5341, 46748, -98, -5341, -5341, 5101, -5341, 5149, 5151,
+ 1406, -5341, 46007, 5036, 75768, -5341, -5341, -5341, 326, -5341,
+ 93552, 46748, 46007, -5341, -5341, 4250, 878, 23317, 4826, 5164,
+ -5341, 4671, 4672, -5341, -5341, 2676, -5341, -5341, 2082, 4961,
+ -5341, 93552, -5341, -5341, -5341, 3557, -5341, -5341, 4609, 360,
+ -5341, 2679, -5341, -5341, -5341, 3843, -5341, 4481, -5341, 4843,
+ 234, 234, 4844, 234, 234, 234, 234, 4484, 2945, -5341,
+ -5341, -5341, 4835, -5341, -5341, -5341, 2752, 2178, 4487, 93552,
+ 4489, 2687, 1675, 2791, 93552, 4488, -5341, -5341, -5341, 1165,
+ 93552, 5091, -5341, 4493, -5341, 4494, 4496, -5341, -5341, 5114,
+ 2508, -5341, 4576, -5341, -5341, 3008, -5341, -5341, -5341, 4539,
+ 5119, 5080, -5341, 80955, 34083, -5341, 4988, -5341, 4943, 5184,
+ -5341, 5234, 3793, -5341, -5341, -5341, -5341, -5341, -5341, 93552,
+ 4508, 46007, 4571, 5164, 2468, -5341, 99480, 9273, -5341, -5341,
+ 89106, 89106, 5094, 3843, 4658, -5341, -5341, -5341, 34083, -5341,
+ -5341, 4658, -5341, -5341, -5341, -5341, -5341, 5134, -5341, 4197,
+ 23317, -5341, -5341, -5341, -5341, -5341, 92811, -5341, 545, -5341,
+ -5341, -5341, -5341, -5341, -5341, 93552, -5341, 4511, -5341, -5341,
+ 188, 234, 2508, 2508, 234, 3920, 3920, 3843, 80955, 4603,
+ -5341, -5341, 234, 1165, 2508, 234, 1165, -5341, -5341, 1256,
+ 2752, -5341, -5341, -5341, -5341, -5341, -5341, 1612, -21, -5341,
+ 4714, 1256, 1675, -5341, -5341, 1256, 2791, -5341, -5341, 4522,
+ 93552, 4526, 4530, -5341, 2691, -5341, 1088, 5108, 93552, 4535,
+ 93552, 93552, -5341, -5341, -5341, -5341, -5341, -5341, 4891, -5341,
+ 4542, 4545, 3754, 3754, 16396, -5341, -5341, -5341, -5341, -5341,
+ -5341, 5120, -5341, 4582, 849, 234, -5341, 3964, 4525, 93552,
+ 5193, 4904, -5341, -5341, -5341, 5121, -5341, -5341, -5341, -5341,
+ -5341, 2000, 4547, 2706, -5341, -5341, 2733, -5341, -5341, -5341,
+ -5341, 4552, 4197, -5341, 38597, -5341, 4533, -5341, -5341, 2750,
+ -5341, 28700, -5341, -5341, -5341, 2508, -5341, -5341, 2508, -5341,
+ -5341, -5341, -5341, -5341, 2762, -5341, 80955, -5341, -5341, 230,
+ -5341, -5341, 5157, 4994, -5341, 4754, 2752, 2650, -5341, -5341,
+ -5341, -5341, -5341, 4554, 93552, 93552, 4556, -5341, 93552, -5341,
+ -5341, -5341, 1363, -5341, 2790, 93552, 2815, 2820, -5341, -5341,
+ -5341, -5341, 4561, 4565, -5341, 24, -5341, -5341, 3964, 93552,
+ 4559, -5341, -5341, 4670, -5341, 5130, 2468, -5341, -5341, -5341,
+ 4658, 4568, -5341, 234, 5086, -5341, -5341, 4511, -5341, 4570,
+ -5341, 2082, -5341, -5341, 80955, -5341, 4603, -5341, -5341, -5341,
+ -5341, -5341, -5341, 1256, -5341, -5341, 2825, 4450, 93552, -5341,
+ 600, 600, 2752, 2828, 1675, 2791, -5341, 308, -5341, 1644,
+ 1644, 1326, -5341, 93552, -5341, -5341, -5341, 2468, 346, 2837,
+ 38597, 19472, 4873, 4434, -5341, 28700, 4586, 4177, -5341, -5341,
+ -5341, 4869, 4587, 4450, -5341, -5341, 1599, 5023, 5154, 5159,
+ -5341, 2752, -5341, -5341, -5341, 4588, -5341, 1644, -5341, -5341,
+ -5341, -5341, -5341, 1758, -5341, 5252, -5341, 3673, -5341, -5341,
+ -5341, 5166, 346, 346, -5341, -5341, -5341, 5305, 4748, -5341,
+ -5341, -5341, 4177, -5341, -5341, 2752, 4591, -5341, -5341, -5341,
+ 5078, 5274, -5341, -5341, -5341, -5341, 1758, -5341, 4732, -5341,
+ -5341, -5341, -5341, -5341, -5341, 391, 5174, -5341, 5176, -5341,
+ 3364, 5237, -5341, -5341, 2752, 600, 600, -5341, -5341, -5341,
+ -5341, 5266, 4951, -5341, 5354, 4606, -5341, -5341, -5341, 1413,
+ 421, 35604, 5129, -5341, -5341, 80955, -5341, -5341, -5341, -5341,
+ 80955, -5341, 2848, -5341, -5341, 38597, -5341, -5341,108132, -5341,
+ -5341, 36356, 4608, -5341, 234, -5341, 5164, -5341, 38597, -5341,
+ -5341, -5341, 19472, -5341, -5341
+};
+
+/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
+ Performed when YYTABLE does not specify something else to do. Zero
+ means the default is an error. */
+static const yytype_int16 yydefact[] =
+{
+ 0, 3619, 2, 1016, 2294, 0, 430, 0, 1243, 612,
+ 2139, 2288, 2287, 2060, 470, 220, 376, 2062, 2361, 0,
+ 0, 466, 1259, 754, 496, 0, 320, 0, 0, 473,
+ 318, 220, 1308, 3262, 2188, 0, 3368, 2126, 0, 1306,
+ 468, 2459, 2065, 0, 3524, 0, 0, 0, 3529, 72,
+ 2032, 0, 1259, 342, 3370, 85, 0, 0, 1259, 2345,
+ 3529, 0, 2373, 0, 0, 2168, 0, 0, 0, 0,
+ 3, 3621, 22, 0, 45, 27, 33, 17, 21, 16,
+ 47, 60, 53, 30, 3709, 3710, 3712, 43, 3560, 42,
+ 11, 63, 64, 19, 50, 12, 15, 18, 41, 49,
+ 37, 44, 57, 58, 1329, 1305, 1333, 1304, 1300, 1296,
+ 1315, 1316, 1317, 1323, 25, 26, 34, 51, 68, 23,
+ 65, 61, 24, 2294, 13, 28, 29, 14, 52, 46,
+ 38, 62, 69, 39, 0, 59, 40, 67, 32, 54,
+ 31, 9, 10, 20, 55, 56, 48, 70, 35, 66,
+ 36, 8, 2048, 168, 3526, 3711, 1060, 0, 0, 0,
+ 0, 2058, 0, 2058, 1151, 1374, 3558, 3559, 3560, 1260,
+ 0, 1261, 0, 0, 2501, 2502, 2744, 2759, 2807, 2559,
+ 2851, 2861, 2878, 2885, 3020, 2712, 2757, 2758, 2558, 2787,
+ 2620, 2879, 2902, 2930, 3015, 2697, 2696, 2698, 3001, 2699,
+ 2700, 2701, 2702, 2703, 3002, 2595, 2704, 2705, 2706, 2708,
+ 2707, 2709, 2710, 3003, 2596, 3630, 2597, 2669, 2711, 2671,
+ 2670, 2713, 2598, 2599, 2714, 2715, 2716, 2718, 2717, 2650,
+ 2601, 2600, 2719, 2721, 2720, 2672, 2673, 2653, 2722, 3004,
+ 2723, 2725, 2602, 2999, 2603, 2604, 2605, 2724, 2606, 2726,
+ 2654, 2727, 2728, 2607, 2729, 2730, 2731, 2732, 2734, 2733,
+ 2647, 2735, 2736, 2738, 2739, 2740, 2737, 2741, 2742, 2745,
+ 2743, 2675, 2674, 3005, 2608, 2746, 2747, 2748, 2749, 2751,
+ 2752, 2750, 2753, 2655, 2754, 2755, 2756, 2764, 3631, 2765,
+ 2767, 2766, 2676, 2768, 2769, 2770, 2772, 2771, 2773, 2775,
+ 2609, 2610, 2611, 2774, 2776, 2760, 2761, 2762, 2763, 2778,
+ 2777, 2779, 2780, 2781, 2677, 2612, 2651, 2613, 2998, 2782,
+ 2783, 2556, 2784, 2785, 3006, 2614, 2666, 2786, 2656, 2789,
+ 2788, 2615, 2790, 2616, 2791, 3007, 3008, 2792, 2793, 2795,
+ 2797, 2794, 2798, 2799, 2805, 2617, 2796, 2800, 2801, 2802,
+ 2803, 2804, 2806, 2678, 2808, 2648, 2809, 3009, 3010, 2810,
+ 2811, 2812, 2813, 2667, 2814, 2815, 2816, 2817, 2830, 2831,
+ 2821, 2822, 2824, 2825, 2828, 2823, 2829, 2834, 2833, 2835,
+ 2836, 2837, 2838, 2839, 2832, 2819, 2826, 2827, 2820, 2840,
+ 2841, 2818, 2842, 2844, 2843, 2845, 2679, 2846, 2847, 2848,
+ 2849, 2850, 3011, 2852, 2853, 2855, 2854, 2856, 3012, 2857,
+ 2858, 2859, 2663, 2860, 2680, 2681, 2862, 2863, 3013, 2864,
+ 2865, 2870, 2871, 2872, 2649, 2867, 2866, 2868, 2869, 2682,
+ 2683, 2684, 2873, 2874, 2875, 2877, 2876, 2657, 2619, 2618,
+ 3014, 2621, 2880, 2881, 2622, 2882, 2884, 2883, 2665, 2623,
+ 2886, 2887, 2889, 2888, 2624, 2652, 2625, 2626, 2890, 2891,
+ 2892, 2893, 2894, 2895, 2896, 2897, 2898, 2899, 2900, 2901,
+ 2685, 2686, 2903, 2904, 2905, 2907, 2906, 2908, 2909, 2913,
+ 2910, 2911, 2912, 2914, 2627, 2915, 2658, 2916, 2917, 2918,
+ 2628, 2920, 2919, 2629, 2921, 2922, 2923, 2924, 2925, 2664,
+ 2659, 2926, 2927, 2929, 2687, 2928, 2931, 2932, 2660, 2933,
+ 2934, 3016, 2630, 2935, 2936, 2688, 2668, 2631, 3017, 2938,
+ 2661, 2695, 2937, 2939, 2633, 2634, 2940, 2941, 2942, 2632,
+ 2943, 2635, 3018, 2944, 2946, 2945, 2947, 2948, 2949, 2950,
+ 2636, 2951, 2952, 2637, 2953, 2638, 2954, 2955, 3019, 2956,
+ 2958, 2957, 2959, 2960, 2961, 2962, 2963, 2964, 2966, 2968,
+ 2967, 2965, 2969, 2970, 2689, 2971, 2639, 2690, 3022, 3023,
+ 2691, 2972, 2973, 2974, 2975, 3021, 2662, 2976, 2977, 2642,
+ 2978, 2979, 2981, 2980, 2640, 2641, 2982, 2983, 2646, 3024,
+ 2984, 3025, 2692, 2693, 2985, 2986, 2996, 2987, 2989, 2988,
+ 2991, 2990, 2997, 3026, 2557, 2643, 2992, 2993, 2644, 2994,
+ 2645, 2995, 2694, 2506, 2522, 244, 2523, 2553, 2551, 2555,
+ 2549, 2554, 2547, 2548, 3000, 2594, 2552, 2550, 400, 131,
+ 0, 0, 2163, 2058, 2036, 2058, 2058, 2058, 2058, 2058,
+ 2058, 2061, 2058, 2058, 0, 0, 0, 400, 2068, 2363,
+ 0, 2383, 2384, 2378, 3358, 3359, 3353, 378, 0, 0,
+ 0, 2261, 2260, 0, 0, 305, 317, 320, 313, 316,
+ 0, 220, 2058, 378, 319, 320, 0, 1338, 0, 2266,
+ 320, 0, 2137, 2377, 0, 400, 2460, 2457, 2068, 2334,
+ 2336, 0, 2332, 1446, 1445, 0, 3529, 0, 2512, 1238,
+ 1270, 1195, 3530, 3531, 0, 77, 80, 2300, 343, 0,
+ 0, 0, 610, 0, 0, 1203, 0, 3531, 3541, 2375,
+ 0, 131, 1176, 0, 131, 2171, 2058, 2058, 3602, 3603,
+ 0, 0, 0, 3597, 0, 3604, 0, 1333, 0, 1319,
+ 1, 5, 0, 0, 610, 970, 610, 971, 0, 610,
+ 610, 0, 0, 0, 0, 3565, 3558, 3559, 3560, 0,
+ 2018, 1873, 1334, 1333, 1965, 1969, 3546, 3546, 3546, 0,
+ 0, 1965, 1324, 2762, 2998, 2884, 0, 2279, 2293, 2277,
+ 2495, 1302, 1298, 2606, 1019, 1061, 1024, 228, 0, 0,
+ 1026, 0, 1037, 2528, 2527, 2526, 1034, 220, 0, 1153,
+ 0, 0, 0, 3566, 3565, 0, 1215, 2281, 2282, 2283,
+ 2284, 2285, 2286, 2289, 0, 250, 400, 432, 0, 443,
+ 434, 437, 0, 132, 133, 1241, 1244, 0, 613, 2167,
+ 2166, 0, 2165, 2140, 0, 2163, 0, 2056, 0, 0,
+ 0, 0, 220, 0, 220, 2041, 2058, 2058, 471, 3652,
+ 0, 3418, 3436, 3437, 1387, 3433, 3438, 0, 3435, 3430,
+ 0, 0, 3432, 3429, 0, 0, 3457, 3431, 3434, 2597,
+ 2730, 2771, 2611, 2779, 2780, 2894, 2898, 2903, 2914, 2918,
+ 2661, 2633, 2959, 3411, 3399, 3413, 3412, 0, 0, 3416,
+ 3421, 0, 3420, 0, 0, 2070, 2364, 2365, 2369, 0,
+ 2387, 0, 391, 0, 0, 3638, 0, 0, 380, 381,
+ 3637, 3715, 0, 385, 3636, 0, 378, 3702, 0, 400,
+ 3696, 3704, 3703, 3705, 3706, 3707, 3708, 411, 0, 412,
+ 413, 467, 3699, 2524, 0, 3633, 3635, 3632, 3634, 2525,
+ 3658, 0, 0, 3701, 0, 3700, 3697, 3698, 1257, 1678,
+ 0, 2434, 2503, 2504, 0, 2447, 2452, 2453, 2445, 2446,
+ 2450, 2426, 2449, 2425, 2451, 1448, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1387, 1387, 1387, 1384,
+ 0, 0, 0, 0, 0, 0, 2443, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1384, 0, 0, 2442, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3020,
+ 2444, 1387, 1384, 1384, 0, 0, 3015, 0, 0, 0,
+ 3001, 2595, 3003, 2650, 2602, 2603, 2604, 2605, 2647, 2674,
+ 3005, 3006, 3007, 3009, 3010, 3011, 3012, 2863, 3013, 3014,
+ 2665, 2892, 2687, 3016, 3017, 3019, 2690, 3022, 3023, 2691,
+ 3021, 2662, 3024, 3025, 3026, 2643, 2694, 0, 0, 0,
+ 0, 1447, 0, 0, 1331, 1523, 755, 1393, 1405, 1421,
+ 0, 1521, 1520, 1524, 1526, 1532, 1440, 1553, 1492, 1493,
+ 1495, 1494, 1499, 1500, 0, 1654, 1501, 0, 0, 1498,
+ 2439, 1497, 1496, 2440, 2441, 1491, 2481, 2511, 0, 0,
+ 2505, 3000, 2594, 498, 497, 0, 339, 332, 327, 335,
+ 329, 331, 330, 336, 337, 338, 333, 328, 334, 321,
+ 0, 306, 0, 314, 3542, 0, 1262, 378, 474, 340,
+ 3418, 2698, 2898, 3391, 0, 3398, 0, 3557, 3551, 3554,
+ 3553, 3549, 3552, 3550, 3555, 1359, 3556, 1358, 1309, 1339,
+ 1356, 1357, 0, 0, 0, 2584, 2583, 890, 2581, 3283,
+ 3284, 0, 2585, 0, 0, 3285, 2951, 2972, 2582, 0,
+ 2517, 0, 2518, 2578, 2576, 2580, 2579, 2573, 2574, 2577,
+ 3263, 3268, 3264, 2575, 0, 2294, 0, 0, 2274, 968,
+ 967, 0, 0, 0, 0, 2210, 0, 890, 2274, 2211,
+ 0, 1930, 2264, 2267, 0, 3287, 2224, 969, 3288, 2260,
+ 0, 2196, 2212, 2173, 2217, 131, 3289, 131, 2263, 1930,
+ 2274, 0, 2189, 0, 0, 0, 2294, 1373, 0, 315,
+ 3369, 2138, 1149, 2106, 1307, 2092, 0, 469, 0, 2073,
+ 0, 2333, 3717, 3525, 0, 0, 0, 0, 3534, 1720,
+ 2033, 0, 81, 76, 0, 0, 0, 0, 2500, 3371,
+ 86, 0, 0, 3616, 74, 0, 2351, 0, 2349, 2346,
+ 2348, 0, 3534, 0, 2374, 1183, 1183, 0, 0, 1175,
+ 1177, 1178, 1183, 1183, 2172, 0, 0, 0, 2433, 2431,
+ 2432, 2513, 3599, 2430, 2429, 3608, 3610, 3593, 0, 3596,
+ 3595, 3605, 1322, 1321, 6, 71, 0, 142, 610, 220,
+ 220, 610, 167, 148, 151, 610, 610, 610, 160, 162,
+ 0, 222, 0, 0, 3565, 1337, 2807, 0, 0, 1349,
+ 1335, 1768, 1336, 1800, 1770, 1740, 1731, 1730, 1796, 1797,
+ 1799, 1798, 1801, 1803, 1793, 0, 0, 2031, 0, 2026,
+ 1874, 1879, 1873, 0, 0, 0, 0, 0, 0, 1964,
+ 1930, 1973, 1935, 1966, 1301, 1962, 0, 1297, 1362, 1362,
+ 3548, 3547, 3545, 3544, 3543, 1967, 1320, 1328, 1326, 1327,
+ 1968, 1318, 0, 2291, 2497, 0, 0, 2296, 0, 1965,
+ 1969, 2097, 2096, 2099, 0, 904, 0, 229, 0, 3563,
+ 3564, 3562, 1387, 2529, 2532, 3561, 2533, 229, 2059, 0,
+ 0, 0, 2058, 1157, 1158, 1152, 1154, 1156, 0, 0,
+ 0, 0, 2295, 0, 246, 252, 245, 441, 0, 401,
+ 378, 0, 438, 87, 0, 1245, 2049, 2051, 0, 2141,
+ 0, 1347, 1873, 2143, 2148, 2157, 2161, 2164, 2038, 0,
+ 0, 3680, 2044, 2043, 3679, 0, 2045, 0, 0, 2046,
+ 2034, 0, 447, 449, 3419, 3417, 3454, 3453, 3458, 0,
+ 3455, 3451, 0, 3410, 3459, 3444, 3448, 0, 3460, 3445,
+ 3452, 3466, 3465, 3467, 3462, 3461, 0, 3464, 3450, 0,
+ 3449, 3470, 0, 3414, 0, 0, 423, 0, 2075, 2076,
+ 2072, 1149, 2071, 2370, 0, 2362, 0, 1280, 2389, 2388,
+ 2385, 1865, 3355, 3360, 400, 392, 0, 0, 2863, 0,
+ 399, 398, 397, 3620, 420, 400, 386, 409, 0, 0,
+ 3622, 379, 382, 418, 421, 3657, 460, 456, 464, 458,
+ 3713, 274, 0, 0, 2503, 2504, 2436, 2435, 2505, 2427,
+ 2448, 0, 0, 0, 1527, 1871, 1871, 1871, 0, 0,
+ 1728, 0, 0, 0, 0, 1871, 0, 1565, 1539, 1538,
+ 0, 1566, 0, 0, 0, 0, 0, 0, 0, 1684,
+ 1684, 1650, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1722, 1724, 2481, 1871, 0, 1871, 0, 1392,
+ 1571, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1871, 1871, 1871, 0, 1582, 1584, 1583, 1871,
+ 1871, 0, 0, 0, 0, 0, 0, 1871, 0, 0,
+ 0, 0, 0, 1718, 2454, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1718, 0, 0, 0, 0,
+ 0, 0, 2456, 0, 0, 0, 2455, 0, 0, 0,
+ 0, 0, 0, 1718, 0, 0, 1529, 0, 1528, 1530,
+ 0, 1331, 756, 0, 0, 0, 1444, 1442, 1443, 1441,
+ 0, 0, 0, 0, 1450, 1452, 1454, 0, 1449, 1451,
+ 1453, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1531, 0, 0, 0, 0, 0, 2428, 0, 1603,
+ 0, 510, 2359, 0, 0, 0, 304, 1264, 2534, 0,
+ 0, 400, 3417, 0, 0, 0, 3414, 1374, 1355, 3290,
+ 0, 889, 0, 0, 892, 894, 893, 3322, 0, 891,
+ 3331, 3329, 3327, 3326, 0, 0, 3270, 3272, 0, 898,
+ 900, 899, 3320, 897, 0, 3306, 0, 0, 0, 0,
+ 0, 610, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2241, 0, 1373, 1373, 2190, 0, 2274, 0, 2274, 2264,
+ 0, 2274, 2270, 2230, 2223, 0, 0, 667, 1947, 1931,
+ 2216, 2268, 2269, 2274, 0, 0, 2274, 0, 2231, 2264,
+ 2274, 2185, 0, 0, 2177, 2182, 2178, 0, 2184, 2183,
+ 2186, 2174, 2175, 0, 2203, 0, 2215, 2222, 0, 2202,
+ 2209, 0, 2220, 2264, 2264, 0, 2274, 2274, 2274, 1150,
+ 0, 1374, 0, 3654, 2458, 2461, 2467, 2473, 2077, 2074,
+ 2335, 3620, 0, 0, 1272, 1274, 1273, 1290, 1197, 3533,
+ 0, 3535, 0, 3537, 0, 78, 0, 0, 2327, 2325,
+ 0, 0, 0, 2319, 2321, 2324, 2320, 0, 0, 2326,
+ 131, 0, 2322, 2328, 2301, 2304, 2311, 1373, 2302, 0,
+ 0, 341, 344, 346, 0, 349, 1865, 3374, 3373, 0,
+ 0, 0, 1201, 1204, 0, 2356, 2353, 131, 0, 2660,
+ 3540, 3538, 0, 1171, 1187, 134, 1181, 1182, 0, 0,
+ 1174, 134, 3355, 3617, 3618, 0, 0, 3594, 3611, 3592,
+ 0, 3606, 3607, 3591, 7, 4, 154, 0, 145, 0,
+ 0, 0, 610, 610, 137, 0, 3681, 1374, 1374, 610,
+ 610, 610, 0, 1765, 0, 1731, 1796, 1797, 1799, 0,
+ 1798, 0, 0, 1865, 0, 0, 1788, 1813, 0, 1813,
+ 1790, 1791, 0, 0, 0, 1349, 1794, 2514, 2027, 2030,
+ 0, 2019, 2021, 2022, 2526, 2024, 0, 0, 1876, 1879,
+ 1941, 1942, 0, 1364, 0, 1955, 1956, 1954, 0, 1932,
+ 1948, 1953, 1951, 0, 1923, 0, 1972, 1963, 2011, 1363,
+ 1970, 1971, 1325, 2280, 0, 2278, 2297, 2298, 2496, 1303,
+ 1299, 1021, 905, 2098, 904, 603, 606, 605, 0, 0,
+ 2069, 227, 2531, 0, 2069, 1038, 0, 2532, 3495, 0,
+ 3502, 3484, 0, 1155, 3567, 3568, 1032, 1030, 0, 1216,
+ 1217, 1220, 0, 250, 0, 253, 255, 0, 400, 433,
+ 435, 378, 444, 0, 0, 1255, 0, 1253, 1252, 1250,
+ 1251, 1249, 0, 1240, 1246, 1247, 1793, 0, 2144, 2151,
+ 2053, 2055, 2495, 0, 1348, 2146, 1921, 0, 0, 0,
+ 2159, 2057, 0, 0, 2040, 3408, 3482, 2039, 1159, 0,
+ 0, 378, 472, 448, 402, 3447, 1388, 3463, 0, 3468,
+ 3469, 3406, 225, 224, 3415, 223, 0, 0, 0, 0,
+ 3456, 3439, 0, 3443, 3442, 0, 3440, 0, 3441, 0,
+ 3446, 3423, 3422, 2471, 0, 2470, 378, 377, 2077, 3008,
+ 3024, 2371, 2367, 2366, 0, 2386, 0, 1866, 1867, 0,
+ 0, 1869, 3357, 1974, 0, 3354, 393, 400, 0, 0,
+ 0, 415, 3688, 272, 387, 400, 402, 414, 453, 275,
+ 383, 0, 0, 378, 378, 400, 3620, 3355, 3290, 1679,
+ 1681, 0, 0, 1872, 0, 1696, 0, 0, 0, 0,
+ 0, 0, 1507, 0, 0, 0, 1633, 0, 1696, 1661,
+ 2004, 2005, 1985, 1986, 1984, 1987, 1385, 0, 1988, 2003,
+ 0, 0, 0, 1659, 1330, 1313, 0, 0, 1841, 1842,
+ 1843, 1844, 1845, 1846, 1847, 1848, 1849, 1850, 1851, 1852,
+ 1854, 1859, 1855, 1856, 1857, 1858, 1853, 1860, 0, 1840,
+ 0, 1685, 1646, 1648, 0, 0, 0, 756, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1871, 0, 0,
+ 1871, 0, 0, 0, 0, 0, 0, 1660, 0, 1658,
+ 0, 0, 1657, 1551, 0, 0, 1871, 0, 1577, 0,
+ 0, 0, 1573, 0, 0, 0, 1557, 1558, 0, 0,
+ 0, 1483, 0, 1481, 1482, 0, 0, 1871, 0, 0,
+ 0, 0, 1474, 0, 0, 0, 0, 1719, 0, 0,
+ 1863, 1861, 1864, 1862, 0, 0, 1720, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1555, 0, 0, 0,
+ 2486, 938, 0, 0, 0, 0, 1522, 0, 0, 0,
+ 0, 1390, 1389, 1391, 1402, 1396, 1400, 1394, 1398, 0,
+ 1455, 3002, 1403, 0, 0, 0, 1406, 1415, 1419, 0,
+ 0, 0, 0, 0, 1426, 1424, 1425, 1437, 1438, 1422,
+ 1423, 0, 1428, 0, 1427, 1434, 1435, 1436, 1439, 1525,
+ 901, 1533, 1891, 1652, 1653, 1677, 1895, 0, 0, 0,
+ 0, 2482, 1374, 1477, 1476, 1478, 1479, 1480, 511, 0,
+ 505, 508, 522, 0, 0, 2358, 0, 2674, 2690, 2691,
+ 322, 325, 324, 326, 0, 0, 1263, 1267, 3355, 0,
+ 0, 0, 0, 3486, 3396, 0, 0, 1370, 1310, 1369,
+ 0, 0, 0, 0, 0, 3312, 3324, 0, 0, 3321,
+ 0, 0, 0, 0, 0, 3294, 0, 0, 0, 0,
+ 3267, 3333, 3334, 3337, 0, 0, 0, 2972, 0, 3269,
+ 3274, 3265, 3278, 3280, 3282, 2232, 0, 0, 0, 0,
+ 2237, 2234, 2227, 2240, 2712, 2236, 2253, 2235, 2229, 2242,
+ 2228, 0, 0, 0, 2274, 2246, 2249, 2243, 2274, 0,
+ 2274, 2245, 0, 2272, 2259, 2258, 2257, 2200, 2199, 2193,
+ 2265, 2250, 2244, 220, 2274, 2198, 2197, 2179, 2180, 2181,
+ 0, 1930, 0, 2270, 134, 2264, 0, 2274, 2274, 0,
+ 2256, 2219, 2221, 2125, 0, 1793, 0, 0, 2111, 2104,
+ 2091, 378, 0, 0, 0, 2078, 2079, 272, 0, 0,
+ 0, 495, 1290, 1276, 1292, 1199, 1198, 1196, 3532, 3536,
+ 1721, 80, 2119, 2117, 82, 2116, 2118, 83, 2337, 2313,
+ 2312, 2314, 2318, 131, 2323, 2315, 0, 2329, 2330, 350,
+ 354, 0, 0, 0, 3372, 0, 611, 0, 75, 0,
+ 1205, 1974, 2352, 2354, 2347, 3539, 0, 1172, 1189, 1188,
+ 1184, 1185, 0, 1169, 135, 1180, 1179, 1173, 2169, 3600,
+ 3609, 3613, 3598, 601, 986, 0, 3404, 3502, 189, 0,
+ 0, 0, 140, 0, 610, 161, 163, 610, 0, 0,
+ 0, 610, 0, 0, 1810, 1802, 1804, 1805, 1806, 0,
+ 1809, 0, 1352, 0, 1340, 1340, 1350, 1812, 1792, 1789,
+ 1814, 0, 1813, 1813, 0, 0, 1772, 1771, 0, 1865,
+ 895, 2023, 0, 0, 1875, 0, 1877, 1886, 1876, 1944,
+ 2687, 0, 0, 1366, 0, 1974, 1360, 2435, 0, 0,
+ 0, 0, 0, 0, 0, 1943, 1940, 0, 2299, 601,
+ 0, 604, 2098, 2098, 0, 0, 0, 0, 0, 0,
+ 0, 0, 230, 239, 1025, 2530, 1027, 0, 0, 0,
+ 0, 0, 3514, 3355, 1052, 3569, 1028, 0, 0, 1219,
+ 248, 247, 251, 0, 378, 439, 436, 431, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 134, 89, 110, 0, 1242, 1254, 2050,
+ 1248, 2145, 1340, 0, 0, 0, 2498, 0, 1958, 1922,
+ 2158, 0, 2162, 2161, 0, 3678, 0, 0, 1161, 1160,
+ 2042, 2047, 3355, 378, 292, 405, 451, 0, 0, 3403,
+ 226, 3478, 3481, 2495, 0, 0, 3424, 0, 378, 424,
+ 2079, 2368, 2372, 1281, 1283, 1284, 1282, 1290, 0, 2546,
+ 2545, 2544, 2515, 1870, 2516, 2541, 2539, 2543, 2537, 2542,
+ 2535, 2536, 2540, 2538, 0, 3363, 3364, 3362, 1979, 1975,
+ 0, 3356, 3361, 394, 395, 416, 419, 0, 0, 378,
+ 0, 388, 389, 403, 407, 0, 422, 461, 445, 445,
+ 445, 272, 1258, 0, 0, 2485, 0, 1628, 0, 1629,
+ 1630, 0, 1508, 1729, 0, 0, 0, 1536, 0, 0,
+ 0, 1632, 0, 1386, 0, 0, 1511, 1503, 1314, 0,
+ 1663, 0, 0, 0, 0, 0, 0, 0, 1668, 0,
+ 1666, 0, 0, 1723, 0, 1725, 2482, 0, 1638, 1673,
+ 0, 1636, 0, 0, 1662, 1674, 1675, 0, 0, 0,
+ 1642, 1640, 0, 1644, 1578, 1641, 1643, 0, 0, 0,
+ 1576, 0, 0, 0, 0, 0, 0, 0, 1554, 0,
+ 1589, 0, 1626, 1590, 0, 0, 1587, 0, 0, 0,
+ 1605, 1540, 1541, 0, 1542, 1592, 0, 1516, 1547, 1548,
+ 1513, 1514, 1606, 1595, 1515, 0, 1550, 1974, 0, 1534,
+ 0, 0, 0, 1552, 1581, 0, 0, 0, 1512, 0,
+ 0, 0, 1974, 0, 1607, 1556, 0, 0, 757, 1332,
+ 1504, 2483, 1397, 1401, 1395, 1399, 0, 0, 0, 0,
+ 1414, 0, 0, 1407, 1417, 1420, 0, 0, 1893, 0,
+ 0, 1671, 1718, 1718, 1718, 1718, 0, 0, 0, 1622,
+ 1623, 0, 0, 504, 503, 0, 507, 591, 0, 524,
+ 512, 501, 2360, 0, 0, 1265, 0, 0, 0, 0,
+ 3397, 0, 0, 0, 0, 1374, 1375, 1375, 2481, 3291,
+ 3292, 3293, 0, 2571, 2570, 2568, 2572, 2569, 2519, 2521,
+ 0, 2520, 2566, 2564, 2567, 2562, 2560, 2561, 2565, 2563,
+ 0, 0, 3310, 903, 902, 3323, 0, 3345, 0, 0,
+ 3330, 3351, 3352, 3349, 3350, 3348, 3328, 0, 0, 0,
+ 3273, 0, 3339, 3340, 0, 0, 0, 3308, 3307, 0,
+ 0, 0, 3300, 0, 0, 0, 2255, 0, 2226, 2239,
+ 2238, 2275, 2276, 2252, 2248, 2194, 2251, 2247, 2271, 1974,
+ 2204, 2225, 2195, 0, 2218, 2176, 2272, 2233, 1873, 2264,
+ 2191, 2192, 2254, 0, 1349, 1375, 2107, 1374, 2108, 378,
+ 2462, 0, 2469, 0, 2066, 0, 378, 1239, 1279, 1271,
+ 1278, 1275, 1290, 1288, 1277, 964, 963, 0, 1291, 79,
+ 0, 0, 2316, 134, 2310, 2331, 2305, 0, 345, 355,
+ 347, 351, 352, 353, 348, 2781, 2863, 0, 1873, 3376,
+ 3615, 1212, 1210, 1209, 1211, 1200, 1206, 1207, 2357, 2355,
+ 134, 2376, 1187, 0, 1190, 3620, 1974, 0, 3612, 155,
+ 602, 0, 0, 0, 986, 0, 165, 3514, 0, 0,
+ 0, 138, 169, 3675, 3682, 3583, 0, 156, 3685, 228,
+ 3683, 0, 0, 1807, 1808, 1769, 1340, 1342, 1341, 0,
+ 0, 1344, 0, 0, 0, 0, 1777, 0, 1773, 1775,
+ 0, 1838, 1830, 0, 2028, 2020, 2025, 2480, 1883, 1927,
+ 0, 0, 1311, 1886, 0, 1945, 1936, 0, 1367, 1365,
+ 1957, 1934, 0, 1950, 1949, 1952, 1364, 1924, 1927, 0,
+ 1374, 1022, 607, 0, 0, 1023, 0, 0, 0, 233,
+ 236, 234, 235, 2098, 2098, 183, 2098, 2098, 182, 184,
+ 0, 178, 175, 185, 2098, 1039, 171, 0, 0, 0,
+ 0, 1974, 0, 0, 0, 191, 0, 3489, 3488, 0,
+ 3504, 0, 0, 3506, 0, 3505, 3503, 3474, 3485, 0,
+ 1047, 1017, 0, 1054, 1056, 0, 0, 3569, 1218, 0,
+ 250, 254, 442, 0, 0, 0, 1974, 0, 1974, 1974,
+ 0, 0, 1974, 0, 1974, 0, 0, 0, 0, 0,
+ 0, 0, 1974, 0, 0, 0, 1974, 0, 1974, 0,
+ 88, 1256, 2142, 2054, 2161, 0, 2496, 1373, 0, 2154,
+ 1873, 0, 2160, 3355, 3409, 3483, 1159, 0, 293, 0,
+ 0, 402, 3518, 0, 0, 0, 0, 0, 2472, 426,
+ 2063, 0, 1290, 1294, 2379, 3366, 3367, 3365, 1982, 1983,
+ 1980, 1978, 1981, 396, 417, 296, 298, 3650, 295, 297,
+ 3648, 3649, 0, 3691, 3693, 0, 374, 283, 372, 3645,
+ 3643, 3647, 3641, 3646, 3639, 3640, 3644, 3642, 373, 287,
+ 3690, 3716, 0, 3689, 390, 0, 410, 402, 0, 455,
+ 457, 446, 465, 459, 378, 1682, 1680, 0, 1697, 1726,
+ 0, 3027, 3028, 3029, 3030, 3031, 3032, 3034, 3035, 3033,
+ 3036, 3037, 857, 3038, 3039, 3040, 3041, 3042, 3043, 3044,
+ 3045, 3046, 3047, 3048, 857, 3049, 3050, 3051, 3052, 3053,
+ 3054, 3055, 3056, 3057, 3058, 3059, 3061, 3060, 3062, 3063,
+ 3064, 3065, 3066, 3067, 3068, 3069, 840, 3070, 3071, 3072,
+ 3073, 3074, 3075, 3077, 3076, 3078, 3079, 3080, 3081, 861,
+ 3082, 3083, 3084, 3086, 3085, 3087, 3088, 3089, 3090, 3091,
+ 3092, 3093, 3094, 3095, 1712, 3096, 3097, 3098, 3099, 3100,
+ 3102, 3101, 3105, 3106, 3107, 3108, 3109, 3110, 3111, 3112,
+ 3113, 3114, 3115, 3625, 3116, 3117, 3626, 3118, 3119, 3120,
+ 1706, 3121, 3122, 3123, 3124, 3125, 3126, 3103, 3127, 3104,
+ 3128, 3129, 3130, 3131, 3132, 3133, 3134, 3135, 3136, 3137,
+ 3138, 3139, 3140, 3141, 3142, 3143, 3146, 3144, 3145, 3147,
+ 3148, 3149, 3150, 3151, 3153, 3152, 3156, 3154, 3155, 3157,
+ 3158, 3159, 3160, 3161, 3162, 3163, 3164, 3627, 3165, 3166,
+ 3167, 3168, 3169, 3171, 3172, 3170, 3173, 3174, 3175, 3176,
+ 3177, 3178, 3179, 3180, 3181, 3182, 3183, 3184, 3185, 3187,
+ 3186, 3188, 3189, 3190, 3191, 3193, 3194, 3195, 3196, 3197,
+ 3198, 3199, 3200, 3203, 3201, 3202, 3204, 3205, 3206, 3207,
+ 3208, 3209, 3210, 3211, 3212, 3216, 3213, 3217, 3214, 3218,
+ 3215, 3219, 3220, 3221, 3222, 3223, 3224, 3225, 3226, 3228,
+ 3229, 3230, 3231, 3232, 3233, 3234, 3235, 3237, 3238, 3239,
+ 3240, 3241, 1709, 3242, 3243, 3244, 3245, 3246, 3247, 3248,
+ 3250, 3251, 3249, 0, 3252, 3254, 3253, 3255, 3256, 3257,
+ 3258, 3259, 3260, 3261, 3192, 3227, 3236, 859, 1714, 857,
+ 2593, 1707, 859, 0, 1705, 0, 1703, 1704, 767, 769,
+ 2586, 2587, 2588, 2589, 2591, 2592, 3628, 3629, 768, 2590,
+ 0, 0, 0, 1634, 1631, 0, 0, 0, 1688, 1688,
+ 0, 0, 0, 0, 1431, 0, 0, 0, 1617, 0,
+ 1639, 1637, 0, 0, 0, 0, 0, 1645, 0, 1562,
+ 1560, 1489, 0, 1487, 0, 1488, 0, 1490, 0, 0,
+ 1627, 0, 1457, 1475, 0, 0, 0, 1721, 0, 1990,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2487, 0, 0, 927, 933, 936, 937, 939, 931,
+ 0, 1599, 0, 0, 0, 1412, 1408, 0, 1416, 0,
+ 0, 0, 1430, 1429, 1895, 1894, 0, 1670, 0, 0,
+ 1720, 0, 0, 1720, 0, 0, 0, 2484, 1375, 1604,
+ 1374, 514, 0, 532, 506, 1974, 509, 0, 523, 0,
+ 535, 0, 0, 0, 323, 0, 1268, 0, 454, 0,
+ 3395, 3487, 0, 0, 1368, 1376, 1371, 0, 0, 0,
+ 3314, 3313, 3325, 0, 0, 0, 0, 3298, 3296, 3295,
+ 3271, 0, 0, 3344, 3338, 3335, 3336, 0, 0, 3277,
+ 0, 0, 3275, 3279, 3281, 2214, 2213, 0, 2273, 1930,
+ 2187, 2206, 2208, 2274, 2127, 2131, 0, 1865, 2115, 0,
+ 0, 2109, 2113, 0, 2468, 0, 0, 2080, 1793, 3718,
+ 0, 1832, 84, 0, 2317, 2308, 0, 2303, 2306, 0,
+ 0, 3387, 3388, 3380, 3383, 3381, 3382, 3386, 3389, 3390,
+ 3377, 3384, 1930, 0, 0, 1202, 1208, 2350, 1186, 136,
+ 0, 1170, 3651, 2170, 3601, 3614, 1001, 1003, 1002, 987,
+ 988, 0, 0, 0, 1047, 0, 0, 0, 614, 614,
+ 170, 0, 0, 200, 3569, 0, 0, 0, 158, 1766,
+ 1351, 1343, 1345, 1340, 1340, 0, 1730, 0, 0, 0,
+ 1730, 0, 0, 495, 0, 1811, 1827, 896, 2393, 1884,
+ 1885, 0, 1880, 1928, 1929, 1882, 1878, 0, 1887, 1889,
+ 1312, 1946, 1938, 1933, 1361, 0, 1926, 0, 0, 0,
+ 2014, 2016, 665, 664, 238, 237, 242, 243, 1974, 1974,
+ 2103, 2102, 1974, 1974, 177, 174, 2101, 2100, 1974, 1974,
+ 172, 2069, 195, 194, 196, 197, 199, 198, 193, 1035,
+ 0, 3492, 0, 3499, 3494, 3497, 3477, 3476, 3475, 3472,
+ 0, 1974, 1974, 1974, 0, 1974, 3513, 3515, 0, 0,
+ 1036, 904, 3527, 0, 0, 205, 3571, 0, 3573, 0,
+ 1222, 0, 1221, 249, 378, 1974, 1974, 103, 1974, 95,
+ 96, 91, 123, 124, 93, 94, 99, 98, 100, 101,
+ 104, 105, 102, 97, 92, 127, 129, 128, 106, 2010,
+ 2009, 2008, 130, 125, 126, 90, 0, 1873, 2499, 0,
+ 0, 1959, 2155, 2147, 2149, 2037, 2035, 3656, 0, 452,
+ 406, 450, 0, 3402, 3407, 3480, 3479, 3502, 3502, 400,
+ 378, 400, 425, 0, 1285, 1290, 1294, 0, 1286, 2390,
+ 834, 857, 857, 874, 820, 840, 836, 840, 3119, 830,
+ 874, 786, 786, 874, 833, 786, 840, 835, 0, 832,
+ 874, 831, 786, 857, 824, 857, 780, 781, 786, 857,
+ 799, 0, 840, 874, 0, 821, 840, 826, 857, 0,
+ 857, 857, 857, 2976, 857, 857, 284, 840, 764, 770,
+ 772, 771, 773, 774, 857, 857, 857, 857, 857, 861,
+ 0, 0, 3694, 0, 273, 404, 408, 462, 445, 0,
+ 0, 1727, 0, 855, 858, 1698, 909, 0, 1711, 842,
+ 841, 0, 862, 1713, 0, 1710, 909, 856, 860, 1716,
+ 1702, 1708, 1715, 909, 1506, 1537, 1510, 1509, 0, 0,
+ 0, 1569, 0, 1686, 1692, 0, 0, 0, 1544, 0,
+ 1669, 1667, 1546, 0, 0, 1619, 2484, 1594, 1665, 1572,
+ 1596, 1549, 0, 0, 0, 1486, 1484, 1485, 0, 1563,
+ 1585, 0, 1473, 1586, 0, 1570, 1593, 1502, 1992, 1991,
+ 1989, 1517, 1974, 0, 1574, 1535, 0, 0, 1598, 2488,
+ 2489, 0, 0, 0, 938, 924, 925, 926, 0, 928,
+ 930, 932, 0, 1974, 1433, 1432, 1404, 0, 1413, 1410,
+ 0, 1418, 1897, 1896, 0, 0, 1610, 1612, 1611, 1614,
+ 1613, 1608, 1718, 1376, 1624, 0, 515, 516, 518, 520,
+ 597, 0, 510, 539, 499, 0, 514, 502, 1266, 1269,
+ 0, 3393, 3392, 0, 1372, 1380, 1379, 2478, 2482, 0,
+ 0, 0, 3311, 3332, 0, 0, 0, 0, 3342, 3341,
+ 3343, 3309, 3304, 3302, 3301, 1996, 1997, 1995, 1993, 1994,
+ 2205, 1930, 2201, 0, 1873, 0, 1830, 1375, 2105, 0,
+ 3655, 0, 2086, 0, 2083, 2090, 488, 2154, 0, 2081,
+ 2052, 0, 1835, 0, 1836, 1833, 1834, 1974, 0, 0,
+ 371, 363, 358, 366, 360, 362, 361, 367, 368, 369,
+ 370, 364, 359, 365, 357, 356, 0, 3375, 1213, 1214,
+ 0, 1193, 1191, 143, 0, 3405, 164, 0, 149, 152,
+ 715, 0, 0, 0, 0, 2098, 2098, 2098, 2098, 2098,
+ 2098, 2098, 2098, 2098, 2098, 0, 2098, 2098, 2098, 2098,
+ 2098, 2098, 2098, 2098, 2098, 2098, 0, 0, 2098, 2098,
+ 139, 483, 491, 615, 618, 654, 656, 643, 644, 480,
+ 0, 141, 269, 231, 0, 0, 0, 257, 0, 680,
+ 681, 679, 678, 0, 0, 3569, 0, 1354, 1353, 1778,
+ 0, 1782, 1787, 1783, 0, 1774, 0, 1795, 1839, 1831,
+ 0, 0, 2401, 1927, 0, 0, 1927, 0, 0, 1375,
+ 2012, 1374, 176, 181, 180, 173, 186, 179, 1040, 192,
+ 3493, 3491, 3490, 0, 3498, 0, 3473, 3509, 3507, 3508,
+ 3511, 0, 0, 3510, 3512, 1041, 1042, 1048, 1043, 1147,
+ 1147, 0, 1147, 0, 0, 1147, 2098, 0, 0, 495,
+ 1165, 2098, 0, 0, 0, 0, 0, 1130, 0, 1147,
+ 0, 0, 0, 0, 0, 1068, 1129, 616, 1018, 1067,
+ 1069, 1081, 491, 0, 1102, 1132, 1133, 1131, 3528, 0,
+ 0, 0, 1053, 0, 208, 206, 216, 3570, 0, 2069,
+ 0, 3573, 1224, 1225, 0, 440, 0, 116, 118, 0,
+ 120, 122, 0, 112, 114, 2161, 2152, 0, 1960, 0,
+ 1374, 2069, 294, 0, 0, 3516, 3516, 427, 429, 428,
+ 2120, 1287, 1295, 2392, 2391, 0, 792, 874, 872, 874,
+ 806, 875, 844, 837, 844, 808, 914, 820, 0, 874,
+ 907, 911, 908, 816, 0, 786, 909, 0, 912, 787,
+ 814, 807, 813, 844, 0, 803, 811, 874, 779, 815,
+ 802, 0, 844, 817, 822, 825, 827, 829, 844, 874,
+ 0, 0, 3620, 786, 801, 800, 0, 786, 844, 3620,
+ 838, 823, 909, 920, 786, 874, 844, 844, 288, 1974,
+ 290, 375, 445, 3714, 1683, 0, 0, 0, 0, 1699,
+ 910, 0, 0, 1717, 1700, 1701, 1635, 0, 0, 0,
+ 0, 1692, 0, 0, 1693, 1651, 0, 0, 0, 0,
+ 0, 1505, 0, 1615, 0, 1561, 1559, 0, 840, 1464,
+ 1466, 1462, 1465, 0, 859, 1468, 0, 821, 859, 909,
+ 1472, 1458, 1459, 1460, 1461, 0, 0, 0, 0, 0,
+ 2490, 922, 1601, 0, 935, 929, 927, 934, 0, 1409,
+ 0, 0, 1899, 0, 1672, 0, 1625, 519, 0, 598,
+ 594, 0, 0, 540, 0, 541, 537, 513, 0, 3394,
+ 1378, 1377, 0, 3318, 3316, 3315, 3347, 3346, 3299, 3297,
+ 0, 0, 134, 2130, 1921, 2132, 2133, 2124, 2114, 2112,
+ 2464, 0, 2087, 2089, 2475, 2474, 2486, 0, 0, 2069,
+ 2082, 1087, 0, 1088, 1099, 1101, 1293, 0, 2342, 0,
+ 2340, 2309, 2343, 0, 0, 0, 0, 146, 0, 0,
+ 0, 1012, 2623, 0, 0, 684, 686, 687, 688, 689,
+ 0, 716, 691, 610, 965, 965, 718, 2491, 0, 663,
+ 2098, 484, 1974, 1974, 1974, 1974, 641, 1974, 1974, 1974,
+ 0, 0, 2098, 1974, 0, 0, 1974, 1974, 1974, 1974,
+ 0, 0, 1974, 649, 650, 648, 1974, 1974, 2390, 490,
+ 492, 904, 619, 614, 0, 262, 3676, 475, 476, 0,
+ 0, 3573, 0, 0, 3589, 0, 3589, 0, 0, 1733,
+ 1732, 0, 0, 0, 0, 0, 0, 1820, 0, 1819,
+ 0, 1825, 1829, 0, 0, 0, 0, 2394, 2396, 0,
+ 2029, 1881, 1890, 1888, 1925, 1937, 0, 2017, 2015, 0,
+ 3500, 3496, 1977, 1976, 0, 1045, 0, 1044, 1049, 1012,
+ 610, 1148, 608, 0, 1106, 1110, 1107, 608, 2056, 2056,
+ 1259, 2056, 0, 0, 0, 0, 2056, 0, 2058, 2056,
+ 0, 0, 2056, 2056, 0, 1259, 0, 493, 1168, 1166,
+ 2056, 1167, 2056, 0, 0, 1259, 1119, 1063, 1120, 0,
+ 1064, 2056, 1259, 1086, 1259, 1259, 0, 617, 904, 1065,
+ 1066, 715, 1162, 215, 204, 0, 0, 1055, 1057, 0,
+ 0, 1058, 3572, 1031, 3575, 2069, 1230, 0, 108, 1974,
+ 109, 1974, 107, 1974, 2069, 0, 1961, 2156, 2150, 3519,
+ 0, 3401, 3400, 0, 2154, 0, 804, 878, 0, 805,
+ 846, 847, 845, 850, 782, 778, 915, 919, 918, 809,
+ 810, 789, 906, 913, 0, 872, 788, 784, 0, 1014,
+ 796, 0, 785, 828, 783, 797, 0, 280, 0, 3653,
+ 0, 0, 3660, 286, 812, 3620, 276, 794, 798, 285,
+ 0, 775, 790, 921, 791, 793, 920, 776, 777, 1974,
+ 3692, 303, 302, 0, 0, 463, 853, 851, 854, 852,
+ 0, 1567, 1568, 1689, 1927, 1687, 0, 1694, 1695, 1649,
+ 1591, 0, 1545, 0, 1616, 0, 1597, 1564, 1467, 1463,
+ 1470, 822, 1469, 1471, 1588, 1518, 1974, 1575, 1579, 1580,
+ 0, 1600, 1974, 1411, 0, 1902, 1901, 0, 0, 1927,
+ 1609, 517, 595, 512, 0, 536, 539, 0, 500, 2479,
+ 0, 0, 3305, 3303, 2207, 1958, 2465, 2463, 2085, 0,
+ 0, 0, 2084, 2094, 0, 2067, 1289, 0, 1837, 2338,
+ 1974, 0, 2307, 0, 1192, 1194, 0, 0, 0, 0,
+ 0, 717, 1013, 0, 0, 690, 2494, 683, 715, 0,
+ 0, 0, 965, 707, 610, 0, 1012, 966, 610, 610,
+ 0, 0, 0, 0, 2007, 2006, 638, 631, 630, 633,
+ 632, 635, 634, 0, 627, 624, 636, 626, 651, 0,
+ 639, 621, 676, 677, 675, 645, 652, 622, 623, 629,
+ 628, 625, 668, 673, 671, 670, 669, 674, 672, 640,
+ 655, 637, 653, 482, 599, 620, 491, 2000, 2001, 1998,
+ 1999, 660, 659, 2002, 657, 658, 268, 266, 267, 3665,
+ 0, 263, 0, 261, 0, 265, 3668, 240, 232, 0,
+ 378, 479, 477, 478, 0, 0, 157, 271, 258, 260,
+ 231, 0, 3687, 231, 3573, 1734, 0, 0, 1779, 0,
+ 1784, 0, 1776, 1815, 1815, 1826, 0, 0, 0, 0,
+ 2395, 0, 0, 2402, 2404, 1939, 0, 1043, 0, 0,
+ 0, 1259, 0, 0, 1134, 1104, 0, 0, 0, 0,
+ 1075, 0, 1084, 0, 0, 2056, 0, 1136, 0, 1135,
+ 0, 0, 0, 1145, 1146, 0, 1917, 1919, 1927, 0,
+ 0, 0, 1124, 1143, 1144, 0, 0, 0, 0, 1094,
+ 0, 1080, 1147, 0, 1147, 1103, 0, 682, 0, 1164,
+ 1105, 202, 207, 217, 218, 1033, 0, 3574, 1029, 0,
+ 1231, 1227, 1228, 1223, 117, 121, 113, 2153, 0, 0,
+ 3523, 3517, 3521, 2121, 2069, 0, 873, 848, 849, 916,
+ 917, 879, 909, 0, 909, 3620, 282, 0, 279, 3661,
+ 3662, 0, 0, 795, 312, 311, 309, 378, 299, 307,
+ 301, 0, 308, 0, 292, 0, 0, 1691, 1647, 0,
+ 1618, 1620, 0, 923, 0, 1898, 1892, 0, 0, 0,
+ 0, 0, 0, 1911, 1903, 0, 1676, 0, 597, 0,
+ 0, 525, 538, 544, 543, 3319, 3317, 2128, 0, 2088,
+ 2476, 2487, 489, 0, 0, 1100, 2341, 0, 3385, 0,
+ 1927, 1010, 0, 0, 0, 0, 0, 0, 685, 0,
+ 610, 961, 962, 1012, 0, 692, 984, 2491, 1012, 1012,
+ 3112, 857, 780, 781, 786, 857, 799, 2676, 840, 874,
+ 2680, 821, 840, 826, 857, 722, 857, 857, 857, 857,
+ 857, 0, 710, 720, 765, 767, 2586, 2587, 2588, 2589,
+ 2591, 2592, 2590, 2493, 485, 647, 2330, 646, 600, 0,
+ 2390, 270, 0, 3664, 0, 2976, 3666, 241, 187, 1374,
+ 213, 0, 3673, 3686, 3590, 3684, 159, 0, 1865, 0,
+ 0, 0, 1823, 1821, 2399, 2400, 0, 2397, 0, 0,
+ 2403, 0, 1050, 1046, 1051, 0, 1089, 0, 1108, 0,
+ 0, 1074, 0, 1245, 0, 0, 1127, 1115, 0, 1070,
+ 0, 1117, 1118, 1159, 1072, 0, 1920, 494, 0, 0,
+ 1079, 0, 1162, 1071, 1096, 1077, 1109, 1163, 209, 1059,
+ 378, 0, 0, 0, 1226, 0, 1233, 0, 3522, 3520,
+ 0, 2064, 1793, 819, 1015, 818, 3663, 281, 277, 839,
+ 1974, 289, 310, 291, 3695, 843, 1927, 1543, 1519, 1602,
+ 0, 1908, 0, 0, 1906, 1905, 0, 1900, 1907, 596,
+ 593, 0, 0, 533, 551, 547, 0, 549, 550, 572,
+ 2069, 0, 0, 2093, 2095, 2344, 3355, 0, 1007, 0,
+ 1008, 0, 3355, 3355, 0, 0, 0, 1012, 984, 2491,
+ 943, 0, 693, 0, 697, 699, 724, 0, 719, 711,
+ 732, 0, 0, 661, 481, 264, 0, 3667, 0, 188,
+ 3677, 3584, 205, 214, 259, 0, 2861, 0, 1742, 1744,
+ 1767, 1781, 1786, 0, 1816, 0, 0, 0, 2398, 2406,
+ 2405, 3501, 0, 1091, 609, 1004, 0, 1122, 0, 0,
+ 1162, 1076, 0, 0, 0, 1116, 1137, 1114, 1259, 1918,
+ 0, 0, 0, 1113, 1095, 1097, 1205, 0, 211, 187,
+ 3576, 0, 0, 1232, 1237, 0, 1234, 1236, 1346, 0,
+ 2380, 0, 300, 1690, 1909, 0, 1910, 1913, 0, 0,
+ 1914, 0, 529, 531, 521, 0, 526, 0, 545, 0,
+ 2098, 2098, 0, 2098, 2098, 2098, 2098, 565, 573, 575,
+ 576, 577, 0, 2129, 2466, 2477, 972, 1927, 0, 0,
+ 0, 0, 974, 976, 0, 0, 712, 705, 701, 0,
+ 0, 947, 985, 0, 695, 0, 0, 887, 941, 750,
+ 0, 753, 0, 885, 723, 725, 883, 884, 727, 0,
+ 0, 0, 766, 0, 0, 865, 0, 868, 0, 0,
+ 721, 0, 733, 864, 871, 2492, 642, 487, 662, 0,
+ 0, 0, 216, 187, 0, 1741, 0, 0, 1818, 1817,
+ 1832, 0, 0, 0, 539, 1090, 1005, 1123, 0, 1112,
+ 495, 539, 1128, 1073, 1125, 1126, 495, 0, 1078, 210,
+ 0, 203, 219, 3577, 3578, 1229, 0, 2122, 895, 278,
+ 1904, 1912, 1916, 1915, 527, 0, 534, 558, 548, 554,
+ 0, 2098, 0, 0, 2098, 0, 0, 0, 0, 0,
+ 542, 574, 2098, 0, 0, 2098, 0, 993, 995, 1138,
+ 973, 997, 996, 978, 994, 1006, 1011, 1010, 3355, 190,
+ 0, 1138, 975, 999, 982, 1138, 977, 998, 980, 0,
+ 0, 0, 0, 703, 0, 946, 0, 951, 0, 0,
+ 0, 0, 751, 752, 888, 726, 886, 882, 876, 870,
+ 2503, 2504, 0, 0, 0, 762, 763, 866, 759, 760,
+ 761, 0, 741, 0, 0, 872, 863, 734, 3671, 0,
+ 0, 0, 3674, 1746, 1743, 0, 1751, 1753, 1752, 1754,
+ 1745, 0, 0, 0, 1111, 1093, 0, 1121, 1083, 1085,
+ 1082, 0, 212, 1235, 0, 2381, 533, 530, 558, 0,
+ 556, 0, 552, 546, 553, 0, 590, 584, 0, 586,
+ 587, 585, 582, 569, 0, 567, 0, 989, 992, 1974,
+ 990, 144, 1140, 1139, 979, 0, 972, 0, 150, 983,
+ 153, 981, 708, 0, 0, 0, 0, 944, 0, 948,
+ 949, 950, 0, 942, 0, 0, 0, 0, 877, 881,
+ 2438, 2437, 0, 1381, 869, 0, 736, 880, 735, 0,
+ 3669, 1374, 218, 0, 1748, 0, 0, 1824, 1822, 1092,
+ 539, 2123, 2135, 0, 2407, 528, 555, 0, 563, 559,
+ 561, 564, 589, 588, 0, 566, 0, 583, 666, 991,
+ 1142, 1141, 1009, 1138, 1000, 709, 0, 1008, 0, 945,
+ 0, 0, 972, 0, 974, 976, 758, 0, 867, 728,
+ 728, 742, 3672, 0, 3585, 201, 1747, 0, 1755, 0,
+ 0, 0, 0, 2393, 557, 0, 0, 578, 571, 568,
+ 147, 0, 0, 1008, 957, 956, 0, 0, 953, 952,
+ 694, 972, 698, 700, 1382, 0, 739, 729, 731, 738,
+ 744, 745, 743, 746, 3670, 0, 1750, 0, 1761, 1760,
+ 1749, 0, 1756, 1758, 1098, 2134, 2136, 0, 2401, 562,
+ 560, 570, 579, 581, 706, 972, 0, 960, 958, 959,
+ 0, 0, 696, 1383, 730, 737, 747, 749, 0, 1738,
+ 1739, 1737, 1736, 1735, 1762, 0, 0, 1757, 0, 1759,
+ 0, 2409, 580, 702, 972, 0, 0, 748, 3586, 1764,
+ 1763, 0, 0, 2408, 0, 2413, 704, 955, 954, 3581,
+ 0, 0, 2420, 3579, 3580, 0, 3587, 2411, 2412, 2410,
+ 0, 2415, 0, 2417, 2418, 0, 2069, 3582, 378, 2419,
+ 2414, 0, 2421, 2423, 0, 2382, 187, 2416, 0, 1374,
+ 3588, 2422, 0, 1375, 2424
+};
+
+/* YYPGOTO[NTERM-NUM]. */
+static const yytype_int16 yypgoto[] =
+{
+ -5341, -5341, -5341, -5341, 2297, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, 2818, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, 2032, -5341, 389, -5341, 394, -5341, 393, -3726, -593,
+ -5341, -1880, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 2183, -2922, -5340, -5341, -5341, -235, 1368, -5341,
+ -5341, 144, -5341, -262, -5341, -5341, -5341, -4405, -410, -629,
+ -5341, 45, 4647, 3659, -82, 3990, 945, -4381, -5341, -5341,
+ -5341, -5341, -5341, -5341, -1919, -5341, -5341, -5341, -5341, 333,
+ 167, -5341, -5341, -5341, -5341, -5341, 1453, -2126, -628, 367,
+ 37, -5341, -89, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ 22, -5341, -5341, -5341, -173, 739, -4505, -5341, -5341, -5341,
+ -5341, 2419, -5341, 1834, -5341, -1747, 3685, -5341, -5341, -5341,
+ -5341, -5341, 2829, -2466, -5341, -5341, -5341, 1510, -5341, -2790,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -301, -5341, -2031,
+ 1985, -5341, 2042, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -1220, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 3355, -5341, 4605, -5341, -5341, 1228, -5341, 3245,
+ -5341, 3247, 3248, -2766, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -71, -68, 207, 873, 1385, -5341, -3887, -5341,
+ -5341, 120, -5341, -5341, -5341, -5341, -5341, 1120, 317, 1117,
+ -5341, 686, 3025, -2825, -5341, -5341, -5341, -5341, -5341, -5341,
+ -409, 27, -516, -5341, -4382, -5341, -4835, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -4018, -5341, -5341, -5341, -644,
+ -5341, -5341, -604, -5341, -5341, -5341, -5341, -293, -5341, -5341,
+ -3828, -5341, -5341, -5341, 38, -5341, 2760, 4052, -1887, 521,
+ -679, -5341, -3767, 904, -3962, -3891, -5341, -3849, -5341, -191,
+ -1300, -1294, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 482,
+ 297, 903, -4323, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -4322, -4320, 174, -5341, -5030, -5341, 636, -5341, -4857, -5341,
+ -5341, -5341, -5341, -5341, -5341, -611, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -3864, -5341, -5341, -454, -461, -5341, -354,
+ -3414, -5341, -2742, -4795, -342, -1415, -341, -340, -339, -5341,
+ -2110, 1218, 1339, -5341, -5341, -5341, -5341, -3372, -3229, -5341,
+ -2076, -3524, -3280, 1269, -3076, -3540, 1295, -452, -4346, -4849,
+ -575, -5341, -3899, -5341, -5341, -3636, -4034, -5341, -670, -2770,
+ -3171, -360, -5341, -5341, -1705, -3212, -5341, 863, -4055, -4074,
+ 426, 1707, -5341, -5341, 1204, -5341, -1642, 1202, -5341, -5341,
+ -5341, 1211, -5341, -605, -5341, -5341, -5341, -5341, -4097, -5341,
+ -2475, -4344, -5341, 5410, 5411, -2786, -574, -573, -5341, -5341,
+ -5341, -137, 2300, -5341, -3080, -377, -387, -384, -3133, -29,
+ -4870, -3687, -4250, -3722, 860, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 224,
+ 228, 1570, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, 954, -1966, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -4785, -3009, -5341, -5341, 540, -5301, -3967, -3964, -4301, 4008,
+ -5341, -5341, -5341, -5341, 4094, -3312, -4244, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 3593, 1439, -5341, -5341, 2331, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -180, 2340,
+ -5341, -5341, -5341, -5341, -5341, 2802, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -318, -5341, -5341, -5341, -5341, -5341,
+ -13, 3446, -5341, -5341, -5341, -5341, 5, -5341, -5341, -5341,
+ -5341, 2496, -5341, -5341, -5341, -5341, 2973, -5341, -5341, -5341,
+ -5341, -5341, -5341, 2144, -5341, 2717, -5341, -2450, -5341, -5341,
+ 1410, -153, -5341, -5341, -19, -5341, -5341, -5341, -5341, -5341,
+ 35, -5341, -5341, -5341, 5404, -1539, 7, -66, -5341, -5341,
+ 6, -5341, -5341, 4147, -435, 2544, -717, 4778, -5341, -5341,
+ -5341, -5341, -2485, 2408, -5341, 4205, -5341, -5341, 4395, 1641,
+ 4167, 2282, 947, 2507, -1670, -164, -3006, 1238, -5341, 1423,
+ 596, 10618, -5341, -1480, -1521, -5341, -5341, -41, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 2608, 2609, -5341, -5341,
+ 3888, -5341, 2543, -3755, -5341, -5341, -850, -5341, -2479, -5341,
+ -5341, -5341, 2545, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, 1740, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, 3837, -1597, -5341,
+ -5341, 3973, -5341, 1833, -5341, 864, -5341, -5341, 1670, -5341,
+ -2759, -5341, -5341, -1538, -636, -5341, 3978, -5341, 3995, -1191,
+ -4064, -5341, -1749, -467, -5341, -249, -5341, -5341, -5341, -5341,
+ -5341, -3437, -561, -559, -5341, -5341, -5341, 3594, -5341, 4238,
+ -5341, -5341, -5341, -5341, -5341, -5341, 3602, -5341, -2060, -5341,
+ -2534, 4242, 4254, 4262, -5341, 4263, -5341, -5341, -1522, 310,
+ -5341, 674, -5341, -5341, -5341, -5341, -5341, 1216, -5341, -237,
+ 779, -234, -4276, -1558, 1092, -5341, -5341, -1892, 3617, 4013,
+ -1271, -5341, 2915, -5341, 3608, 1786, -5341, 2342, -5341, 1099,
+ 1103, -5341, -5341, 1794, -5341, -5341, -5341, -5341, 483, -123,
+ -5341, -5341, -5341, 53, 819, -2046, -5341, 496, -3188, 4264,
+ -168, -5341, 2344, -1961, -3142, -1174, 909, -1278, 2352, 480,
+ 4847, -449, -5341, -5341, 4223, -5341, -2833, -5341, -603, -1540,
+ -1028, -3036, -3077, -4711, -5341, -2250, 1347, -5341, -5341, -5341,
+ -5341, 1124, -5341, -5341, -5341, 2946, -5341, 5520, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -701, -1176,
+ -5341, -5341, 2854, -936, -159, 5541, -17, -5341, -5341, -15,
+ -5341, -5341, 4945, -2016, -5341, -5341, 4390, 3483, 2826, -5341,
+ 1512, -5341, -5341, -5341, -5341, 1259, -5341, -5341, 216, -1158,
+ -521, 2347, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 825,
+ -5341, 1278, -1857, -5341, -5341, -5341, -5341, -9, -5341, -5341,
+ -5341, -5341, 1281, -5341, -445, -5341, -8, -5341, -5341, -5341,
+ 4816, -5341, -5341, -5341, -5341, -5341, -5341, -4085, -5341, -5341,
+ 3558, -1425, 4819, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ 3127, -5341, -5341, -5341, -5341, -5341, -5341, 3852, 4978, 4981,
+ -1660, -5341, -926, 3128, 2536, -1087, -5341, -5341, -5341, 4268,
+ 4989, -5341, -5341, 49, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 3079, 170, -5341, -5341, -5341, -5341,
+ -5341, 520, -5341, -5341, -5341, -5341, 3753, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 4156, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, 1544, -419, -5341, 768, -462, -5341, 395, -5341, -5341,
+ -5341, -5341, -5341, -532, -5341, -5341, -536, -5341, -1386, 4734,
+ -1306, -5341, -1697, -3307, -5341, 12, -5341, -5341, -5341, 3131,
+ -5341, -5341, -5341, -5341, 2877, -2504, -5341, 547, -5341, -5341,
+ -2651, -924, -1661, -3990, 231, -5341, -5341, -586, 1742, 9697,
+ -5341, -5341, 69, -474, -1243, -5341, -5341, 2827, -5, -825,
+ -126, -757, -767, -1060, -5341, 4654, -5341, -5341, -5341, -625,
+ -576, -568, -388, -507, 946, -618, 7026, 8611, -639, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, 2588,
+ 2590, -5341, 5014, -5341, 3505, 3232, -5341, -5341, -5341, 2595,
+ -5341, -5341, -5341, 5021, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, 2602, 2611, 2614, -5341, -5341, 1850,
+ -2371, -5341, -5341, -1908, 250, -5341, 3541, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -5341, 3768, -580, 4532, -549,
+ 3965, 5034, 4573, -5341, 4208, -5341, 4210, -5341, 1678, -5341,
+ -858, 2678, -1393, -3465, -5341, -5341, 2994, 1205, -5341, -5341,
+ -2520, -3086, -5341, 2519, 1119, -5341, -5341, 370, -5341, -5341,
+ -5341, 1676, 440, 5012, 4453, -5341, -5341, -5341, -5341, 5618,
+ 2030, -5341, 267, 5644, 5645, 5649, -414, -5341, -3150, -5341,
+ -4306, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341,
+ -5341, 854, -5341, -5341, -5341, 2087, -5341, -5341, -5341, -5341,
+ -5341, -5341, -5341, -5341, -5341, -1435, 4820, -5341, 1621, -2598,
+ -5341, -5341, -530, -5341, -5341, -5341, -5341, -5341, 3563, -5341,
+ 2305, -5341, -5341, -5341, -4358, -5341, -5341, -4340, -5341, 486,
+ -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -5341, -1399,
+ -5341, -5341, -5341, 80, -911, 44, -5341, -5341, -5341, -5341,
+ -5341, -5341
+};
+
+/* YYDEFGOTO[NTERM-NUM]. */
+static const yytype_int16 yydefgoto[] =
+{
+ 0, 69, 742, 1945, 70, 71, 72, 73, 74, 1911,
+ 75, 1261, 2571, 1263, 1876, 2574, 76, 711, 77, 2074,
+ 2763, 2764, 4592, 4593, 4586, 4587, 4589, 4590, 2765, 822,
+ 823, 2613, 2614, 78, 2631, 3948, 3212, 1947, 4816, 2625,
+ 5157, 1952, 4819, 1953, 4820, 2623, 3954, 4475, 1957, 1958,
+ 751, 3949, 3295, 3296, 5660, 1322, 3208, 3304, 3305, 2636,
+ 4465, 4572, 5568, 4576, 5708, 5841, 5662, 3323, 4991, 5569,
+ 5570, 646, 1332, 2126, 786, 2040, 5512, 2712, 5248, 2713,
+ 79, 815, 2063, 3330, 1436, 2064, 2065, 4882, 4883, 5258,
+ 5239, 5240, 5241, 5242, 4463, 4875, 4468, 2849, 2071, 5055,
+ 5047, 5048, 4662, 3412, 3413, 4669, 3414, 5069, 5074, 3378,
+ 3379, 4108, 3415, 5387, 5388, 5389, 666, 1132, 5390, 80,
+ 81, 667, 675, 668, 1129, 2430, 1130, 82, 83, 709,
+ 1901, 1902, 1903, 1904, 3174, 2591, 3168, 3169, 4404, 5056,
+ 3417, 84, 647, 917, 918, 919, 920, 2180, 921, 2851,
+ 3434, 922, 2843, 3403, 923, 924, 925, 893, 818, 2795,
+ 2854, 3435, 2796, 3380, 2855, 2177, 926, 927, 928, 929,
+ 930, 1543, 894, 2146, 3389, 4122, 85, 628, 819, 1438,
+ 2069, 820, 2070, 3333, 821, 2067, 1441, 3439, 2114, 848,
+ 1473, 931, 1138, 3440, 932, 2183, 2185, 2182, 3438, 4682,
+ 2184, 86, 657, 685, 645, 1471, 673, 4879, 5254, 4450,
+ 4873, 4451, 5223, 4375, 4868, 4869, 4870, 5319, 3153, 87,
+ 660, 1114, 1731, 2422, 3833, 3025, 3027, 2423, 3832, 4315,
+ 4316, 4317, 3023, 3024, 5421, 3029, 3830, 5613, 5966, 5731,
+ 5732, 3822, 5736, 4324, 4764, 4765, 4766, 5127, 5423, 5619,
+ 5860, 5737, 5973, 5858, 5969, 5859, 5971, 6096, 6049, 6050,
+ 5870, 5984, 5985, 6054, 6097, 5747, 5748, 5749, 6141, 6142,
+ 5750, 3826, 3827, 5418, 4760, 5499, 3199, 3200, 2035, 5293,
+ 1272, 88, 4452, 4556, 4453, 4454, 5193, 5878, 5807, 4456,
+ 4457, 4458, 6057, 1806, 5219, 5205, 4473, 5336, 4459, 4824,
+ 4825, 4826, 4827, 5773, 5909, 5775, 5776, 5902, 6006, 5901,
+ 4828, 4829, 5165, 5648, 5173, 4951, 4830, 4831, 4832, 5180,
+ 5482, 5650, 5646, 5784, 5785, 6116, 6117, 5800, 6081, 5801,
+ 6123, 6155, 6156, 5786, 89, 659, 1680, 5925, 5926, 5927,
+ 4176, 5483, 4177, 4178, 4179, 4649, 4180, 4181, 4182, 4183,
+ 4184, 4185, 4186, 4187, 4188, 4189, 5061, 4652, 4209, 5023,
+ 5024, 4203, 4204, 4218, 4648, 4219, 4213, 5802, 5803, 5017,
+ 4653, 6019, 4621, 5036, 5937, 5787, 5804, 5789, 4637, 1756,
+ 1757, 3244, 1771, 1772, 3074, 3075, 2038, 4638, 4689, 4639,
+ 5064, 4283, 5110, 4289, 4290, 4291, 3784, 3785, 3786, 3787,
+ 3788, 2983, 5790, 5455, 5771, 5904, 5907, 6013, 6108, 5174,
+ 4833, 5178, 1231, 4834, 4835, 5879, 5891, 5895, 5880, 5896,
+ 5892, 5642, 3203, 5881, 5882, 5883, 5898, 5894, 3939, 5884,
+ 5439, 5760, 5440, 5161, 5038, 90, 164, 4051, 1405, 2699,
+ 1407, 1417, 3327, 2725, 2724, 1420, 1419, 2717, 4021, 4527,
+ 4928, 4050, 3324, 4055, 5345, 784, 4558, 5698, 5543, 5706,
+ 5545, 4559, 4802, 4560, 5683, 5825, 4561, 5564, 5704, 5837,
+ 4803, 4804, 4562, 4563, 4564, 5991, 5992, 5993, 4937, 1850,
+ 798, 799, 1425, 1426, 1427, 2790, 5340, 4963, 91, 3194,
+ 2607, 92, 1289, 1290, 1291, 1923, 1924, 2610, 2611, 3931,
+ 4412, 93, 1256, 2567, 1913, 2599, 94, 1275, 3185, 3186,
+ 3187, 3925, 95, 1433, 2059, 2060, 2729, 4062, 4584, 4996,
+ 5353, 5576, 5349, 5715, 5716, 96, 826, 1444, 97, 630,
+ 2083, 2084, 2085, 2767, 98, 1552, 172, 99, 1740, 1737,
+ 2436, 2437, 100, 1255, 1863, 1864, 1865, 1866, 3149, 101,
+ 2154, 2813, 2814, 2815, 2816, 2562, 3900, 2563, 2564, 3158,
+ 4128, 102, 765, 1400, 103, 764, 1399, 104, 105, 684,
+ 737, 677, 1747, 107, 108, 4376, 2225, 110, 771, 769,
+ 1074, 112, 1392, 1388, 113, 2226, 1075, 761, 762, 1340,
+ 1158, 3229, 3230, 2094, 2095, 2669, 2656, 1159, 1160, 1369,
+ 2020, 2686, 2448, 2449, 1846, 2450, 3845, 4334, 6078, 1581,
+ 1483, 1259, 1077, 1078, 1079, 1691, 1692, 1707, 1080, 1701,
+ 2373, 4262, 4731, 4732, 4733, 4734, 2312, 2313, 2417, 1081,
+ 2302, 2303, 2304, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
+ 2295, 2296, 2297, 1089, 1090, 1091, 2412, 4244, 4245, 4713,
+ 3018, 3019, 3020, 1092, 2880, 4228, 2891, 2892, 2254, 1093,
+ 1094, 1095, 1096, 1097, 3808, 1098, 4305, 3987, 1099, 1553,
+ 2189, 2252, 4701, 4233, 5083, 4703, 4704, 5087, 2194, 2868,
+ 3705, 3706, 3707, 2316, 2317, 1601, 1602, 1570, 1571, 1341,
+ 4891, 6164, 1342, 5267, 5667, 5668, 5817, 6033, 5950, 5951,
+ 6130, 6131, 6132, 6133, 1343, 2642, 4476, 1344, 1345, 1346,
+ 3971, 3972, 4892, 4480, 4894, 4484, 1981, 1982, 1985, 1986,
+ 1347, 1348, 1349, 1350, 1969, 1351, 1352, 1353, 2661, 5522,
+ 4900, 4901, 5677, 5676, 4902, 4489, 4490, 3975, 3976, 4383,
+ 4384, 4385, 3240, 2248, 2249, 2324, 2159, 2160, 2161, 2195,
+ 1361, 1996, 2677, 3250, 1998, 3248, 3982, 3252, 3988, 3989,
+ 2404, 3008, 3804, 3010, 4752, 5117, 5118, 5413, 5601, 5602,
+ 5607, 4567, 5316, 5317, 2778, 1370, 2694, 3267, 3985, 1808,
+ 1809, 1372, 2002, 2681, 3256, 1810, 2009, 2010, 3261, 3369,
+ 1373, 1374, 1386, 1391, 1377, 1375, 2840, 4523, 5072, 3789,
+ 3772, 4808, 5232, 2218, 2219, 5186, 4092, 1378, 2697, 3999,
+ 4000, 4001, 1357, 1358, 1991, 1992, 1993, 1379, 1359, 2670,
+ 3978, 114, 704, 115, 2110, 837, 1468, 2109, 3165, 1446,
+ 3897, 2089, 2090, 1460, 792, 644, 116, 648, 4123, 117,
+ 688, 3896, 895, 2714, 1511, 1858, 1512, 2556, 3144, 3145,
+ 4377, 4798, 4378, 4791, 4792, 4379, 1244, 5142, 5143, 1403,
+ 4017, 4018, 4012, 2550, 3138, 1245, 1851, 3890, 2547, 3891,
+ 2548, 2576, 3892, 5014, 5580, 5964, 2544, 118, 682, 4364,
+ 5620, 3884, 3885, 6041, 6042, 1242, 119, 632, 2088, 833,
+ 1449, 1452, 1453, 2098, 4601, 2774, 5004, 4103, 4600, 1454,
+ 1455, 2776, 834, 835, 120, 725, 3195, 1295, 1830, 1831,
+ 1832, 2531, 121, 679, 1232, 3879, 4361, 2517, 663, 5752,
+ 1813, 1235, 1814, 2513, 3120, 1794, 122, 1397, 1395, 813,
+ 123, 124, 777, 173, 2025, 125, 126, 1264, 1894, 2588,
+ 3907, 3908, 4388, 1895, 1896, 3166, 127, 692, 1250, 3162,
+ 4809, 4810, 5152, 128, 716, 1279, 1280, 1917, 1915, 3190,
+ 2602, 129, 2424, 130, 649, 898, 1515, 1516, 2152, 131,
+ 719, 1284, 132, 133, 900, 4129, 5848, 6044, 653, 2156,
+ 1520, 5224, 4492, 4907, 4908, 4910, 5283, 5284, 6093, 6185,
+ 6199, 6192, 6202, 6203, 6206, 6212, 6213, 1100, 1302, 1303,
+ 1101, 5930, 1102, 1103, 1104, 2227, 1248, 687, 1854, 1855,
+ 5137, 5428, 2554, 3141, 2143, 2144, 1856, 4793, 4794, 3047,
+ 3249, 1105, 3886, 5162, 1447, 2091, 1267, 613, 1106, 614,
+ 1107, 1108, 794, 1304, 1988, 2823, 1181, 3060, 1109, 934,
+ 1413, 1738, 2048, 2049, 2824, 616, 3061, 1182, 3709, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 3716,
+ 135, 678, 1190, 1768, 1776, 2467, 1766, 2479, 3100, 2481,
+ 2482, 3105, 2483, 1238, 2454, 1767, 3089, 4347, 4346, 2480,
+ 3871, 4781, 4780, 2484, 2475, 3867, 3853, 3070, 4341, 5131,
+ 5130, 2462, 2461, 2460, 2470, 2471, 2472, 2473, 3864, 3080,
+ 3086, 136, 901, 2165, 656, 1522, 1523, 2837, 137, 681,
+ 138, 710, 1269, 2595, 3178, 3179, 3920, 4406, 3921, 139,
+ 1143, 1144, 140, 884, 3206, 2799, 2104, 1416, 886, 2105,
+ 2127, 888, 1475, 889, 890, 891, 892, 4040, 3316, 3317,
+ 2804, 2107, 2050, 2444, 3309, 4513, 2051, 4034, 4035, 4514,
+ 2722, 5360, 4047, 3320, 5011, 4113, 5361, 5362, 141, 696,
+ 142, 5249, 703, 1258, 1873, 143, 144, 145, 146, 770,
+ 1382, 1161, 165, 166, 167, 168, 802, 803, 3326, 4057,
+ 4579, 4580, 5347, 6195, 6196, 2635, 3952, 5811, 6125, 6189,
+ 6208, 5260, 5261, 147, 1309, 1305, 736, 1943, 1937, 1939,
+ 2621, 3198, 148, 149, 150, 5052, 151, 1541, 2809, 2072,
+ 3717, 3718, 627, 939, 3428, 3933, 850, 5050, 1247, 2551,
+ 2112, 940, 941, 942, 5053, 3429, 5244, 5259, 5246, 5513,
+ 5665, 3214, 3951, 5250, 152, 153, 2633, 3957, 3955, 2173,
+ 2850, 3430, 4680, 943, 944, 945, 946, 2186, 947, 1533,
+ 155, 1861
+};
+
+/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
+ positive, shift that token. If negative, reduce the rule whose
+ number is the opposite. If YYTABLE_NINF, syntax error. */
+static const yytype_int16 yytable[] =
+{
+ 615, 801, 738, 695, 797, 1539, 111, 109, 1179, 1230,
+ 2349, 2026, 134, 1758, 2594, 1761, 1762, 2399, 938, 2577,
+ 807, 669, 1415, 1775, 2618, 669, 2771, 658, 2716, 916,
+ 669, 2100, 1414, 683, 938, 106, 796, 2258, 2432, 1189,
+ 2217, 3846, 1339, 3268, 154, 1137, 706, 2224, 4088, 3142,
+ 2779, 2617, 714, 1183, 2696, 1836, 718, 707, 3416, 2011,
+ 1188, 4002, 2011, 715, 4106, 1316, 885, 1317, 1260, 3940,
+ 1319, 1320, 3977, 1603, 739, 1739, 676, 1525, 790, 1530,
+ 3996, 1531, 1532, 3878, 4565, 2289, 4487, 4566, 1536, 3157,
+ 2015, 1999, 1180, 3442, 3443, 2278, 885, 887, 2172, 4455,
+ 4455, 2543, 1184, 4003, 3098, 2036, 3720, 3207, 3721, 2121,
+ 1185, 2037, 3154, 1989, 699, 3992, 1564, 2333, 780, 1932,
+ 3722, 1804, 2501, 2502, 4208, 3167, 1445, 1145, 1286, 3888,
+ 3236, 1293, 4690, 3704, 3771, 2352, 3332, 3704, 2431, 2508,
+ 111, 782, 4690, 1837, 2731, 2853, 1964, 2701, 1193, 4690,
+ 936, 785, 787, 2590, 808, 787, 809, 795, 810, 2524,
+ 4557, 4694, 4222, 5233, 811, 812, 936, 4987, 4695, 106,
+ 3232, 1186, 778, 4217, 5071, 3231, 3231, 4059, 4217, 111,
+ 109, 2096, 4461, 2537, 2538, 134, 5371, 2384, 2385, 2386,
+ 2387, 2388, 2389, 2390, 2392, 2394, 2395, 2396, 2397, 2398,
+ 3824, 4373, 4455, 2432, 4411, -2501, 4934, 4935, 106, 4936,
+ 4896, 3979, 3980, 2364, -1868, -1868, 4210, 1676, 1678, 1679,
+ -2502, 2372, 2374, 2838, 2377, 2378, 1539, 2587, -2650, 4939,
+ 1721, 4941, 1644, 4046, 4953, -1020, -1020, 1662, -2666, -3378,
+ -3378, 1666, 4636, 4636, 2838, 4285, 4636, 4582, 4971, -2795,
+ -2795, -384, -384, 4636, -3379, -3379, 2838, 2061, 3961, 4636,
+ 2788, 2157, 1404, 938, 2838, 938, 2766, 938, 938, 935,
+ -2098, -486, -486, 5351, 938, 4995, 1401, 938, 672, 2862,
+ 4212, 1401, -2667, 2838, 2612, 935, 3877, 3362, 1163, 5444,
+ 5445, 5422, 4799, 3231, 4372, 4373, 1686, 701, 4286, 2838,
+ 1489, 2838, -2668, 2431, 1687, 1838, 4073, 1686, 2210, 2211,
+ 2212, 5059, 2213, 1688, 2214, 1687, 2215, 2210, 2211, 2212,
+ 2838, 2213, 1390, 2214, 1688, 2215, 723, 817, 2032, 1686,
+ 3769, 1686, 2210, 2211, 2212, 1389, 2213, 1687, 2214, 1687,
+ 2215, 1330, 1686, 650, 2157, 689, 1688, 1401, 1688, -3456,
+ 1687, 2980, 4031, 1401, 779, 755, -3378, -3439, 1401, 1688,
+ 720, 2838, 1708, 2834, 2720, -3443, 2876, 3393, 1708, 5842,
+ 5972, -3379, 5184, 4020, 5187, 4232, 4010, 4331, 4332, 1401,
+ 3306, 5754, 2798, 1941, 1246, 5484, 4205, 32, 1686, 5727,
+ 1431, 1709, 1710, 5189, 800, 936, 1687, 936, 4206, 936,
+ 936, -3378, 1423, 4216, 3205, 1688, 936, 2106, 4613, 936,
+ 661, 1686, 1686, 2838, 3923, 3924, -3379, 2835, 3021, 1687,
+ 1687, 829, 806, 4223, 2928, 1401, 2172, 4112, 1688, 1688,
+ 4836, 3146, 1760, 1800, 5191, 804, 2118, 2789, 39, 4618,
+ 2838, 1325, 1401, 32, 1401, 6127, 1686, 1795, 4671, 4618,
+ 1686, 6079, 5649, 5020, 1687, 1711, 830, 2665, 1687, 4348,
+ 1708, 1711, 2557, 1688, 665, 2076, 690, 1688, 2032, 4285,
+ 5562, 1689, 693, 5942, 836, 5021, 838, 839, 840, 841,
+ 842, 843, 1689, 844, 845, 3134, 5209, 3311, 1686, 1709,
+ 1710, 5179, 4872, 5823, 39, 5247, 1687, 1802, 938, 2917,
+ 717, 2788, 1708, 41, 1689, 1688, 1689, 6179, 4060, 3877,
+ 2200, 3201, 4958, 1136, 935, 1437, 935, 1689, 935, 935,
+ 883, 5549, 4286, 169, 1331, 935, 1686, 4511, 935, -1943,
+ 3037, 1709, 1710, 1732, 1687, 5245, 4089, 32, 1871, 1752,
+ 1712, 4374, -2795, 1688, 1686, -3378, 1712, 6128, 1686, 2619,
+ 883, 2162, 1687, 1711, 2365, 1868, 1687, 2627, 4630, 4821,
+ -3379, 1688, 4690, 1689, 5071, 1688, 766, 1296, 1297, 5852,
+ 698, 1254, 5630, 4836, 1972, 5256, 3875, 4469, 1690, 896,
+ 2992, 5031, 698, 1207, 1459, 1270, 1689, 1689, 39, 1690,
+ 5998, 6197, 2455, 4614, 6000, 1711, 1371, 41, 4690, 767,
+ 1907, 1371, 2157, 1371, 3155, 4455, 651, 2465, 2878, 5724,
+ 3030, 1690, 3312, 1690, 1686, 2033, 1163, 5062, 1542, 3156,
+ 1339, 1689, 1257, 4220, 1690, 1689, 1727, -3442, 694, 3307,
+ 936, 1688, 1833, 2366, 1835, 3015, 4470, 4539, 1712, 1948,
+ 849, 795, 1951, 3016, 629, 1686, 1954, 1955, 1956, 3077,
+ -221, 4016, 4957, 1687, 3127, 4690, 5728, -3440, 1736, 2993,
+ 2222, 4626, 1688, 1689, 2047, 1134, 4557, 6104, -714, -3441,
+ 1690, 795, 6198, -3446, 5103, 1163, 1603, 4628, 2789, 1432,
+ 1712, 5824, 1753, 5853, 2442, 5690, 1251, 1469, 1470, 3135,
+ 4217, 2093, 795, 1690, 1690, 2679, 2011, 5380, 824, 3966,
+ 4014, 1689, 2077, 3970, 4090, 1268, 795, 2201, 4455, 2505,
+ 6080, 2507, 1676, 1678, 2511, 4471, 1135, 1466, 3859, 1689,
+ -715, 3257, 2367, 1689, 2682, 2163, 2519, -1868, 1690, 2522,
+ 2499, 4925, 1690, 2525, 2036, 3444, 4636, 4520, 1315, 768,
+ 2037, 3960, 1908, 2075, 654, 2047, 4959, 3231, 2994, 935,
+ 1803, 2172, 5605, 831, 780, 2033, 1461, 1462, 1463, 2540,
+ 2541, 2542, 6100, 4622, 4636, 4624, 1733, 2108, 4636, 4656,
+ 1690, 1394, 4657, 4512, 4643, 4636, 1387, 3242, 6129, 5705,
+ 2651, -1868, 1273, 897, 795, 4926, 2078, 2861, 2079, 4320,
+ 824, 2666, 5954, 824, 4658, -1943, 2986, 2987, 4349, 1686,
+ 795, 938, 2981, 1801, 4466, 4670, 829, 1687, 1690, 1434,
+ -3378, 2433, 4313, 3314, 2418, 3321, 1688, 654, 1326, 3022,
+ 1689, 5729, 780, 6180, 5022, -3379, 1690, 4202, 5452, 1456,
+ 1690, 1458, 171, 787, 787, 787, 1464, 4287, 795, 4061,
+ 1424, 830, 1421, 4960, 6105, -2678, 1686, 2877, 1363, 1874,
+ 2721, 2187, 5792, 4619, 1687, 4210, 691, 4210, 6106, 1281,
+ 1686, 654, -2161, 1688, 1942, 4769, 4210, 1872, 1687, -3565,
+ 695, 1686, 2786, 2401, 2419, 3128, 6220, 1688, 2080, 1687,
+ 827, 662, 4210, 3360, 3376, 885, 4210, 1465, 1688, 1467,
+ 3876, 4039, 832, 1365, 847, 2721, 780, 4210, 1529, 3000,
+ 3001, 4877, 3004, 3005, 2721, 654, 2769, 1534, 948, 5225,
+ 1537, 1207, 68, 1797, 4032, 2536, 1711, 4202, 5571, 2807,
+ 1962, 2082, 3031, 1544, 111, 109, 1686, 1690, -3456, 5364,
+ 134, 1240, -2161, 936, 1687, 3202, -3439, 2204, 1686, 3359,
+ 2836, 1266, 4126, 1688, -3443, 4630, 1687, 4632, 724, -2650,
+ 2029, 1874, 2081, 106, 1490, 1688, 652, 1389, 5516, -2666,
+ 4212, 4524, 4288, 4631, 1686, 5730, 2839, 5968, 68, -2507,
+ 1207, 2158, 1687, -2650, 1689, 2082, 2433, 3981, 2443, 4583,
+ 1645, 1688, 721, -2666, -2508, 1663, 2376, 2839, 1414, 1667,
+ 1354, 4836, 3877, 5519, -1868, 5520, 5959, 1402, -115, 2839,
+ -115, 1712, 1402, -2667, 738, 5352, 1663, 2839, 4327, 4934,
+ 4935, 4565, 4936, 2327, 4566, -1020, 1834, 5586, -119, -3378,
+ -119, 1689, 4455, -2668, 4455, 1334, 2839, -2667, 4020, -2795,
+ 722, -384, 3370, 4953, -3379, 1689, 1750, -111, 6014, -111,
+ 6016, 6017, 2839, 2890, 2839, 1759, 1689, -2668, 883, 4551,
+ 2523, -486, 935, 1773, 2158, 4616, 4617, 3308, 1686, 2990,
+ 1414, 4287, 68, 2839, 2216, 4015, 1687, 1684, 1402, 2082,
+ 3770, 2839, 1796, 2288, 1402, 1688, 1681, 4647, 2929, 1402,
+ 2982, 1690, 1683, 4650, 1807, 5071, 6027, 4557, 6114, 5155,
+ 2812, 2879, 4659, 2695, 4663, 4664, 4665, 3254, 4667, 4668,
+ 1402, 1689, 2488, 1774, 2839, 5663, 5226, 1179, 4672, 4673,
+ 4674, 4675, 4676, 1689, 1713, 1714, 1715, 1716, 1717, 1718,
+ 1719, 1720, 1715, 1716, 1717, 1718, 1719, 1720, 1690, 4455,
+ 795, 5247, 1521, 1339, 6066, 6067, 1253, 2357, 1189, 1689,
+ 3234, 3235, 1690, 3297, 4919, 6073, 1402, 1693, 1694, 1695,
+ 2420, 1696, 1183, 1690, 5233, 5233, 2839, 795, 2909, 1188,
+ 1539, 2884, 5655, 1402, 2368, 1402, 795, 655, 6107, 795,
+ 2464, 5664, 885, 4472, 795, 3771, 3771, 1815, 4836, 3771,
+ 3771, -3266, 4878, 2839, 5100, 3771, 3771, 3101, 5102, 3849,
+ 2995, 1180, 4927, 2047, 2503, 2885, 3078, 2898, 6103, 2899,
+ 4217, 1184, 4978, 2456, 4217, 795, -3442, 5572, 1690, 1185,
+ -3471, 3079, 4522, 2600, 1715, 1716, 1717, 1718, 1719, 1720,
+ 1690, 1686, 4961, 2166, 654, 1798, -1828, 1313, 2509, 1687,
+ 1909, 1371, 1995, 1689, 2174, 2900, -3440, 2901, 1688, 631,
+ 655, 32, 807, 1857, 1779, 780, 1690, 1193, -3441, -2681,
+ 780, 780, -3446, 3861, 1339, 1714, 1715, 1716, 1717, 1718,
+ 1719, 1720, 1491, 2052, 4048, 1339, 1339, 1910, 1697, 2805,
+ 1186, 738, 2468, 2629, 2630, 2894, 1920, 832, 5123, 825,
+ 2638, 2639, 2640, 3904, 655, 1845, 3834, 670, 1513, 3310,
+ 780, 1933, 39, 2895, 824, 2914, 824, 2584, 4690, 3072,
+ 4690, 41, 1368, 3902, -1868, 4911, 4897, 5540, 4914, 5542,
+ 3927, 1946, 2158, 2701, 5547, 671, 3097, 5583, 5703, 5585,
+ 3102, 5552, 5553, 2036, 2603, 4887, 3182, 1508, 655, 2037,
+ 4493, 5559, 780, 1971, 4632, -3471, 2432, 4836, 2565, 883,
+ 1690, 2905, 1498, 1681, 4496, -2161, 5098, 2056, 2421, 1683,
+ 2775, 4052, 5573, 1994, 1926, 4915, 1686, 3124, 3372, 1355,
+ 1708, 4788, 1686, 3255, 1949, 1950, 1934, 1912, 2703, 885,
+ 1687, 2018, -3276, 1688, 3034, 3035, 808, 5757, 809, 1688,
+ 810, -1828, 2011, 3738, 2011, 2011, 811, 812, 3311, 1709,
+ 1710, 1518, 2027, 2028, 2896, 1508, 1689, 2157, 1387, 2036,
+ 3076, 111, 109, 2041, 3382, 2037, 2853, 134, 2791, 2792,
+ 3260, 4063, 3263, 3264, 780, -2161, 795, 3114, 2320, 2321,
+ 3371, 3115, 693, 3117, 787, 780, 4654, 2190, 780, 4536,
+ 106, 5643, 938, 4481, 4482, 3092, 2431, 3122, 4210, 780,
+ 2439, -3266, 5956, 780, 3167, 2092, 5829, 2514, 3802, 3803,
+ 3130, 3131, 3223, 1711, 5456, 2102, 5936, 2224, 3224, 3015,
+ 795, 4898, 795, 780, 6070, 4105, 4585, 4772, 1163, 3883,
+ 2702, 693, 938, 2031, 3809, 3812, 3815, 3816, 4477, 4478,
+ 1492, 1860, 4342, 2793, 3231, 3231, 1867, -1868, 3828, 1816,
+ 2515, 795, 3183, 4917, 1686, 5181, 4351, 795, 6025, 1499,
+ 4354, 3823, 1687, 1690, 2566, 4735, 2504, 938, 1514, 5757,
+ 698, 1688, 2700, 3312, 1898, 3155, 1686, 3795, 2808, 3798,
+ 2832, 2168, 3704, 3936, 1687, 1914, 4049, 4613, 738, 1927,
+ 3156, 3298, 2469, 1688, 2825, 5169, -3471, 1689, 1712, 3905,
+ 2510, 2831, -1828, 4709, 938, 938, 2915, 780, 795, 1686,
+ 6009, 2061, 4836, 1686, 3877, 916, 1137, 1687, 5695, 1686,
+ 2841, 1687, 1493, 1509, 936, 4636, 1688, 1687, 1354, 1686,
+ 1688, 1356, 1577, 1578, 1579, 3394, 1688, 1687, 694, 1717,
+ 1718, 1719, 1720, 2826, 1869, 3313, 1688, 3043, 3044, 5170,
+ 5124, 2827, 111, 2969, 4541, 2970, 2400, 4605, 4606, 3182,
+ 1681, 846, -1868, 937, 936, 1519, 1683, 3796, 693, 3797,
+ 3093, 5688, 5788, 1686, 3184, 4053, 4097, 1626, 4238, 937,
+ 4239, 1687, 4899, 1510, 1187, 2516, 883, 694, 5924, 2833,
+ 1688, 1509, -3276, 5577, 2162, 5163, 5378, 3937, 1690, 936,
+ 1500, 3299, -1868, 1686, 1690, 780, 1792, 655, 3300, 780,
+ 2045, 1687, 2829, 3862, 3301, 780, 2369, 1686, 6089, 6071,
+ 1688, 2057, 4655, 2162, 3003, 1687, 2350, -2495, -904, 1689,
+ -904, 686, 2082, 2916, 1688, 3393, 936, 936, 6010, 2086,
+ 3863, 2086, 5936, 935, 693, 2940, 5033, 2546, 5171, 111,
+ 2358, 1689, 5822, 5251, 174, 175, 2032, 4099, 6147, 5614,
+ 2490, 2491, 5034, 2493, 2495, 2496, 2497, 4710, 3962, 3956,
+ 700, 5835, 4614, 2902, 3314, 2506, -2098, 795, -2098, 2405,
+ 2122, 2988, 2322, 935, 1689, 2323, 3906, 3375, 1689, 3302,
+ 1401, 5638, 2123, 2521, 1689, 780, 5644, 5645, 1792, 795,
+ 795, 5338, 5252, 2690, 1689, 1686, 1287, 795, 2457, 5163,
+ 5943, 5915, 5164, 1687, 4931, 6011, 5172, 1327, 935, 5689,
+ 3932, 1841, 1688, 1207, 694, 3183, 68, 2735, 2451, 2474,
+ 5751, 2828, 1847, 2589, 5285, 3315, 1690, 787, 787, 780,
+ 787, 787, 787, 787, 780, 795, 780, 2124, 1689, 1870,
+ 3303, 1793, 787, 2634, 2637, 935, 935, 5783, 1690, 800,
+ 6148, 5783, 2425, -1868, -940, 4299, 2452, 4300, 2163, 2520,
+ 787, 5194, 795, 2076, 2622, 3068, 2999, 3938, 1689, 5685,
+ 1328, 5207, 5208, 883, 1848, 2628, 1686, 702, 1288, 3062,
+ 5506, 1690, 1689, 780, 1687, 1690, 3067, 2163, 4380, 5970,
+ 694, 1690, 5974, 1688, 2164, 780, 1686, 5514, 937, 712,
+ 937, 1690, 937, 937, 1687, 1408, 4191, 3882, 4525, 937,
+ 5339, 885, 937, 1688, 2671, 3801, 2844, 5032, 4192, 5778,
+ 6193, 5686, 1398, 2082, 2852, 1698, 1699, 1700, 3063, 5307,
+ 5292, 2328, 1539, 1793, 1246, 2332, 3064, 3184, 5253, 2526,
+ 4085, 2338, 3040, 1686, 795, 1690, 5397, 1539, 3181, 5751,
+ 2036, 1687, 3850, 5615, 5616, 1686, 2037, 3922, 169, 780,
+ 1688, 1686, 938, 1687, 2605, 5767, 5075, 2715, 3854, 1687,
+ 1689, 6120, 1688, 3139, 3069, 1690, 1339, 713, 1688, 3857,
+ 3858, 5416, 1339, 2082, 5301, 795, 5783, 5779, 3432, 1690,
+ 726, 4098, 2624, 5958, 795, 795, 795, 1339, 2691, 5960,
+ 780, 3911, 3912, 5783, 766, 3215, 2011, 1409, 3216, 824,
+ 5326, 2453, 3221, -904, 2047, 1686, 780, 1329, 2943, 2125,
+ 4775, 2438, 6088, 1687, 6109, 4778, 4779, 780, 780, 4526,
+ 1686, 2106, 1688, 2033, 3260, 795, 824, 767, 1687, 5890,
+ 3163, 1842, -1259, 4117, 4118, 4366, 4570, 1688, 3188, 1686,
+ 3243, 1689, 4016, 5617, 5726, 4508, 708, 1687, 2042, 2054,
+ 1459, 3852, 5769, 6194, 3877, 2492, 1688, 6121, 727, 759,
+ 2498, 1689, 2500, 6126, 3877, 3877, 6061, 1690, 6060, 6094,
+ 5780, 4634, 4367, 3441, 3441, 3441, 4497, 2683, 795, 5929,
+ 2047, 1686, 3965, 2000, 936, 760, 3969, 780, 5084, 1687,
+ 2077, 5779, 2413, 780, 4086, 4938, 1276, 2730, 1688, 760,
+ 4952, 5874, 2011, 6163, 1339, 4962, 3065, 2608, 1689, 2535,
+ 5402, 6122, 4006, 5929, 4863, 5618, 5181, 780, 6187, 6188,
+ 1689, 2545, 3259, 937, 2414, 2055, 1689, 1843, 5783, 1686,
+ 4101, 4571, 1456, 1686, 2783, 938, 1708, 1687, 2785, 4104,
+ 4658, 1687, 5119, 1844, 780, 780, 1688, 2158, 1690, 2433,
+ 1688, 2912, 1713, 1714, 1715, 1716, 1717, 1718, 1719, 1720,
+ 6035, 2803, 2803, 2609, 1410, 1709, 1710, 768, 1690, 1686,
+ 5556, 1376, 5546, 2684, 2078, 1686, 2079, 1687, 5435, 5781,
+ 1689, 1277, 1411, 1687, 5780, 795, 1688, 5608, 4007, 780,
+ 2001, 4729, 1688, 1686, 938, 1689, 1686, 4087, 2415, 780,
+ 4202, 1687, 5202, 935, 1687, 2847, 1380, 2380, -2669, 938,
+ 1688, 170, 5875, 1688, 1689, 1690, 2856, 849, 4574, 5783,
+ 740, 3273, 3274, 4903, 4904, 4575, 2632, 1690, 4210, 1711,
+ 2193, 1686, 4210, 1690, 4864, 1686, 5359, 1278, 2193, 1687,
+ 1477, 1363, 1354, 1687, 741, 1364, 885, 5203, 1688, 3426,
+ 938, 2685, 1688, 1354, 1354, 5685, 1689, 171, 6036, 938,
+ 938, 938, 4660, 3419, 3068, 1381, 2080, 936, 1539, 3983,
+ 3425, 2193, 1564, 111, 2888, 3432, 3715, 3374, 3062, 2416,
+ 3715, 5697, 743, 2913, 3723, 3067, 1365, 1690, 3017, 2206,
+ 3710, 1366, 5628, 5781, 3710, 3728, 3729, 2267, 1478, 6157,
+ 2988, 1479, 1690, 2381, 1689, 2918, 697, 5686, 1689, 6143,
+ 4943, 4905, 3420, 3877, 1712, 3841, 5204, 4626, 4661, 2382,
+ 3421, 1690, 3984, 2723, 1367, 1414, 936, 3063, 1480, 2726,
+ 2270, 1163, 6177, 4628, 698, 3064, 1481, 1811, 2919, 3711,
+ 2081, 936, 2927, 3711, 1689, 1686, 788, 3712, 2939, 738,
+ 1689, 3712, 3764, 1687, 6172, 883, 2951, 3877, 3427, 4298,
+ 1812, 4301, 1688, 1690, 2193, 1708, 780, 1686, 1689, 3768,
+ 780, 1689, 2400, 3069, 4944, 1687, 3171, 3172, 2193, 5115,
+ 4945, 3423, 936, 2977, 1688, 3719, 935, 789, 4906, 3719,
+ 2383, 936, 936, 936, 1709, 1710, 4371, 2802, 2802, 5177,
+ 5177, 5116, 2944, 3155, 5995, 1686, 1689, 791, 3714, 3913,
+ 1689, 1690, 3714, 1687, 1546, 1690, 1364, 5673, 3156, 3790,
+ 6102, 1681, 1688, 2286, 159, 2817, 937, 1683, 2652, 4650,
+ 5481, 5629, 2945, 805, 2653, 1521, 2654, 2307, 4659, 5674,
+ 4663, 4664, 4665, 4667, 4668, 935, 2948, 3109, 5723, 5132,
+ 5133, 1690, 3110, 3173, 3914, -1259, 6146, 1690, 1711, 5877,
+ 935, 3113, 1366, 5273, 1547, 5274, 1610, 3116, 5212, 795,
+ 795, 1686, 3147, 1179, 1179, 1690, 795, 5656, 1690, 1687,
+ 2803, 2803, 4202, 6118, 6118, 1627, 1628, 5675, 1688, 674,
+ -2675, 1402, -592, 795, 680, 795, -2098, -2098, 3087, 3088,
+ 3422, 935, 4243, 3268, 1189, 1189, 4207, 3825, 2082, 2655,
+ 935, 935, 935, 1690, -2677, 3065, 3915, 1690, 1183, 1183,
+ 1689, 6154, 5832, 3108, 787, 1188, 1188, 3713, 1548, 787,
+ 4888, 3713, 3782, 4661, 2949, 4521, 2839, 4889, 787, 4890,
+ 938, 1133, 1689, 1712, 787, 814, 3783, 938, 5772, 1139,
+ 5774, 5281, 4789, 1686, 1239, 816, 1339, 1180, 1180, 3916,
+ 1339, 1687, 5282, 3059, 1686, 3227, 1686, 1184, 1184, 3228,
+ 1688, 780, 1687, 3432, 1687, 1185, 1185, 4916, 2897, 698,
+ 1689, 1688, 1686, 1688, 4207, 2897, 1995, 1857, 5025, 5097,
+ 1687, 3213, -2683, 795, 3150, 780, 5107, 3218, 3220, 1688,
+ 1549, 4630, 2960, 4993, 4202, 828, 2964, 5037, 3121, 5885,
+ 3111, 899, -2686, 1193, 1193, 2965, 5042, 1113, 2839, 4631,
+ 4202, 3118, 5044, 780, 1115, 5008, 1207, 1690, -2689, -2339,
+ 3177, -2339, 5058, 3934, 780, 2968, 1186, 1186, 4041, 4042,
+ 5067, 5068, 4043, 4044, 4045, 1686, 1689, 4626, 1131, 1690,
+ 4202, 4618, 5220, 1687, 664, 6020, 6021, 5222, -2690, 4202,
+ 3204, 1163, 1688, 4628, 3209, 3210, 780, -2691, 787, 2047,
+ 2047, 1241, 936, 780, 3219, 787, 5903, 4656, 780, 936,
+ 4657, 4202, 2975, 4202, 780, 1686, 4744, 1690, 1339, -2693,
+ 4746, -2694, 824, 1687, 3447, 1368, 1686, 1686, 2952, 780,
+ 883, 1243, 1688, 3241, 1687, 1687, 3180, 1994, 3246, 174,
+ 175, 4697, 4698, 1688, 1688, 1257, 2802, 2802, 3917, 3918,
+ 3919, 1252, 5893, 5897, 1262, 1686, 1686, 4410, 1689, 2745,
+ 2746, 2011, 1557, 1687, 1687, 6166, 6168, 5177, 4026, 1689,
+ 4717, 1689, 1688, 1688, 2758, 4360, 2760, 4119, 4120, 4121,
+ 4352, 4795, 4353, 1690, 3730, 4737, 795, 1689, 5213, 4498,
+ 5214, 1265, 780, 1187, 1271, 1925, 4633, 4640, 4365, 3959,
+ 4642, 1930, 1931, 4067, 1274, 4069, 4070, 4646, 2779, 1604,
+ 5987, 4075, 4741, 5990, 1283, 5596, 2954, 1285, 4407, 4083,
+ 1759, 935, 1759, 4091, 5215, 4094, 2341, 2342, 935, 5425,
+ 5426, 1292, 4008, 4009, 2705, 4011, 4013, 3129, 3364, 3272,
+ 3366, 174, 175, 3715, 4755, 4328, 780, 3279, 1294, 780,
+ 1689, 795, 795, 5145, 5216, 4767, 1686, 3710, 5979, 5980,
+ 4236, 3152, 795, 1308, 1687, 1690, 4362, 1383, 1384, 2761,
+ 2762, 759, 1312, 1688, 2706, 938, 1690, 2648, 1690, 2649,
+ 174, 175, 5893, 1318, 1314, 1685, 5897, 1686, 1306, 1307,
+ 1689, 1310, 1686, 1311, 1690, 1687, 4596, 1323, 1321, 1686,
+ 1687, 1689, 1689, 4268, 1688, 4269, 3711, 1687, 4237, 1688,
+ 1324, 2707, 4252, 1360, 3712, 10, 1688, 1975, 1713, 1714,
+ 1715, 1716, 1717, 1718, 1719, 1720, 1396, 1398, 1976, 4952,
+ 1689, 1689, 3211, 2806, 1686, 2807, 2662, 1406, 1686, 3217,
+ 1422, 795, 1687, 795, 1354, 2903, 1687, 2265, 4254, 1408,
+ 1354, 1688, 3719, 1418, 4276, 1688, 2946, 1690, 2947, 1686,
+ 1686, 4630, 1428, 1429, 17, 1354, 5685, 1687, 1687, 4607,
+ 2955, 4609, 5134, 2958, 1430, 3714, 1688, 1688, 1393, 4631,
+ 800, 1435, 1686, 1686, 1686, 1440, 1207, 5217, 1765, 1443,
+ 1687, 1687, 1687, 5028, 5621, 1686, 1686, 1690, 1448, 1688,
+ 1688, 1688, 3059, 1687, 1687, 5685, 738, 936, 1690, 1690,
+ 4277, 4618, 1688, 1688, 5091, 3436, 1472, 3437, 5686, 2663,
+ 4632, 5218, 1686, 3973, 1459, 3974, 1474, 1974, 1686, 2708,
+ 1687, 1689, -2290, 1476, 174, 175, 1687, 1690, 1690, 1688,
+ 4029, 2709, 4030, 3889, 3781, 1688, 5300, 1980, 2875, 5348,
+ 4502, 4503, 1482, 1485, 4504, 4505, 1484, 5686, 5357, -3426,
+ 4506, 4507, 1689, 1486, 5893, 5897, -2292, 1689, 32, 4260,
+ 1487, 2947, 111, 3805, 1689, 1686, -3428, 1905, 1681, -3425,
+ 5331, -2290, 1354, 1687, 1683, 3373, 2017, 937, 1488, 2019,
+ 2019, -3427, 1688, 1975, 3713, 1494, 5777, 174, 175, 1495,
+ 4263, 780, 1874, 4267, 1976, 1874, 795, 795, 1497, 1689,
+ 37, 4994, 1977, 1689, 4271, -2292, 4272, 1974, 693, 39,
+ 1496, 5873, 2959, 4577, 1501, 4578, 935, 937, 41, 156,
+ 4749, 4998, 1874, 4999, 1689, 1689, 795, 1502, 1690, 1978,
+ 1503, 2710, 42, 1507, 2963, 2443, 2443, 1713, 1714, 1715,
+ 1716, 1717, 1718, 1719, 1720, 1414, 1414, 1689, 1689, 1689,
+ 5739, 1504, 937, 4784, 3868, 1506, 3870, 111, 109, 1690,
+ 1689, 1689, 1505, 134, 1690, 2830, 3998, 2012, 1517, 1545,
+ 2012, 1690, 2966, 1975, 4685, -2290, -3659, 1759, 4686, 5000,
+ 4687, 5001, 4688, 1550, 1976, 1979, 106, 1689, 2350, 937,
+ 937, 1551, 1977, 1689, 3953, 154, 1565, 5144, 5874, 1566,
+ 780, 2711, 1567, 2745, 2746, 1572, 1690, 2400, 1759, -2292,
+ 1690, 1573, 693, 1980, 5002, 1574, 5003, -2290, 2758, 1978,
+ 2760, 4297, 2997, 5078, 1621, 5080, -2290, 1702, -940, 1575,
+ 4098, 1690, 1690, 1576, 1580, -2290, 4415, 5874, 2973, 1582,
+ 1689, 4773, 4774, 4033, 3398, 3399, 1414, 4782, 3400, -2290,
+ 3401, -2292, 3402, 1583, 1690, 1690, 1690, 157, 1653, 1722,
+ -2292, 1584, 1585, 5122, 694, 4626, 1974, 1690, 1690, -2292,
+ 6063, 787, 5092, 1586, 1874, 1979, 780, 6224, 1686, 4627,
+ 5030, 4628, 5105, -2292, 5106, 5113, 1687, 1874, 780, 5125,
+ 1568, 5126, 780, 5778, 1690, 1688, 2196, 2197, 795, -3560,
+ 1690, 1657, 5149, 1980, 5150, 2207, 2405, 2145, 5054, 5875,
+ 1339, 1339, 5057, 2761, 2762, 2871, 1587, 1588, 5039, 5065,
+ 2985, 1589, 3929, 1703, 5167, 5039, 5168, 2438, 795, 795,
+ 4685, 4231, 1975, 4240, 4686, 2268, 4691, 2271, 4688, 1704,
+ 4632, 1723, 5272, 1976, 3974, 1590, 6110, 1690, 5875, 4241,
+ -1656, 1977, 2284, 2285, 2287, 5318, 5372, 1591, 5373, 2290,
+ 2291, 5779, 4874, 5374, 795, 5373, 1592, 2308, 694, 158,
+ -1655, 4041, 4042, 2937, 5085, 4043, 4044, 4045, 1978, 1686,
+ 4056, 1724, 5376, 1821, 5377, 6152, 1604, 1687, 4479, 5370,
+ 1593, 5740, 5541, 5438, 1596, 4369, 1688, -2673, 5741, 1597,
+ 1598, 2262, 1604, 5777, 174, 175, 1605, 1606, 5581, 5554,
+ 1705, 1725, 4242, 5742, 5574, 693, 5575, 1607, 1608, 6173,
+ 780, 5593, 5563, 5511, 5565, 693, 4022, 4023, 4024, 4025,
+ 1702, 4027, 4028, 3441, 1979, -2262, 3898, 5626, -740, 5627,
+ 2028, 795, 795, 5632, 159, 5627, 780, 1298, 6186, 1611,
+ 1299, 1300, 4247, 1689, 5780, 1301, 2011, 5633, 5793, 5627,
+ 3066, 1612, 1980, 4248, 4249, 1781, 4946, -3560, 1613, 4071,
+ 4072, 1726, 4074, 4253, 4076, 4077, 4078, 4079, 4080, 4081,
+ 4082, 5415, 4084, 1614, 5794, 938, 4093, 5341, 5671, 5672,
+ 3974, 3974, 4250, 4251, 160, 5815, 1615, 5816, 4517, 4518,
+ 4519, 954, 955, 956, 957, 958, 959, 960, 961, 962,
+ 963, 964, 3958, 1616, 4629, 4154, 5845, 4947, 5846, 5854,
+ 5018, 5855, 4588, 4591, 1354, 4594, 1703, 5889, 1354, 4030,
+ 2411, 6007, 1617, 6008, 5407, 5876, 3155, 1604, 4795, 1301,
+ 5743, 938, 1704, 633, 5358, -940, 6038, 1686, 4807, 4630,
+ 1618, 3156, 2808, 5744, 1689, 1687, 5877, 937, 1298, 1619,
+ 1690, 1299, 1300, 5781, 1688, 1620, 1559, 4631, 1728, 1622,
+ 5745, 694, 766, 6039, 1207, 5126, -1319, 1623, 2478, 1686,
+ -1319, 694, 5720, 68, 1624, 1625, 5795, 1687, 5796, 1730,
+ 6046, 1782, 6047, 4259, 1629, 5877, 1688, 1630, 1631, 4618,
+ 634, 986, 6055, 1783, 6056, 767, 2228, 2229, 2230, 2231,
+ 5778, -2523, 1632, 1705, 1686, 1633, -713, 936, 4620, 938,
+ 1634, -1319, 1687, 2443, 4265, 4625, -1319, 1635, 4641, 4266,
+ 6072, 1688, 5627, 1414, 1734, 4645, 4274, 5624, 1636, 954,
+ 955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
+ 1637, 1743, 2232, 2233, 2234, 6074, 1354, 5627, 1784, -1319,
+ 6075, 1690, 5627, 4708, 5753, 6101, 1785, 5627, 6111, 1638,
+ 5627, 4275, 1639, 936, 3752, 4278, 1744, 6134, 5779, 5126,
+ 1006, 635, 4125, 1640, 1641, 3715, 5670, 1735, 6210, 161,
+ 6211, 1822, 1642, 162, 1643, 1228, 4705, 5090, 1646, 3710,
+ -2290, 1786, 1604, 2235, 2236, 1647, 1745, 1648, 1649, 3754,
+ 5746, 1650, 1651, 1974, 1652, 1746, 3017, 4946, 2643, 5096,
+ 5108, 5109, 1689, 1654, 4750, 1655, 1656, 1658, 1659, 4091,
+ 1660, 5797, 5597, 5766, -2292, 1823, 935, 1824, 1661, 986,
+ 937, 1664, 1665, 1668, 636, 768, 1974, 1669, 3711, 1670,
+ 4748, 936, 1671, 1672, 1689, 4888, 3712, 6159, 6160, 1673,
+ 1674, 6161, 4889, 6162, 4890, 1729, 163, 2237, 4947, 1020,
+ 5603, 5780, -2509, -2510, -3560, 4931, 1751, 1777, 5756, 1975,
+ 5609, 1778, 170, 1780, 5762, 5763, 1799, 3155, 1817, 1689,
+ 1976, 1818, 935, 1819, 3719, 1820, 1839, 1840, 1977, 937,
+ 1849, 1852, 3156, 1853, 2012, 1862, 2687, 1874, 1906, 1916,
+ 1918, 3225, 1975, 1787, 937, 1922, 1928, 3714, 1006, 1929,
+ 5782, 1935, 1936, 1976, 1938, 1978, 1940, 1825, 1944, 1690,
+ 2238, 1977, 5144, 693, 1959, 4280, 1960, 1961, 956, 957,
+ 1788, 1963, 960, 3799, 962, 5560, 964, 1972, 1702, 1706,
+ 5798, 1983, 1984, 1987, 3424, 937, 1997, 2003, 1978, 4948,
+ 2013, 1690, 2014, 2024, 937, 937, 937, -713, 4483, 3066,
+ 935, 5777, 174, 175, 2039, 2043, 4318, 1826, 2046, 2058,
+ 5781, 1979, 5408, 693, 2062, 2073, 2068, 2087, 1147, 5409,
+ 795, 637, 780, 693, 2093, 2097, 1690, 795, 795, 2099,
+ 4336, 2101, 2103, 4339, 4340, 3283, 2111, 1020, 2113, 1980,
+ 2115, 2116, 2117, 2119, 1979, 1686, 2120, 3441, 638, 2147,
+ 2155, 2167, 2169, 1687, 1827, 2239, 5793, 2210, 2211, 2212,
+ 4464, 2213, 1688, 2214, 2170, 2215, 3713, 5018, 4632, 2171,
+ 2175, 2176, 1980, 2178, 1703, 2179, 2181, 1148, -3527, 2193,
+ 5524, 5525, 5794, 5527, 5318, 2192, 4386, 2191, 2202, 3823,
+ 1704, 111, 111, 2209, 4842, 4843, 4844, 4845, 4846, 4847,
+ 4848, 4849, 4850, 4851, 4335, 4853, 4854, 4855, 4856, 4857,
+ 4858, 4859, 4860, 4861, 4862, 4949, 2251, 4866, 4867, 694,
+ 2223, 2264, 2240, 2865, 2265, 2277, 780, 2907, 795, 2279,
+ 2910, 780, 780, 2266, 2210, 2211, 5227, 787, 5228, 2282,
+ 5229, 2283, 5230, -940, 1828, 4602, 2922, 2292, 2331, 2335,
+ 5408, 1116, 780, 780, 2346, 2360, 4931, 5409, 2356, 4488,
+ -1319, 1705, 2375, 2379, 2705, 1789, 1829, 2941, 2406, 694,
+ 5996, 2407, 5777, 174, 175, 5799, 5434, 5584, 2434, 694,
+ 2435, -2983, 1706, 2440, 5795, 2441, 5796, -73, 2241, 2447,
+ 2242, 2458, 5296, 5297, 693, 5299, 2243, 1604, 2906, 2463,
+ 5304, 4568, 2466, 5308, 2706, 4954, 5311, 5312, 5778, 2486,
+ 4964, 2485, 2487, 3284, 5320, 2512, 5321, 3426, 5603, 2527,
+ 1689, 2528, 2529, 4950, 2530, 5327, 2532, 5793, 2533, 639,
+ 2534, 3419, 5016, 938, 5019, 1149, 2539, 1150, 3425, 1187,
+ 1187, 2707, 1790, 1686, 5029, -2110, 5718, 640, 1151, 2549,
+ 1791, 1687, 2553, 5794, 2552, 2555, 2244, 2558, 4329, 3285,
+ 1688, 2560, 5040, 1117, 1152, 2559, 2561, 5782, 2568, 2569,
+ 2578, 1118, 2582, 2579, 5045, 937, 5779, 2580, 5919, 2976,
+ 3420, 4595, 937, 2581, 4597, 2583, 1119, 2585, 3421, 2593,
+ 5066, 2586, 2991, 641, 2592, 3450, 1120, 1121, 1122, 2596,
+ 2245, 174, 175, 2597, 111, 109, 1123, 4355, 4356, 2606,
+ 4603, 4357, 2601, 4358, -940, 4359, 2612, 2620, 4134, 111,
+ 642, 2641, 5410, 2615, 2658, 5411, 3427, 1690, 643, 5797,
+ 5678, 2644, 5679, 5680, 5412, 2645, 2646, 3286, 3756, 1877,
+ 2647, 2650, 2659, 4718, 5176, 2660, 2668, 2672, 2676, 3423,
+ 694, 2673, 2675, 1686, 2689, 5795, 4719, 5796, 2688, 2708,
+ 2692, 1687, 4413, 1313, 2693, 936, 4949, 4418, 4419, 5780,
+ 1688, 2709, 4720, 4261, 5935, 2704, 2718, 2727, 4681, 5778,
+ 6215, 2728, 3048, -2534, 4684, 5856, 2719, 1686, 1354, 1354,
+ 2732, 2734, 2246, 2733, 2737, 1687, 2768, 2772, 1765, 2773,
+ 3287, 1367, 4721, 2247, 1688, 954, 955, 956, 957, 958,
+ 959, 960, 961, 962, 963, 964, 3288, 3289, 1689, 2777,
+ 1686, 3290, 3291, 3292, 6136, 2781, 174, 175, 1687, 5185,
+ 5188, 5190, 5192, 2784, 2786, 5195, 5196, 1688, 2787, 2794,
+ 5200, 5291, 1686, 5206, 1124, 1153, 5210, 5779, 2797, 5185,
+ 1687, 2800, 2818, 5221, 5185, 2845, 1125, 2846, 2848, 1688,
+ 5410, 2864, 4264, 5411, 1877, 5303, 4740, 2867, 3422, 2869,
+ 2870, 2710, 5600, 5955, 4950, 2872, 2881, 2882, 5781, 2883,
+ 2889, 4722, 2928, 2886, 935, 2145, 2887, 2897, 2979, 3293,
+ 3009, 2904, 1644, 6043, 2908, 2911, 2920, 2921, 4336, 2923,
+ 5797, 3021, 2924, 2925, 2926, 986, 3033, 2930, 2938, 5183,
+ 2942, 4318, 5739, 2950, 2953, 795, 2956, 5981, 4771, 1974,
+ 2967, 5199, 2957, 1905, 1905, 1690, 2961, 3998, 1689, 5508,
+ 2962, 2971, 2974, 2972, 2978, 2984, 2989, -1456, 3028, 3294,
+ 5780, 2711, 4723, 2239, -1621, 2996, 1662, 3002, 2350, 1720,
+ 1666, 3036, 1878, 3011, 3038, 6223, 1126, 4796, 3012, 5548,
+ 3013, 3014, 1689, 654, 3039, 3041, 4805, 3049, 3071, 3091,
+ 3042, 3045, 4335, 3094, 111, 4797, 3119, 3050, 3095, 4033,
+ 937, 3051, 3096, 3103, 1006, 1975, 4588, 3104, 4591, 3099,
+ 4594, 3107, 4770, 3123, 1127, 1689, 1976, 3426, 3133, 780,
+ 1706, 3715, 3136, 3137, 1977, 4837, 3143, 3160, 1128, 780,
+ 2240, 3419, 3161, 3189, 3192, 3710, 3191, 1689, 3425, 6043,
+ 2012, 3193, 2012, 2012, 3265, 3196, 3197, 3226, 3233, 3237,
+ 3251, 1978, 4865, 3258, -715, 1690, 3266, 4929, 3262, 3269,
+ 6051, 3238, 3275, 5799, 3270, 3276, 3277, 3278, 3280, 5781,
+ 1154, 1155, 1156, 1157, 3281, 3319, 4724, 4725, 3282, 3322,
+ 3420, 3325, 3329, 3334, 3711, 3335, 5591, 3336, 3421, 1690,
+ 3337, 3241, 3712, 1020, 3361, 3365, 2241, 1878, 2242, 3338,
+ 2405, 4988, 3367, 3339, 2243, 5453, 3368, 1979, -715, 5458,
+ 5459, 745, 2400, 3340, 3341, 3342, 3343, 3344, 1879, 5404,
+ 795, 1759, 1690, 4422, 174, 175, 3427, 3155, 3345, 3371,
+ 3719, 3346, 1880, 3347, 1881, 1980, 3348, 766, 3349, 3350,
+ 6204, -1319, 3156, 3351, 1690, -1319, 3381, 6115, 3352, 3423,
+ 3383, 5491, 3353, 3714, 6214, 5782, 2082, 3239, 3354, 2145,
+ 6204, 3355, 3356, 3391, 2244, 5486, 1882, 6214, 4837, 3357,
+ 767, 3358, 3425, 5740, 3386, 3384, 3387, 3385, 787, 1883,
+ 5741, 3395, 3397, 4992, 6051, 3396, -1319, 3404, 3433, 3724,
+ 3725, -1319, 4920, 3726, 3739, 5742, 111, 3740, 3741, 4930,
+ 3747, 3760, -1664, 3792, 2032, 3791, 3779, -715, 2245, 3793,
+ 3780, 3806, 1884, 5409, 5487, 3715, 3807, -2262, 3819, 111,
+ 782, 938, 5488, 3821, -1319, 4726, 4727, 3022, 3820, 3710,
+ 1885, 3831, 3715, 795, 5799, 3835, 3829, 3837, 3838, 3839,
+ 2469, 3842, 795, 1879, 747, 3843, 3710, 3847, 3848, 3855,
+ 4423, 3856, 2468, 3880, 2839, 4817, 3894, 1880, 3903, 1881,
+ 5492, 2807, 3895, 3909, 3910, 4841, 5049, 3901, 3422, 5709,
+ 3930, 3941, 3713, 3935, 3943, -715, 3945, 3946, 3711, 3947,
+ 3963, 3964, 3967, 5490, 3968, 3991, 3712, 4004, 3995, -2013,
+ 4005, 1882, 4036, 4037, 4038, 3711, 4054, 4064, 4058, 4065,
+ 2246, 4066, 5158, 3712, 1883, 4096, 4068, 4102, 1886, 4107,
+ 768, 2247, 2782, 4109, 4114, 1887, -715, 4127, 4115, 4929,
+ 4425, 4190, 5743, 4193, 3719, 1888, 5782, 4199, 4202, 4207,
+ 4194, 4214, 728, 729, 4215, 5744, 4211, 1884, 5201, 1889,
+ 4221, 3719, 4224, 4225, 4226, 4227, 4270, 3714, 4281, 4282,
+ 4292, 4293, 5745, 936, 4304, 1885, 4296, 4306, 938, 4307,
+ 4308, 4321, 4309, 4318, 3714, 4310, 4931, 4311, 3817, 730,
+ -715, 1890, 4312, 745, 1891, 4319, 4322, 4426, 4427, 4428,
+ 4323, 5637, 4326, 4728, 4325, 1604, 4330, 5018, 4344, 3155,
+ 1892, 4345, 4350, 4363, 6183, 4369, 4368, 4429, 4370, 5306,
+ 4389, 744, 5489, 2350, 3156, 4381, 655, 4387, 731, 4408,
+ 4409, 4417, 4386, 111, 5141, 4414, 4462, 4467, -1780, -1785,
+ 4486, 1893, 4491, 795, 4494, 4495, 4837, 4500, 5166, 4510,
+ 4501, 4528, 4515, 1886, 4573, 4581, 4604, 4598, 4599, 4612,
+ 1887, 4623, 745, 780, 4618, 4568, 4666, 4644, 4651, 4678,
+ 1888, 4430, 4679, 4431, 4692, 4699, 4700, 2478, 746, 795,
+ 4696, 4702, 2981, 4711, 1889, 4712, 3713, 4742, 4287, -715,
+ 3981, 4751, 935, 4432, 4753, 4754, 4757, 1228, 4759, 5235,
+ 5243, 4758, 4807, 3713, 2418, 4763, 4776, 41, 5243, 4777,
+ 936, 4433, 5746, 5154, 4790, 6091, 1890, 4811, 4434, 1891,
+ 4806, 4812, 4813, 4818, 4814, 4838, 747, 4815, 4839, 4390,
+ 4840, 4852, 4539, 4435, 4881, 1892, 5410, 4880, 2400, 5411,
+ 4436, 4884, -256, 4885, 4886, 4893, 4895, 4922, 4909, 5197,
+ 5198, 2402, 4923, 4924, 4837, 4437, 4940, -715, 4931, 5211,
+ 4942, 938, 4956, 4955, 4965, 4966, 1893, 4805, 4805, 780,
+ 4967, 4968, 4969, 5234, 4970, 5298, 4972, 4973, 4974, 5314,
+ 4975, 2350, 4976, 4983, 5262, 4986, 4989, 4990, 780, 5324,
+ 5315, 4997, 5005, 5006, 4805, 747, 4932, 5009, 5013, 5015,
+ 5325, 4805, 4671, 732, 5010, 5035, 4837, 5328, 5043, 5329,
+ 5330, 5046, 4438, 5051, -2060, -1319, 5060, 5063, 5073, 5093,
+ 733, 5350, 4439, 5076, 5077, 5095, 748, 5094, 5078, 935,
+ 5079, 5099, 5081, 5080, 2012, 5082, 5089, 5101, 3715, 5112,
+ 937, 4391, 5104, 5366, 5111, 5114, 734, 5136, 4931, 4392,
+ 5120, 5151, 3710, 5140, 5128, 5138, 938, 5255, 5391, 795,
+ 4440, 5139, 5147, 5146, 4393, 5156, 5159, 5264, 5160, 5265,
+ 5269, 158, 5181, 4441, 4394, 4395, 4396, 5257, 5266, 5278,
+ 5276, 5277, 5279, 5271, 4397, 5286, 6219, 735, 5287, 5343,
+ 5288, 5289, 5294, 936, 5392, 5292, 937, 5305, 5243, 5182,
+ 5310, 3711, 4052, 5309, 4933, 5342, 5346, 5928, 5344, 3712,
+ 5367, 5363, 4442, 5365, 5368, 5381, 5382, 5394, 4443, 5395,
+ 5396, 5398, 5400, 5403, 5406, 5401, 5417, 5420, 5433, 5432,
+ 5437, 5443, 5450, 5442, 5451, 5454, 5498, 5507, 5509, 5521,
+ 2012, 5928, 5446, 5449, 5526, 5494, 159, 3719, 5496, 5502,
+ 5528, 5501, 5424, 5517, 5511, 5529, 5518, 5164, 5531, 5544,
+ 5533, 5550, 5551, 5555, 4796, 5431, 5561, 4945, 5566, 5168,
+ 3714, 5578, 4805, 5589, 937, 5592, 4444, 5595, 5598, 5599,
+ 5604, 5441, 5605, 4445, 5441, 5441, 5608, 5611, 936, 5447,
+ 5606, 5622, 5625, 4837, 5629, 5631, 5169, 5641, 5635, 5658,
+ 5659, 5457, 5682, 5693, 5684, 5302, 5493, 1759, 3243, -3650,
+ 5692, -2671, 935, -2670, -2674, 4446, -2684, -2688, 2228, 2229,
+ 2230, 2231, 4398, 5681, 5322, 5694, 5647, 5700, 5701, -372,
+ 4447, 4448, -3645, -3643, 4399, -3647, -3641, -3646, -3644, -3642,
+ 5702, 5651, 5707, 4449, 5710, 5711, 5712, 5928, 5719, 5862,
+ 5863, 5725, 5865, 5866, 5867, 5868, 5721, 5734, 4932, 5735,
+ 5738, 5758, 5759, 5764, 2232, 2233, 2234, 5243, 5770, 4422,
+ 5806, 5809, 5814, 5818, 5819, 5826, 5820, 5821, 5827, 5535,
+ 5828, 5537, 5495, 5831, 5840, 5843, 5844, 5847, 5851, 3713,
+ 5857, 5861, 5864, 5869, 3241, 5872, 3241, 5886, 5497, 5888,
+ 5900, 5906, 5908, 5910, 5912, 5911, 852, 935, 5914, 5917,
+ 5916, 5918, 5932, 5933, 5931, 2235, 2236, 5934, 5961, 4400,
+ 5968, 5539, 4837, 4805, 4837, 5939, 5536, 6216, 795, 4837,
+ 5983, 4805, 6002, 5997, 4401, 6004, 4837, 4837, 853, 6005,
+ 4805, 6012, 6029, 1110, 6015, 5558, 4837, 6018, 6023, 6024,
+ 6031, -2507, 4837, 4805, -2508, 4805, 6032, 6037, 6034, 855,
+ 4536, 6040, 4541, 5567, 6065, 6068, 4933, 6092, 856, 6062,
+ 5975, 6076, 4402, 5978, 6077, 5661, 6083, 749, 6087, 2237,
+ 6090, 5986, 6095, 6137, 5989, 6149, 4403, 6150, 1110, 857,
+ 780, -2060, 6151, 2738, 6158, -166, 6140, 6145, 6153, 6165,
+ 6170, 6174, 5049, 858, 6175, 6176, 5588, 6181, 859, 6182,
+ 6184, 6178, 6179, 6180, 6190, 6191, 6059, 6205, 3860, 3159,
+ 6218, 4095, 5356, 5354, 5355, 3950, 5761, 2739, 4509, 5510,
+ 5812, 860, 5941, 6085, 1333, 2445, 5393, 2044, 4876, 5503,
+ 4474, 641, 2238, 5375, 5587, 5657, 5594, 5722, 5070, 2426,
+ 4405, 3170, 4196, 4111, 2736, 1442, 4683, 2857, 2350, 5654,
+ 2858, 5653, 2859, 5500, 2740, 4979, 4555, 5441, 750, 5557,
+ 5419, 5634, 4762, 4768, 5121, 3026, 5967, 5612, 5639, 780,
+ 6045, 6139, 6099, 4837, 4837, 5871, 5610, 2034, 5295, 3271,
+ 861, 4977, 5808, 5337, 862, 5448, 4982, 5538, 5175, 6119,
+ 6022, 4568, 1110, 6026, 5957, 5946, 5947, 5948, 5949, 4730,
+ 4635, 4246, 863, 4693, 4677, 6028, 864, 865, 5965, 5026,
+ 4284, 780, 5383, 4745, 4747, 4743, 6144, 5243, 752, 753,
+ 6112, 5768, 6113, 5994, 3942, 111, 5243, 2239, 5999, 6001,
+ 5687, 5041, 5669, 5534, 4416, 5532, 4980, 866, 5335, 2148,
+ 2053, 4279, 2616, 3928, 867, 868, 5838, 3926, 5963, 3328,
+ 5691, 2770, 3836, 3151, 3392, 4124, 4611, 4837, 781, 2022,
+ 3794, 1362, 3887, 4837, 1973, 5696, 2021, 5007, 3994, 5391,
+ 2350, 4756, 3844, 3761, 1748, 3763, 2344, 3814, 3811, 4805,
+ 4314, 2403, 4234, 2253, 2199, 5086, 6086, 5944, 2400, 938,
+ 5713, 5717, 6169, 6167, 2240, 1965, 5275, 2667, 2263, 1966,
+ 2664, 2128, 4787, 5952, 5523, 5392, 5148, 5953, 2208, 4338,
+ 2657, 1967, 4303, 3253, 4913, 3990, 5582, 4912, 4302, 1968,
+ 1970, 5414, 5850, 5135, 1558, 5791, 5733, 2678, 5699, 5791,
+ 5405, 5088, 3424, 3997, 3993, 5427, 1385, 4740, 3245, 4736,
+ 1110, 2129, 5441, 2030, 1110, 4918, 763, 3363, 937, 754,
+ 5765, 2810, 4837, 1249, 2016, 4610, 3390, 4800, 5153, 1859,
+ 2241, 4019, 2242, 4786, 4783, 6135, 5805, 1110, 2243, 5623,
+ 1451, 1558, 1905, 5810, 1457, 2780, 1110, 1233, 2518, 3125,
+ 1234, 3126, 3881, 2023, 2130, 3164, 5652, 2400, 1236, 2131,
+ 5436, 2604, 2153, 4615, 6138, 5280, 6171, 4837, 5530, 6217,
+ 2132, 2133, 6221, 3140, 3388, 5640, 5429, 780, 1560, 795,
+ 3445, 3872, 1191, 2863, 3873, 5834, 4837, 780, 3090, 1192,
+ 3874, 936, 3869, 5833, 4343, 2842, 1763, 3866, 2244, 3865,
+ 1146, 2446, 2141, 1742, 2142, 3318, 5849, 2626, 4516, 3840,
+ 4921, 1110, 1110, 1110, 1110, 5012, 3944, 1558, 4569, 1282,
+ 772, 5579, 756, 757, 1110, 1921, 2741, 758, 1540, 2012,
+ 5263, 4608, 5982, 4197, 5791, 5813, 0, 0, 2860, 5515,
+ 0, 0, 2245, 0, 5887, 0, 0, 0, 0, 5899,
+ 0, 5791, 0, 0, 0, 5905, 2742, 2743, 0, 2744,
+ 2745, 2746, 2747, 2748, 0, 2749, 2750, 2751, 2752, 2753,
+ 2754, 2755, 2756, 0, 2757, 2758, 2759, 2760, 795, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 5938, 0, 780, 0, 0, 0,
+ 0, 5669, 0, 0, 0, 4386, 4386, 0, 0, 0,
+ 935, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1558, 0, 0, 0, 0, 2134, 0, 0, 0, 0,
+ 0, 5717, 0, 0, 2246, 2135, 0, 0, 0, 5913,
+ 5733, 0, 0, 0, 0, 2247, 2136, 0, 738, 0,
+ 6058, 0, 2137, 795, 0, 0, 0, 6084, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2761, 2762, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2138, 0, 6003, 5791, 2139, 0, 0,
+ 0, 0, 0, 5441, 0, 5441, 5441, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1110, 0, 0, 0, 1558,
+ 0, 0, 0, 5830, 0, 0, 2140, 0, 6098, 0,
+ 1681, 5976, 5977, 5836, 6030, 0, 1683, 0, 0, 0,
+ 0, 0, 0, 5988, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2350,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 795, 0, 0, 0, 0, 0, 5791, 0, 0,
+ 0, 0, 3424, 0, 0, 0, 0, 0, 0, 5441,
+ 5441, 0, 0, 6069, 0, 0, 0, 0, 0, 0,
+ 5441, 0, 0, 0, 0, 0, 0, 0, 0, 1558,
+ 0, 0, 1558, 0, 6082, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 5791, 5791,
+ 0, 0, 5940, 0, 6052, 0, 0, 6053, 0, 795,
+ 0, 0, 0, 0, 0, 6222, 0, 0, 0, 0,
+ 0, 0, 0, 5441, 0, 0, 0, 0, 0, 6207,
+ 0, 0, 0, 0, 6209, 0, 5791, 0, 6124, 0,
+ 0, 0, 0, 0, 0, 2350, 0, 0, 0, 1110,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 3424, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1558,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1110, 0,
+ 1110, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2350, 0, 0, 0,
+ 795, 0, 0, 0, 0, 795, 937, 0, 0, 0,
+ 2350, 0, 0, 0, 0, 0, 2350, 0, 0, 0,
+ 0, 0, 0, 2350, 0, 0, 1110, 1110, 0, 0,
+ 0, 0, 1110, 0, 0, 0, 1110, 1110, 1110, 0,
+ 0, 0, 0, 0, 0, 0, 1110, 1110, 1558, 0,
+ 0, 0, 1110, 0, 0, 0, 1110, 1110, 1110, 0,
+ 1110, 1110, 1110, 1558, 1558, 0, 0, 0, 0, 0,
+ 1110, 0, 1110, 0, 0, 1110, 1110, 1110, 1110, 0,
+ 1110, 0, 1110, 1110, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1110, 1110, 1110, 1110,
+ 1110, 0, 1110, 1110, 1110, 1110, 1110, 1110, 0, 1110,
+ 1110, 0, 1110, 1110, 0, 1110, 1110, 0, 0, 1110,
+ 1110, 0, 1110, 1110, 0, 1110, 0, 1110, 0, 0,
+ 0, 1110, 1110, 1110, 0, 0, 1110, 1110, 1110, 1110,
+ 0, 1110, 0, 937, 0, 0, 0, 0, 1110, 0,
+ 0, 0, 0, 0, 1110, 1110, 1110, 1110, 0, 0,
+ 0, 0, 0, 0, 0, 1110, 1110, 0, 1110, 1110,
+ 0, 0, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110,
+ 1110, 1110, 1110, 1110, 1110, 0, 0, 1110, 0, 0,
+ 0, 0, 1558, 0, 0, 0, 0, 0, 0, 1558,
+ 0, 0, 0, 0, 0, 0, -1062, -1062, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 4422, 174,
+ 175, 0, 1110, 0, 0, 0, -1868, -1868, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, -1868, 0,
+ 1558, 0, 0, 0, 0, 0, 4529, 0, 4530, 4531,
+ 0, 0, 0, 0, 2012, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4532, 0, 4533, 2157, 0, 0, 0, 0, 4534, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2032,
+ 0, -1868, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4535, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3817, 0, 937, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1110, -1868,
+ 1110, 0, 0, -1868, 0, 4423, 0, -1868, 4422, 174,
+ 175, 0, 0, 0, 0, 0, -1868, -1868, 0, 0,
+ 0, 0, 0, -1868, 1558, 0, 0, -1868, 0, 0,
+ 0, 0, -1868, 4536, -1868, 1110, 0, 0, -1868, 0,
+ 0, 0, 0, 0, 0, 0, -1868, 0, -1868, 0,
+ 0, 0, 0, -1868, 0, 0, 0, 0, 0, 0,
+ 0, -904, 0, -904, 4537, 0, 4538, 0, 0, 0,
+ 0, 0, 0, -1868, 0, 4425, 0, 4539, 0, 0,
+ 0, 937, 0, -1868, 0, 0, -1868, 0, 0, 2032,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4540, 0, 0, 0, 0, 0, -1868, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1110, 0, 0, 0, 0, -1868, 1558, 0, 1558, -1868,
+ 0, 0, 4426, 4427, 4428, 4423, 0, 0, -1868, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1110, 0,
+ 0, 0, 4429, 0, 0, 0, 0, -1868, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -1868, 0, 0, 0, 0, 0, -1868, -1868,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -1868, 0, -1868, 0, 0, 0, 4541, 0,
+ 0, 0, 0, 0, 0, 4425, 4430, 0, 4431, 0,
+ 0, 0, 4420, 0, 4421, 0, 0, 0, 0, 4422,
+ 174, 175, 0, 0, 0, 0, 0, 0, 4432, 0,
+ 0, 0, 0, 0, 0, 4542, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 4433, 0, 0, 0,
+ 0, 0, 0, 4434, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4426, 4427, 4428, 0, 0, 0, 4435, 0,
+ 0, 0, -904, 1110, -904, 4436, 0, 0, 0, 4543,
+ 4544, 0, 4429, 0, 0, 0, 4545, 0, 0, 0,
+ 4437, 0, 0, 0, 0, 0, 0, 0, 4546, 0,
+ 2032, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1558, 1110, 0, 0, 4547,
+ 0, 0, 0, 0, 1110, 1110, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 4430, 0, 4431, -1868,
+ 0, 0, 0, 4548, 0, 0, 4423, 4438, 0, 0,
+ 0, 0, 0, 0, 0, 0, -904, 4439, 4432, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 4424, 0,
+ 0, 0, 0, 0, 0, 0, 4433, 0, 1110, 0,
+ 0, 0, 0, 4434, 0, 0, 0, 0, 0, 1558,
+ 1558, 0, 0, 0, 0, 4440, 0, 0, 4435, 0,
+ 0, 0, 0, 0, 0, 4436, 0, 0, 4441, 0,
+ 4549, 0, 0, 0, 0, 0, 4425, 0, 0, 0,
+ 4437, 0, 1110, 1110, 1110, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 4442, 0, 0,
+ 0, 0, 0, 4443, 0, 0, 0, -1868, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -1868, -1868, 0,
+ 0, 1558, 0, 4426, 4427, 4428, 0, 4438, 4550, -1868,
+ 0, 1110, 0, 0, 1558, 0, 0, 4439, 0, 4551,
+ 4552, 4553, 0, 4429, 0, 0, 0, 0, 0, 1110,
+ 0, 0, 0, 1110, 1110, 0, 1110, 1110, 0, 0,
+ 0, 4444, 0, 0, 2157, 1110, 0, 1110, 4445, 0,
+ 0, 0, 0, 0, 0, 4440, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 4441, 0,
+ 0, 0, -1868, 0, 0, 0, 0, 4430, 1110, 4431,
+ 4446, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 4447, 4448, -904, 0, 4432,
+ 0, 0, 0, 0, 1110, 0, 0, 4442, 4449, 0,
+ -1868, 0, 4554, 4443, -1868, 0, 1110, 4433, -1868, 0,
+ 1558, 0, 0, 0, 4434, 0, 0, -1868, -1868, 1110,
+ 0, 0, 0, 0, 0, 0, 0, 0, -1868, 4435,
+ 1110, 0, 0, -1868, 0, -1868, 4436, 0, 0, -1868,
+ 0, 0, 0, 0, 937, 0, 1110, -1868, 0, -1868,
+ -1868, 4437, 0, 0, -1868, 0, 0, 0, 0, 0,
+ 2145, 4444, 0, 2158, 0, 0, -1062, 0, 4445, 0,
+ 0, 0, 0, 0, -1868, 0, 0, 0, 0, 0,
+ -1868, 0, -1868, 1110, -1868, -1868, -1868, -1868, 0, 0,
+ 1110, 0, 0, 0, 0, 0, 0, 1558, 0, 0,
+ 4446, 0, 0, 0, 0, 0, 0, -1868, 4438, 0,
+ 0, 0, 0, 0, 0, 4447, 4448, 0, 4439, 0,
+ 0, 0, 0, 0, 0, 0, -1868, 0, 4449, 0,
+ -1868, 0, 0, 0, 0, 1558, 1558, 0, 0, -1868,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 4440, 0, -1868, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4441,
+ 0, 0, 0, -1868, 0, 0, 0, 0, 0, 0,
+ -1868, 0, 0, 0, 0, 0, 1110, 0, 0, 0,
+ 0, 0, 4871, -1868, 0, -1868, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 4442, 0,
+ 0, 0, 0, 0, 4443, 0, 0, 0, 0, 1110,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1558, 0, 1558, 1558, 1558, 0, 1110, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4444, 0, 0, 0, 0, 1110, 0, 4445,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 4446, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 4447, 4448, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4449,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1558, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1110, 0,
+ 0, 0, 1110, 0, 0, 1110, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1110, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1110, 0, 1110, 1110, 0, 1110, 1110,
+ 1110, 1110, 0, 1110, 0, 1110, 1110, 0, 1110, 0,
+ 0, 0, 0, 0, 0, 0, 1110, 1110, -1868, 0,
+ 0, 1110, 1110, 1110, 0, 0, 0, 0, 0, 0,
+ 0, 1110, 1110, 1110, 0, 1110, 0, 1110, 0, 1110,
+ 0, 1110, 0, 1110, 0, 0, 0, 0, 1110, 1110,
+ 0, 1110, 1110, 1110, 0, 0, 0, 1110, 0, 0,
+ 1110, 0, 0, 0, 0, 0, 0, 0, 0, 1110,
+ 0, 0, 1110, 0, 1110, 1110, 1110, 0, 0, 1110,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1110, 1, 1110, 2, 0, 1110, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1110, 1110, 1110, 1110,
+ 1558, 1110, 0, 0, 0, 0, 1110, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1111, 0, 1558, 0, 0,
+ 0, 0, 0, 0, 0, 3, 4, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5, 0, 6, 0, 7, 0, 8,
+ 0, 0, 0, 0, 1110, 0, 0, 9, 0, 0,
+ 1111, 0, 0, 0, 0, 0, 1110, 0, 0, 0,
+ 0, -1868, 0, 1110, 0, 0, 0, 0, 10, 0,
+ 11, 12, 174, 175, 2158, 0, 0, 13, 0, 1558,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, -1868, 0, -1868, 14, 0, -1868, -1868, 15, 0,
+ 1194, 0, 1195, 0, 0, 0, 0, 0, 16, 0,
+ 661, 0, 1110, 0, 0, 0, 0, 17, 0, 0,
+ 0, 0, 0, 0, 1163, 0, 0, 0, 18, 0,
+ 0, 0, 1196, 1197, 1110, 0, 0, 0, 19, 0,
+ 20, 0, 1198, 0, 21, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 11, 12, 0, 0,
+ 0, 0, 0, 0, 1111, 0, 0, 0, 0, 0,
+ 0, 22, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 23, 24, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 25, 26, 0, 0, 1199, 0,
+ 0, 0, 0, 1110, 0, 0, 27, 28, 29, 0,
+ 30, 0, 1200, 0, 0, 31, 0, 0, 0, 0,
+ 0, 32, 0, 0, 1110, 33, 34, 35, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1558, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 36, 0, 37, 0, 38, 0, 1201, 0, 0,
+ 0, 0, 39, 0, 0, 0, 0, 0, 0, 1202,
+ 40, 41, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 42, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1111, 0, 0, 0, 1111, 43, 44, 0,
+ 45, 0, 0, 0, 0, 0, 0, 46, 0, 0,
+ 0, 0, 0, 0, 1203, 47, 0, 0, 0, 1111,
+ 0, 0, 1558, 0, 0, 0, 0, 0, 1111, 0,
+ 0, 0, 0, 0, 1110, 48, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1204, 0, 49,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 50,
+ 0, 0, 0, 0, 0, 0, 0, 1205, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1206, 0, 51, 1110,
+ 0, 0, 0, 1111, 1111, 1111, 1111, 0, 0, 1207,
+ 0, 1110, 0, 52, 1110, 0, 1111, 0, 0, 0,
+ 1208, 0, 0, 0, 53, 0, 0, 54, 0, 0,
+ 55, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1209, 0, 56, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, -2262, 1210, 0, 0, 1211, 0, 1212, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1213, 1214, 0, 0, 0,
+ 0, 1215, 1216, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1217, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1218,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 57,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1219, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 58, 0,
+ 0, 0, 59, 0, 0, 0, 0, 1111, 0, 0,
+ 0, 0, 60, 0, 0, 0, 0, 0, 0, 0,
+ 61, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 62, 0, 0, 1220, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1221, 0, 0, 63, 0, 0, 64, 0, 0, 1222,
+ 0, 0, 1223, 1224, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1225, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 65,
+ 0, 0, 0, 0, 0, 0, 0, 0, 66, 1110,
+ 1110, 0, 0, 0, 1110, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1558, 1226, 0, 0, 0, 0, 0,
+ 0, 0, 1227, 0, 67, 0, 1110, 0, 1110, 0,
+ 1110, 0, 1110, 0, 0, 0, 0, 0, 0, 0,
+ 0, -3286, 0, 1228, 0, 0, 68, 1110, 0, 0,
+ 0, 0, 0, 1558, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1110, 1110, 0, 0,
+ 0, 1110, 0, 1110, 0, 1110, 0, 0, 0, 0,
+ 1110, 1111, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, -3286, 0, 0, 0, 0, 0, 0,
+ 1229, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1558, 0, 0, 0, 0, 0, 1110, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1110, 0, 0, 0, 1110, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1111, 0, 1111, 1110, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1558, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1111, 1111,
+ 0, 0, 0, 0, 1111, 0, 0, 0, 1111, 1111,
+ 1111, 0, 0, 0, 0, 0, 0, 0, 1111, 1111,
+ 0, 0, 0, 0, 1111, 0, 0, 0, 1111, 1111,
+ 1111, 0, 1111, 1111, 1111, 1110, 0, 0, 0, 0,
+ 0, 0, 1111, 0, 1111, 1110, 0, 1111, 1111, 1111,
+ 1111, 0, 1111, 0, 1111, 1111, 0, 0, 0, 1110,
+ 0, 1558, 1110, 0, 0, 0, 0, 0, 1111, 1111,
+ 1111, 1111, 1111, 0, 1111, 1111, 1111, 1111, 1111, 1111,
+ 0, 1111, 1111, 0, 1111, 1111, 0, 1111, 1111, 0,
+ 0, 1111, 1111, 0, 1111, 1111, 0, 1111, 0, 1111,
+ 0, 0, 0, 1111, 1111, 1111, 0, 0, 1111, 1111,
+ 1111, 1111, 0, 1111, 0, 0, 0, 0, 0, 0,
+ 1111, 0, 0, 0, 0, 0, 1111, 1111, 1111, 1111,
+ 0, 0, 0, 0, 0, 0, 0, 1111, 1111, 0,
+ 1111, 1111, 0, 0, 1111, 1111, 1111, 1111, 1111, 1111,
+ 1111, 1111, 1111, 1111, 1111, 1111, 1111, 0, 0, 1111,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1111, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1110, 1110, 1, 1110, 0, 0, 0, 0, 0, 0,
+ 1111, 0, 1111, 0, 0, 0, 1110, 1110, 1110, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1110, 1110, 0, 0, 0, 3, 4, 1111, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 5, 1110, 6, 0, 7, 0, 8,
+ 0, 0, 0, 0, 0, 0, 1110, 9, 0, 0,
+ 0, 0, 0, 0, 0, 1110, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 10, 0,
+ 11, 12, 0, 0, 0, 1110, 0, 13, 0, 0,
+ 1110, 1110, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 14, 0, 0, 0, 15, 1110,
+ 0, 0, 1111, 1110, 0, 0, 0, 0, 16, 0,
+ 0, 0, 0, 0, 0, 0, 0, 17, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 18, 0,
+ 1111, 0, 0, 0, 0, 0, 0, 0, 19, 0,
+ 20, 0, 0, 0, 21, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 22, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 23, 24, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 25, 26, 0, 0, 0, 0,
+ 0, 0, 0, 4422, 174, 175, 27, 28, 29, 0,
+ 30, 0, 0, 0, 0, 31, 0, 0, 0, 0,
+ 0, 32, 0, 0, 0, 33, 34, 35, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1111, -904, 0, -904, 0,
+ 0, 36, 0, 37, 0, 38, 0, 0, 0, 0,
+ 0, 0, 39, 0, 0, 0, 0, 0, 0, 0,
+ 40, 41, 0, 0, 2032, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 42, 0, 0, 1111, 0,
+ 0, 0, 0, 0, 1110, 1110, 1111, 1111, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 43, 44, 0,
+ 45, 0, 0, 0, 0, 0, 0, 46, 0, 0,
+ 4423, 0, 0, 0, 0, 47, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1112, 0, 0, 0, 0, 48, 0, 0, 0, 0,
+ 1111, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 49,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 50,
+ 0, 0, 0, 0, 0, 1112, 0, 0, 0, 0,
+ 4425, 0, 0, 0, 1111, 1111, 1111, 0, 51, 4130,
+ 4131, 0, 0, 0, 4132, 4133, 0, 0, 0, 0,
+ 0, 0, 0, 52, 4134, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1110, 53, 0, 1558, 54, 0, 0,
+ 55, 0, 0, 0, 0, 0, 0, 0, 0, 4135,
+ 0, 0, 0, 0, 0, 56, 0, 4426, 4427, 4428,
+ 0, 0, 4136, 1111, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 4429, 4137, 0,
+ 5945, 1111, 0, 0, 0, 1111, 1111, 1110, 1111, 1111,
+ 0, 0, 0, 0, 0, 0, 0, 1111, 0, 1111,
+ 0, 0, 0, 0, 0, 0, 1558, 0, 4139, 1112,
+ 0, 0, 0, 0, 1110, 1110, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 4140, 4141, 4142,
+ 1111, 4430, 0, 4431, 0, 0, 0, 4143, 4144, 4145,
+ 0, 0, 0, 0, 0, 0, 0, 1110, 0, 0,
+ 0, -904, 0, 4432, 0, 4146, 1111, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1111, 57,
+ 0, 4433, 0, 0, 0, 0, 0, 0, 4434, 0,
+ 0, 1111, 0, 0, 0, 0, 0, 4147, 0, 0,
+ 0, 0, 1111, 4435, 0, 0, 0, 0, 58, 0,
+ 4436, 0, 59, 0, 0, 0, 0, 0, 1111, 0,
+ 0, 0, 60, 0, 4149, 4437, 0, 0, 0, 0,
+ 61, 0, 0, 0, 0, 0, 1110, 0, 1110, 0,
+ 0, 0, 62, 0, 0, 0, 0, 4150, 4151, 4152,
+ 0, 0, 0, 0, 0, 1111, 0, 0, 0, 0,
+ 0, 0, 1111, 63, 0, 0, 64, 1112, 0, 4153,
+ 4154, 1112, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4438, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4439, 0, 1112, 0, 0, 0, 0, 65,
+ 0, 0, 0, 1112, 0, 0, 0, 0, 66, 0,
+ 0, 0, 0, 0, 0, 0, 0, 4155, 0, 4156,
+ 4157, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4440, 0, 0, 0, 67, 0, 4158, 0, 0, 0,
+ 0, 0, 0, 4441, 0, 0, 0, 0, 0, 1110,
+ 0, 0, 0, 0, 0, 0, 68, 0, 1111, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1112, 1112,
+ 1112, 1112, 4159, 4160, 0, 0, 0, 0, 0, 0,
+ 0, 1112, 4442, 0, 0, 0, 0, 0, 4443, 0,
+ 0, 1111, 0, 0, 0, 1110, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1111, 0, 0, 0, 0, 0, 0, 0, 4162, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1110, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 4444, 0, 0, 1111,
+ 0, 0, 0, 4445, 0, 0, 0, 0, 1110, 4163,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1110, 1110, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 4446, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4447, 4448, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 4449, 0, 0, 0, 0, 0, 0,
+ 0, 4164, 4165, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 4166, 4167, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1112, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4168,
+ 1111, 0, 0, 0, 1111, 0, 0, 1111, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1111, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1111, 0, 1111, 1111, 0,
+ 1111, 1111, 1111, 1111, 0, 1111, 0, 1111, 1111, 0,
+ 1111, 0, 0, 0, 0, 0, 0, 0, 1111, 1111,
+ 0, 0, 0, 1111, 1111, 1111, 0, 0, 0, 0,
+ 0, 0, 0, 1111, 1111, 1111, 0, 1111, 0, 1111,
+ 0, 1111, 0, 1111, 0, 1111, 0, 0, 0, 0,
+ 1111, 1111, 0, 1111, 1111, 1111, 0, 0, 0, 1111,
+ 0, 0, 1111, 4170, 0, 0, 4171, 0, 0, 4172,
+ 0, 1111, 0, 0, 1111, 0, 1111, 1111, 1111, 0,
+ 0, 1111, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4174, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1111, 0, 1111, 0, 0, 1111, 0,
+ 0, 0, 4175, 0, 0, 0, 0, 0, 1111, 1111,
+ 1111, 1111, 0, 1111, 0, 0, 1112, 0, 1111, 0,
+ 1110, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1110, 0, 0, 0, 0, 0,
+ 0, 0, 1558, 0, 0, 0, 0, 0, 1110, 0,
+ 0, 0, 0, 0, 0, 0, 1111, 0, 0, 0,
+ 0, 0, 0, 1110, 0, 0, 0, 0, 1111, 0,
+ 0, 0, 0, 0, 0, 1111, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1112, 0, 1112, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1111, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1112, 1112, 0, 0, 0, 0, 1112,
+ 0, 0, 0, 1112, 1112, 1112, 1111, 0, 0, 0,
+ 0, 0, 0, 1112, 1112, 0, 0, 0, 0, 1112,
+ 0, 0, 0, 1112, 1112, 1112, 0, 1112, 1112, 1112,
+ 0, 0, 0, 0, 0, 0, 0, 1112, 0, 1112,
+ 0, 0, 1112, 1112, 1112, 1112, 0, 1112, 0, 1112,
+ 1112, 1110, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1112, 1112, 1112, 1112, 1112, 0, 1112,
+ 1112, 1112, 1112, 1112, 1112, 1111, 1112, 1112, 0, 1112,
+ 1112, 0, 1112, 1112, 0, 0, 1112, 1112, 0, 1112,
+ 1112, 0, 1112, 0, 1112, 0, 1111, 0, 1112, 1112,
+ 1112, 0, 0, 1112, 1112, 1112, 1112, 0, 1112, 0,
+ 0, 0, 0, 0, 0, 1112, 0, 0, 0, 0,
+ 0, 1112, 1112, 1112, 1112, 0, 0, 0, 0, 0,
+ 0, 0, 1112, 1112, 0, 1112, 1112, 0, 0, 1112,
+ 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112,
+ 1112, 1112, 0, 0, 1112, 0, 0, 0, 4422, 174,
+ 175, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 933, 0, 0, 0, 0, 0,
+ 0, 1110, 0, 0, 0, 0, 5332, 0, 4530, 1112,
+ 933, 0, 0, 0, 0, 0, 1237, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4532, 0, 0, 0, 0, 0, 0, 0, 5333, 0,
+ 0, 0, 0, 0, 0, 0, 1111, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2032,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 5334, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1558, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1111, 0, 0, 0, 4423, 0, 0, 0, 0,
+ 0, 0, 0, 1111, 0, 0, 1111, 0, 0, 0,
+ 0, 0, 1558, 0, 0, 1112, 0, 1112, 0, 0,
+ 0, 0, 0, 4536, 1110, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1112, 0, 0, 0, 4538, 0, 0, 0,
+ 0, 0, 0, 0, 0, 4425, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4540, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1110, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4426, 4427, 4428, 0, 0, 0, 0, 933,
+ 0, 933, 0, 933, 933, 0, 0, 1112, 0, 0,
+ 933, 0, 4429, 933, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1110, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1112, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 4541, 0,
+ 0, 0, 0, 0, 0, 0, 4430, 0, 4431, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 4432, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 4433, 0, 0, 0,
+ 0, 0, 0, 4434, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 4435, 0,
+ 0, 0, 0, 0, 0, 4436, 0, 0, 0, 4543,
+ 0, 0, 0, 0, 0, 1110, 4545, 0, 0, 1110,
+ 4437, 1111, 1111, 0, 0, 0, 1111, 0, 0, 0,
+ 1112, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1111, 4547,
+ 1111, 0, 1111, 0, 1111, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1111,
+ 0, 0, 0, 1112, 0, 0, 0, 4438, 0, 0,
+ 0, 1112, 1112, 0, 0, 0, 0, 4439, 1111, 1111,
+ 0, 0, 0, 1111, 0, 1111, 0, 1111, 0, 0,
+ 0, 0, 1111, 0, 933, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 4440, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1112, 0, 0, 4441, 0,
+ 4549, 0, 0, 0, 0, 0, 1110, 0, 0, 1111,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1111, 0, 0, 0, 1111, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 4442, 0, 1112,
+ 1112, 1112, 0, 4443, 0, 1111, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1897, 0, 0, 0, 0, 0, 0, 1112, 0,
+ 0, 4444, 0, 0, 0, 0, 0, 0, 4445, 0,
+ 0, 0, 0, 0, 0, 0, 1112, 0, 0, 0,
+ 1112, 1112, 0, 1112, 1112, 0, 0, 1111, 0, 0,
+ 0, 0, 1112, 0, 1112, 0, 0, 1111, 0, 0,
+ 4446, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1111, 0, 0, 1111, 4447, 4448, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1112, 0, 0, 4449, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1112, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1112, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1112, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1112, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1112, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 933, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1112, 0, 0, 0, 0, 0, 0, 1112, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1112, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1111, 1111, 0, 1111, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1076, 1111, 1111,
+ 1111, 0, 0, 0, 0, 0, 1112, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1111, 1111, 0, 1112, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1111, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1111, 0,
+ 0, 0, 0, 0, 1112, 0, 0, 1111, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1111, 0, 0,
+ 0, 0, 1111, 1111, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1111, 0, 0, 0, 1111, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1439, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1112, 0, 0, 0, 1112,
+ 0, 0, 1112, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1112, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1112, 0, 1112, 1112, 0, 1112, 1112, 1112, 1112, 0,
+ 1112, 0, 1112, 1112, 0, 1112, 0, 0, 0, 0,
+ 0, 0, 0, 1112, 1112, 0, 0, 0, 1112, 1112,
+ 1112, 0, 0, 0, 0, 0, 0, 0, 1112, 1112,
+ 1112, 0, 1112, 0, 1112, 0, 1112, 0, 1112, 0,
+ 1112, 0, 0, 0, 0, 1112, 1112, 0, 1112, 1112,
+ 1112, 0, 0, 0, 1112, 0, 0, 1112, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1112, 0, 0, 1112,
+ 0, 1112, 1112, 1112, 0, 0, 1112, 0, 1569, 0,
+ 0, 0, 0, 0, 0, 0, 1111, 1111, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1112, 0,
+ 1112, 1595, 0, 1112, 0, 0, 0, 0, 0, 0,
+ 1609, 0, 0, 1112, 1112, 1112, 1112, 0, 1112, 0,
+ 0, 0, 0, 1112, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1112, 0, 0, 0, 0, 0, 0, 1682, 0,
+ 0, 0, 0, 1112, 0, 0, 0, 0, 0, 1,
+ 1112, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1111, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 4, 0, 0, 0, 0, 0, 1112,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 5, 0, 0, 0, 7, 0, 8, 0, 933, 0,
+ 0, 1112, 0, 0, 9, 0, 0, 0, 0, 1111,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 10, 0, 11, 12, 0,
+ 0, 0, 0, 0, 13, 0, 1111, 1111, 933, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 15, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1111,
+ 1112, 0, 0, 933, 17, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 18, 2822, 0, 0, 0,
+ 0, 1112, 0, 0, 0, 19, 0, 20, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1875,
+ 933, 933, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 22, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 23, 24, 0, 0, 0, 0, 0, 0, 1111, 0,
+ 1111, 25, 26, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 27, 28, 0, 0, 30, 0, 0,
+ 0, 0, 31, 0, 0, 0, 0, 0, 32, 0,
+ 0, 0, 33, 34, 35, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 36, 0,
+ 37, 1112, 38, 0, 0, 0, 0, 0, 0, 39,
+ 0, 0, 0, 0, 0, 0, 0, 0, 41, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 42, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1111, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 43, 0, 1112, 45, 0, 0,
+ 0, 0, 0, 2066, 46, 0, 0, 0, 1112, 0,
+ 0, 1112, 47, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1111, 0, 0,
+ 0, 0, 48, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 49, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 50, 1111, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2151, 0, 2151, 51, 0, 0, 0, 0,
+ 1111, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 52, 3058, 0, 0, 0, 0, 1111, 1111, 0, 0,
+ 0, 53, 0, 0, 54, 0, 0, 55, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 56, 0, 0, 0, 2198, 0, 0, 0,
+ 2203, 0, 2205, 0, 0, 0, 0, 0, 0, 0,
+ 2220, 2221, 0, 0, 0, 0, 2250, 0, 0, 0,
+ 2255, 2256, 2257, 0, 2259, 2260, 2261, 0, 0, 0,
+ 0, 0, 0, 0, 2269, 0, 2272, 0, 0, 2273,
+ 2274, 2275, 2276, 0, 0, 0, 2280, 2281, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 933, 0,
+ 2293, 2294, 2301, 2305, 2306, 0, 2309, 2310, 2311, 2314,
+ 2315, 0, 0, 2318, 2319, 0, 2325, 2326, 0, 2329,
+ 2330, 0, 0, 0, 2334, 0, 2336, 2337, 0, 2339,
+ 0, 2340, 0, 1897, 0, 2343, 2301, 2345, 0, 0,
+ 2351, 0, 2353, 2354, 0, 2355, 57, 0, 0, 0,
+ 0, 0, 2359, 0, 0, 0, 0, 0, 2361, 2362,
+ 2363, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 58, 0, 0, 0, 59,
+ 0, 0, 0, 0, 0, 0, 1112, 1112, 0, 60,
+ 0, 1112, 0, 0, 0, 0, 0, 61, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 62,
+ 0, 0, 0, 1112, 0, 1112, 0, 1112, 0, 1112,
+ 0, 0, 0, 0, 0, 0, 2459, 0, 0, 0,
+ 63, 0, 0, 64, 1112, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1112, 1112, 0, 0, 0, 1112, 0,
+ 1112, 0, 1112, 0, 0, 0, 65, 1112, 0, 0,
+ 0, 0, 1111, 0, 0, 66, 0, 0, 0, 0,
+ 0, 933, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1111, 0, 0, 0,
+ 0, 67, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1111, 0, 0, 0, 1112, 0, 0, 0, 0, 0,
+ 0, 0, 0, 68, 0, 1111, 0, 0, 1112, 0,
+ 0, 0, 1112, 0, 0, 0, 0, 0, 0, 0,
+ 933, 0, 2570, 0, 2575, 0, 0, 0, 0, 0,
+ 1112, 0, 0, 0, 0, 933, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 2598,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 3418, 933, 0, 0, 0,
+ 0, 0, 0, 0, 0, 933, 933, 933, 0, 0,
+ 3058, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3708, 0, 0, 0, 3708, 0, 0, 0,
+ 0, 0, 1112, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1112, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1111, 0, 0, 1112, 0, 0, 1112,
+ 0, 0, 0, 0, 2674, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2698, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1111, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 2811, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2866, 0, 0, 0, 0, 0, 0, 0, 2873, 2874,
+ 1111, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 933, 0, 0, 0,
+ 0, 0, 0, 933, 0, 0, 0, 1112, 1112, 0,
+ 1112, 0, 0, 0, 1111, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1112, 1112, 1112, 1111, 0, 0, 0,
+ 0, 0, 2893, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1112, 1112, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1112, 0, 0, 0, 0, 2932, 2934, 2936, 0,
+ 0, 0, 0, 1112, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1112, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1111, 0, 1112, 0, 0, 0, 0, 1112, 1112, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1112, 0, 0, 0,
+ 1112, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2998, 0, 0, 0, 1111, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3006,
+ 0, 3007, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3032, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3046, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 3085, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3085, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3106, 0, 0, 0, 0, 3708,
+ 0, 0, 0, 0, 0, 0, 0, 1111, 0, 0,
+ 3112, 1111, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 933, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 3132, 0, 0,
+ 0, 0, 0, 0, 2575, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1112, 1112, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1111, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 3222, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3247, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1112, 0, 3247, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3331, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1112, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1112, 1112, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1112, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3446, 0, 0, 0, 3448, 0, 0, 3449,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1112, 0, 1112, 0, 3727, 0, 0,
+ 0, 0, 3731, 3732, 3733, 3734, 0, 3735, 0, 3736,
+ 3737, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 3742, 3743, 0, 0, 0, 3744, 3745, 3746, 0, 0,
+ 0, 0, 0, 0, 0, 3748, 3749, 3750, 0, 3751,
+ 0, 3753, 0, 3755, 0, 3757, 0, 3759, 0, 0,
+ 0, 0, 2311, 3762, 0, 2311, 0, 3765, 0, 0,
+ 0, 3766, 0, 0, 3767, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 3774, 0, 3775, 3776,
+ 3777, 0, 0, 3778, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1112, 0, 0, 0,
+ 3800, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3810, 3813, 0, 0, 3818, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 4460, 4460, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1112, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3851, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1112, 0, 0, 0, 0, 3085, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1112, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1112, 1112, 0, 0, 0, 0, 0, 4460, 0,
+ 0, 0, 0, 0, 0, 0, 2575, 0, 0, 0,
+ 0, 933, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 2575, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 933, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3986, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 933, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3708, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 4110, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1112, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1112, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1112, 0, 0, 0, 0,
+ 0, 0, 0, 4195, 0, 0, 0, 0, 0, 0,
+ 1112, 0, 0, 0, 0, 4200, 0, 0, 4201, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 4460, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1112, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 4460, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1112, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 4229, 4230, 0, 0, 0, 4235, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3418, 0, 0, 0, 0, 0, 0,
+ 4255, 0, 4256, 0, 4257, 0, 4258, 0, 0, 933,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 4273, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1112, 0, 0, 0, 0,
+ 4294, 4295, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3247, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1112,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1112, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3085, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 3085, 0, 0, 0, 3085,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 2575, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1112, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 4460, 0,
+ 4460, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1112, 0, 0, 0, 0, 0, 0, 4485,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3247,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3247, 0, 0, 4499, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 4460, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1112, 0, 0, 0, 1112, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3418, 0, 0, 0, 3708, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1112, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 4706, 4707, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4714, 4715, 4716, 0, 0, 0, 0, 5485, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 4738, 4739, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4761,
+ 0, 3708, 0, 0, 0, 0, 0, 933, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3708, 3085,
+ 0, 0, 0, 0, 3085, 3085, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2575, 0, 0, 0, 2575, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 933, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 4984, 4985,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 933, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 4460, 3247, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 4460, 3708, 0, 0, 4460, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 933, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3247, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3085, 3085,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2575, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 4460, 0, 0, 0, 0,
+ 0, 0, 0, 4460, 0, 0, 0, 0, 0, 4460,
+ 4460, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4460, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4460,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 5268, 0, 5270, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 4460, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4460,
+ 0, 0, 0, 4460, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 4460, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5379,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 4460, 6064, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5399,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 4460, 0, 0, 0, 0,
+ 0, 0, 3247, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3085, 3085,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 4460,
+ 0, 4460, 4460, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 4460, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4460, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 4460, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 933, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3247, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 2575, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 5636, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 5839, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 949,
+ 0, 0, 0, 0, 950, 951, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 952, 953, 0, 954, 955,
+ 956, 957, 958, 959, 960, 961, 962, 963, 964, 0,
+ 0, 0, 0, 0, 0, 0, 965, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 966, 967, 968, 969, 0, 5962, 0,
+ 0, 0, 0, 0, 970, 971, 0, 972, 0, 0,
+ 0, 0, 0, 0, 973, 974, 0, 0, 975, 976,
+ 977, 978, 0, 979, 176, 0, 980, 981, 0, 0,
+ 0, 0, 0, 0, 0, 982, 0, 0, 983, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 177, 0, 0, 0, 984, 985, 986, 0,
+ 987, 0, 0, 0, 0, 0, 0, 0, 988, 989,
+ 990, 178, 0, 0, 0, 0, 0, 991, 0, 0,
+ 179, 0, 1682, 0, 0, 0, 992, 0, 0, 993,
+ 0, 0, 0, 0, 0, 0, 0, 0, 994, 0,
+ 995, 0, 996, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 997, 998, 0, 999,
+ 0, 0, 0, 1000, 180, 0, 0, 0, 1001, 0,
+ 0, 181, 1002, 0, 1003, 1004, 1005, 1006, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 1007, 1008, 1009, 0, 1010,
+ 0, 0, 0, 0, 0, 0, 1011, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1012, 0, 0,
+ 0, 0, 0, 0, 0, 1013, 1014, 0, 0, 0,
+ 32, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1015, 0, 0, 0, 0, 0,
+ 0, 1016, 1017, 0, 1018, 1019, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1020, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1021, 1022, 1023, 0,
+ 0, 39, 0, 0, 1024, 1025, 0, 0, 0, 2575,
+ 41, 0, 0, 0, 185, 186, 187, 188, 189, 190,
+ 191, 192, 193, 1026, 1027, 1028, 1029, 195, 196, 197,
+ 1030, 199, 200, 201, 202, 203, 204, 1031, 206, 207,
+ 208, 209, 210, 211, 212, 1032, 214, 215, 0, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 1033, 230, 231, 232, 233, 234, 235, 236,
+ 237, 238, 239, 240, 241, 1034, 243, 1035, 1036, 1037,
+ 0, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 1038, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 1039, 1040, 274, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 0,
+ 2575, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 317, 0, 318, 319, 320, 321,
+ 322, 323, 1041, 325, 326, 327, 328, 329, 330, 331,
+ 0, 332, 333, 334, 1042, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 355, 356, 1043, 1044, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 1045, 403, 404, 405, 406, 407, 1046, 409,
+ 410, 411, 412, 413, 414, 415, 416, 1047, 1048, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 437, 438,
+ 439, 1049, 441, 442, 443, 444, 445, 446, 447, 1050,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ 459, 1051, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 1052, 505, 506, 507, 508,
+ 509, 510, 1053, 512, 513, 514, 515, 516, 517, 1054,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 1055, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 1056,
+ 1057, 1058, 1059, 571, 572, 573, 574, 1060, 1061, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 1062, 590, 1063, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 1064, 604, 1065, 606, 607,
+ 608, 0, 609, 610, 611, 1066, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1067, 1068, 0, 0, 949, 0,
+ 1069, 0, 0, 950, 951, 1070, 0, 0, 0, 1071,
+ 1072, 0, 0, 1073, 952, 953, 0, 954, 955, 956,
+ 957, 958, 959, 960, 961, 962, 963, 964, 0, 0,
+ 0, 0, 0, 0, 0, 965, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 966, 967, 968, 969, 0, 0, 0, 2298,
+ 0, 0, 0, 970, 971, 0, 972, 0, 0, 0,
+ 0, 0, 0, 973, 974, 0, 0, 975, 976, 977,
+ 978, 0, 979, 176, 0, 980, 981, 0, 0, 0,
+ 0, 0, 0, 0, 982, 0, 0, 983, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 177, 0, 0, 0, 984, 985, 986, 0, 987,
+ 0, 0, 0, 0, 0, 0, 0, 988, 989, 990,
+ 178, 0, 0, 0, 0, 0, 991, 0, 0, 179,
+ 0, 0, 0, 0, 0, 992, 0, 0, 993, 0,
+ 0, 0, 0, 0, 0, 0, 0, 994, 2299, 995,
+ 0, 996, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 997, 998, 0, 999, 0,
+ 0, 0, 1000, 180, 0, 0, 0, 1001, 0, 0,
+ 181, 1002, 0, 1003, 1004, 1005, 1006, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 1007, 1008, 1009, 0, 1010, 0,
+ 0, 0, 0, 0, 0, 1011, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1012, 0, 0, 0,
+ 0, 0, 0, 0, 1013, 1014, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1015, 0, 0, 0, 0, 0, 0,
+ 1016, 1017, 0, 1018, 1019, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2300, 0, 1020, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1021, 1022, 1023, 0, 0,
+ 0, 0, 0, 1024, 1025, 0, 0, 0, 0, 0,
+ 0, 0, 0, 185, 186, 187, 188, 189, 190, 191,
+ 192, 193, 1026, 1027, 1028, 1029, 195, 196, 197, 1030,
+ 199, 200, 201, 202, 203, 204, 1031, 206, 207, 208,
+ 209, 210, 211, 212, 1032, 214, 215, 0, 216, 217,
+ 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
+ 228, 1033, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 1034, 243, 1035, 1036, 1037, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 1038, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 1039, 1040, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 0, 318, 319, 320, 321, 322,
+ 323, 1041, 325, 326, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 1042, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 1043, 1044, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 1045, 403, 404, 405, 406, 407, 1046, 409, 410,
+ 411, 412, 413, 414, 415, 416, 1047, 1048, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 0, 433, 434, 435, 436, 437, 438, 439,
+ 1049, 441, 442, 443, 444, 445, 446, 447, 1050, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 1051, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 1052, 505, 506, 507, 508, 509,
+ 510, 1053, 512, 513, 514, 515, 516, 517, 1054, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 1055,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 1056, 1057,
+ 1058, 1059, 571, 572, 573, 574, 1060, 1061, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 1062, 590, 1063, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 1064, 604, 1065, 606, 607, 608,
+ 0, 609, 610, 611, 1066, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1067, 1068, 0, 0, 949, 0, 1069,
+ 0, 0, 950, 951, 1070, 0, 0, 0, 1071, 1072,
+ 0, 0, 1073, 952, 953, 0, 954, 955, 956, 957,
+ 958, 959, 960, 961, 962, 963, 964, 0, 0, 0,
+ 0, 0, 0, 0, 965, 0, 0, 0, 0, 0,
+ 0, 3081, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3082, 967, 968, 969, 0, 0, 0, 0, 0,
+ 0, 0, 970, 971, 0, 972, 0, 0, 0, 0,
+ 0, 0, 973, 974, 0, 0, 975, 976, 977, 978,
+ 0, 979, 176, 0, 980, 981, 0, 0, 0, 0,
+ 0, 0, 0, 3083, 0, 0, 983, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 0, 0, 0, 984, 985, 986, 0, 987, 0,
+ 0, 0, 0, 0, 0, 0, 988, 989, 990, 178,
+ 0, 0, 0, 0, 0, 991, 0, 0, 179, 0,
+ 0, 0, 0, 0, 992, 0, 0, 993, 0, 0,
+ 0, 0, 0, 0, 0, 0, 994, 0, 995, 0,
+ 996, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 997, 998, 0, 999, 0, 0,
+ 0, 1000, 180, 0, 0, 0, 1001, 0, 0, 181,
+ 1002, 0, 1003, 1004, 1005, 1006, 0, 3084, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 1007, 1008, 1009, 0, 1010, 0, 0,
+ 0, 0, 0, 0, 1011, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1012, 0, 0, 0, 0,
+ 0, 0, 0, 1013, 1014, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1015, 0, 0, 0, 0, 0, 0, 1016,
+ 1017, 0, 1018, 1019, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1020, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1021, 1022, 1023, 0, 0, 0,
+ 0, 0, 1024, 1025, 0, 0, 0, 0, 0, 0,
+ 0, 0, 185, 186, 187, 188, 189, 190, 191, 192,
+ 193, 1026, 1027, 1028, 1029, 195, 196, 197, 1030, 199,
+ 200, 201, 202, 203, 204, 1031, 206, 207, 208, 209,
+ 210, 211, 212, 1032, 214, 215, 0, 216, 217, 218,
+ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
+ 1033, 230, 231, 232, 233, 234, 235, 236, 237, 238,
+ 239, 240, 241, 1034, 243, 1035, 1036, 1037, 0, 247,
+ 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
+ 258, 259, 1038, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 1039, 1040, 274, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 0, 318, 319, 320, 321, 322, 323,
+ 1041, 325, 326, 327, 328, 329, 330, 331, 0, 332,
+ 333, 334, 1042, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 1043, 1044, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 1045, 403, 404, 405, 406, 407, 1046, 409, 410, 411,
+ 412, 413, 414, 415, 416, 1047, 1048, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 437, 438, 439, 1049,
+ 441, 442, 443, 444, 445, 446, 447, 1050, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 459, 1051,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 1052, 505, 506, 507, 508, 509, 510,
+ 1053, 512, 513, 514, 515, 516, 517, 1054, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 1055, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 1056, 1057, 1058,
+ 1059, 571, 572, 573, 574, 1060, 1061, 577, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 1062,
+ 590, 1063, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 1064, 604, 1065, 606, 607, 608, 0,
+ 609, 610, 611, 1066, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1067, 1068, 0, 0, 949, 0, 1069, 0,
+ 0, 950, 951, 1070, 0, 0, 0, 1071, 1072, 0,
+ 0, 1073, 952, 953, 0, 954, 955, 956, 957, 958,
+ 959, 960, 961, 962, 963, 964, 0, 0, 0, 0,
+ 0, 0, 0, 965, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 966, 967, 968, 969, 0, 0, 0, 0, 0, 0,
+ 0, 970, 971, 0, 972, 0, 0, 0, 0, 0,
+ 0, 973, 974, 0, 0, 975, 976, 977, 978, 0,
+ 979, 176, 0, 980, 981, 0, 0, 0, 0, 0,
+ 0, 0, 982, 0, 0, 983, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 984, 985, 986, 0, 987, 0, 0,
+ 0, 0, 0, 0, 0, 988, 989, 990, 178, 0,
+ 0, 0, 0, 0, 991, 0, 0, 179, 0, 0,
+ 0, 0, 0, 992, 0, 0, 993, 0, 0, 0,
+ 0, 0, 0, 0, 0, 994, 0, 995, 0, 996,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 997, 998, 0, 999, 0, 0, 0,
+ 1000, 180, 0, 0, 0, 1001, 0, 0, 181, 1002,
+ 0, 1003, 1004, 1005, 1006, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 1007, 1008, 1009, 0, 1010, 0, 0, 0,
+ 0, 0, 0, 1011, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1012, 0, 0, 0, 0, 0,
+ 0, 0, 1013, 1014, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1015, 0, 0, 0, 0, 0, 0, 1016, 1017,
+ 0, 1018, 1019, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1020, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1021, 1022, 1023, 0, 0, 0, 0,
+ 0, 1024, 1025, 0, 1568, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 1026, 1027, 1028, 1029, 195, 196, 197, 1030, 199, 200,
+ 201, 202, 203, 204, 1031, 206, 207, 208, 209, 210,
+ 211, 212, 1032, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 1033,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 1034, 243, 1035, 1036, 1037, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 1038, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 1039, 1040, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 321, 322, 323, 1041,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 1042, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 1043, 1044, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 1045,
+ 403, 404, 405, 406, 407, 1046, 409, 410, 411, 412,
+ 413, 414, 415, 416, 1047, 1048, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 1049, 441,
+ 442, 443, 444, 445, 446, 447, 1050, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 1051, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 1052, 505, 506, 507, 508, 509, 510, 1053,
+ 512, 513, 514, 515, 516, 517, 1054, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 1055, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 1056, 1057, 1058, 1059,
+ 571, 572, 573, 574, 1060, 1061, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 1062, 590,
+ 1063, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 1064, 604, 1065, 606, 607, 608, 0, 609,
+ 610, 611, 1066, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1067, 1068, 0, 0, 949, 0, 1069, 0, 0,
+ 950, 951, 1070, 0, 0, 0, 1071, 1072, 0, 0,
+ 1073, 952, 953, 0, 954, 955, 956, 957, 958, 959,
+ 960, 961, 962, 963, 964, 0, 0, 0, 0, 0,
+ 0, 0, 965, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 966,
+ 967, 968, 969, 0, 0, 0, 0, 0, 0, 0,
+ 970, 971, 0, 972, 0, 0, 0, 0, 0, 0,
+ 973, 974, 0, 0, 975, 976, 977, 978, 0, 979,
+ 176, 0, 980, 981, 0, 0, 0, 0, 0, 0,
+ 0, 2572, 0, 0, 983, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 177, 0,
+ 0, 0, 984, 985, 986, 0, 987, 0, 0, 0,
+ 0, 0, 0, 0, 988, 989, 990, 178, 0, 0,
+ 0, 0, 0, 991, 0, 2573, 179, 0, 0, 0,
+ 0, 0, 992, 0, 0, 993, 0, 0, 0, 0,
+ 0, 0, 0, 0, 994, 0, 995, 0, 996, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 997, 998, 0, 999, 0, 0, 0, 1000,
+ 180, 0, 0, 0, 1001, 0, 0, 181, 1002, 0,
+ 1003, 1004, 1005, 1006, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 183, 1007, 1008, 1009, 0, 1010, 0, 0, 0, 0,
+ 0, 0, 1011, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1012, 0, 0, 0, 0, 0, 0,
+ 0, 1013, 1014, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1015, 0, 0, 0, 0, 0, 0, 1016, 1017, 0,
+ 1018, 1019, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1020, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1021, 1022, 1023, 0, 0, 0, 0, 0,
+ 1024, 1025, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 186, 187, 188, 189, 190, 191, 192, 193, 1026,
+ 1027, 1028, 1029, 195, 196, 197, 1030, 199, 200, 201,
+ 202, 203, 204, 1031, 206, 207, 208, 209, 210, 211,
+ 212, 1032, 214, 215, 0, 216, 217, 218, 219, 220,
+ 221, 222, 223, 224, 225, 226, 227, 228, 1033, 230,
+ 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
+ 241, 1034, 243, 1035, 1036, 1037, 0, 247, 248, 249,
+ 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
+ 1038, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 1039, 1040, 274, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 300, 301, 302, 303, 0, 0, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 0, 318, 319, 320, 321, 322, 323, 1041, 325,
+ 326, 327, 328, 329, 330, 331, 0, 332, 333, 334,
+ 1042, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 1043, 1044, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 1045, 403,
+ 404, 405, 406, 407, 1046, 409, 410, 411, 412, 413,
+ 414, 415, 416, 1047, 1048, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 0,
+ 433, 434, 435, 436, 437, 438, 439, 1049, 441, 442,
+ 443, 444, 445, 446, 447, 1050, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, 459, 1051, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 1052, 505, 506, 507, 508, 509, 510, 1053, 512,
+ 513, 514, 515, 516, 517, 1054, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 1055, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 1056, 1057, 1058, 1059, 571,
+ 572, 573, 574, 1060, 1061, 577, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 1062, 590, 1063,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 1064, 604, 1065, 606, 607, 608, 0, 609, 610,
+ 611, 1066, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1067, 1068, 0, 0, 949, 0, 1069, 0, 0, 950,
+ 951, 1070, 0, 0, 0, 1071, 1072, 0, 0, 1073,
+ 952, 953, 0, 954, 955, 956, 957, 958, 959, 960,
+ 961, 962, 963, 964, 0, 0, 0, 0, 0, 0,
+ 0, 965, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 966, 967,
+ 968, 969, 0, 0, 0, 0, 0, 0, 0, 970,
+ 971, 0, 972, 0, 0, 0, 0, 0, 0, 973,
+ 974, 0, 0, 975, 976, 977, 978, 0, 979, 176,
+ 0, 980, 981, 0, 0, 0, 0, 0, 0, 0,
+ 982, 0, 0, 983, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 984, 985, 986, 0, 987, 0, 0, 0, 2931,
+ 0, 0, 0, 988, 989, 990, 178, 0, 0, 0,
+ 0, 0, 991, 0, 0, 179, 0, 0, 0, 0,
+ 0, 992, 0, 0, 993, 0, 0, 0, 0, 0,
+ 0, 0, 0, 994, 0, 995, 0, 996, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 997, 998, 0, 999, 0, 0, 0, 1000, 180,
+ 0, 0, 0, 1001, 0, 0, 181, 1002, 0, 1003,
+ 1004, 1005, 1006, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 1007, 1008, 1009, 0, 1010, 0, 0, 0, 0, 0,
+ 0, 1011, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1012, 0, 0, 0, 0, 0, 0, 0,
+ 1013, 1014, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1015,
+ 0, 0, 0, 0, 0, 0, 1016, 1017, 0, 1018,
+ 1019, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1020, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1021, 1022, 1023, 0, 0, 0, 0, 0, 1024,
+ 1025, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 1026, 1027,
+ 1028, 1029, 195, 196, 197, 1030, 199, 200, 201, 202,
+ 203, 204, 1031, 206, 207, 208, 209, 210, 211, 212,
+ 1032, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 1033, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 1034, 243, 1035, 1036, 1037, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 1038,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 1039, 1040, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 321, 322, 323, 1041, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 1042,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 1043, 1044, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 1045, 403, 404,
+ 405, 406, 407, 1046, 409, 410, 411, 412, 413, 414,
+ 415, 416, 1047, 1048, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 1049, 441, 442, 443,
+ 444, 445, 446, 447, 1050, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 1051, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 1052, 505, 506, 507, 508, 509, 510, 1053, 512, 513,
+ 514, 515, 516, 517, 1054, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 1055, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 1056, 1057, 1058, 1059, 571, 572,
+ 573, 574, 1060, 1061, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 1062, 590, 1063, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 1064, 604, 1065, 606, 607, 608, 0, 609, 610, 611,
+ 1066, 0, 0, 0, 0, 0, 0, 0, 0, 1067,
+ 1068, 0, 0, 949, 0, 1069, 0, 0, 950, 951,
+ 1070, 0, 0, 0, 1071, 1072, 0, 0, 1073, 952,
+ 953, 0, 954, 955, 956, 957, 958, 959, 960, 961,
+ 962, 963, 964, 0, 0, 0, 0, 0, 0, 0,
+ 965, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 966, 967, 968,
+ 969, 0, 0, 0, 0, 0, 0, 0, 970, 971,
+ 0, 972, 0, 0, 0, 0, 0, 0, 973, 974,
+ 0, 0, 975, 976, 977, 978, 0, 979, 176, 0,
+ 980, 981, 0, 0, 0, 0, 0, 0, 0, 982,
+ 0, 0, 983, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 177, 0, 0, 0,
+ 984, 985, 986, 0, 987, 0, 0, 0, 2933, 0,
+ 0, 0, 988, 989, 990, 178, 0, 0, 0, 0,
+ 0, 991, 0, 0, 179, 0, 0, 0, 0, 0,
+ 992, 0, 0, 993, 0, 0, 0, 0, 0, 0,
+ 0, 0, 994, 0, 995, 0, 996, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 997, 998, 0, 999, 0, 0, 0, 1000, 180, 0,
+ 0, 0, 1001, 0, 0, 181, 1002, 0, 1003, 1004,
+ 1005, 1006, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 1007,
+ 1008, 1009, 0, 1010, 0, 0, 0, 0, 0, 0,
+ 1011, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1012, 0, 0, 0, 0, 0, 0, 0, 1013,
+ 1014, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1015, 0,
+ 0, 0, 0, 0, 0, 1016, 1017, 0, 1018, 1019,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1020, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1021, 1022, 1023, 0, 0, 0, 0, 0, 1024, 1025,
+ 0, 0, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 1026, 1027, 1028,
+ 1029, 195, 196, 197, 1030, 199, 200, 201, 202, 203,
+ 204, 1031, 206, 207, 208, 209, 210, 211, 212, 1032,
+ 214, 215, 0, 216, 217, 218, 219, 220, 221, 222,
+ 223, 224, 225, 226, 227, 228, 1033, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 1034,
+ 243, 1035, 1036, 1037, 0, 247, 248, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 1038, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 1039, 1040, 274, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ 301, 302, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, 317, 0,
+ 318, 319, 320, 321, 322, 323, 1041, 325, 326, 327,
+ 328, 329, 330, 331, 0, 332, 333, 334, 1042, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 1043, 1044, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 1045, 403, 404, 405,
+ 406, 407, 1046, 409, 410, 411, 412, 413, 414, 415,
+ 416, 1047, 1048, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 437, 438, 439, 1049, 441, 442, 443, 444,
+ 445, 446, 447, 1050, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, 459, 1051, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 1052,
+ 505, 506, 507, 508, 509, 510, 1053, 512, 513, 514,
+ 515, 516, 517, 1054, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 1055, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 1056, 1057, 1058, 1059, 571, 572, 573,
+ 574, 1060, 1061, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 1062, 590, 1063, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 1064,
+ 604, 1065, 606, 607, 608, 0, 609, 610, 611, 1066,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1067, 1068,
+ 0, 0, 949, 0, 1069, 0, 0, 950, 951, 1070,
+ 0, 0, 0, 1071, 1072, 0, 0, 1073, 952, 953,
+ 0, 954, 955, 956, 957, 958, 959, 960, 961, 962,
+ 963, 964, 0, 0, 0, 0, 0, 0, 0, 965,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 966, 967, 968, 969,
+ 0, 0, 0, 0, 0, 0, 0, 970, 971, 0,
+ 972, 0, 0, 0, 0, 0, 0, 973, 974, 0,
+ 0, 975, 976, 977, 978, 0, 979, 176, 0, 980,
+ 981, 0, 0, 0, 0, 0, 0, 0, 982, 0,
+ 0, 983, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 984,
+ 985, 986, 0, 987, 0, 0, 0, 2935, 0, 0,
+ 0, 988, 989, 990, 178, 0, 0, 0, 0, 0,
+ 991, 0, 0, 179, 0, 0, 0, 0, 0, 992,
+ 0, 0, 993, 0, 0, 0, 0, 0, 0, 0,
+ 0, 994, 0, 995, 0, 996, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 997,
+ 998, 0, 999, 0, 0, 0, 1000, 180, 0, 0,
+ 0, 1001, 0, 0, 181, 1002, 0, 1003, 1004, 1005,
+ 1006, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 1007, 1008,
+ 1009, 0, 1010, 0, 0, 0, 0, 0, 0, 1011,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1012, 0, 0, 0, 0, 0, 0, 0, 1013, 1014,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1015, 0, 0,
+ 0, 0, 0, 0, 1016, 1017, 0, 1018, 1019, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1020,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1021,
+ 1022, 1023, 0, 0, 0, 0, 0, 1024, 1025, 0,
+ 0, 0, 0, 0, 0, 0, 0, 185, 186, 187,
+ 188, 189, 190, 191, 192, 193, 1026, 1027, 1028, 1029,
+ 195, 196, 197, 1030, 199, 200, 201, 202, 203, 204,
+ 1031, 206, 207, 208, 209, 210, 211, 212, 1032, 214,
+ 215, 0, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 1033, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 1034, 243,
+ 1035, 1036, 1037, 0, 247, 248, 249, 250, 251, 252,
+ 253, 254, 255, 256, 257, 258, 259, 1038, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 1039,
+ 1040, 274, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
+ 302, 303, 0, 0, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, 317, 0, 318,
+ 319, 320, 321, 322, 323, 1041, 325, 326, 327, 328,
+ 329, 330, 331, 0, 332, 333, 334, 1042, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 1043,
+ 1044, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 1045, 403, 404, 405, 406,
+ 407, 1046, 409, 410, 411, 412, 413, 414, 415, 416,
+ 1047, 1048, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 437, 438, 439, 1049, 441, 442, 443, 444, 445,
+ 446, 447, 1050, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 1051, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 1052, 505,
+ 506, 507, 508, 509, 510, 1053, 512, 513, 514, 515,
+ 516, 517, 1054, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 1055, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 1056, 1057, 1058, 1059, 571, 572, 573, 574,
+ 1060, 1061, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 1062, 590, 1063, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 1064, 604,
+ 1065, 606, 607, 608, 0, 609, 610, 611, 1066, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1067, 1068, 0,
+ 0, 949, 0, 1069, 0, 0, 950, 951, 1070, 0,
+ 0, 0, 1071, 1072, 0, 0, 1073, 952, 953, 0,
+ 954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
+ 964, 0, 0, 0, 0, 0, 0, 0, 965, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 966, 967, 968, 969, 0,
+ 0, 0, 0, 0, 0, 0, 970, 971, 0, 972,
+ 0, 0, 0, 0, 0, 0, 973, 974, 0, 0,
+ 975, 976, 977, 978, 0, 979, 176, 0, 980, 981,
+ 0, 0, 0, 0, 0, 0, 0, 4785, 0, 0,
+ 983, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 177, 0, 0, 0, 984, 985,
+ 986, 0, 987, 0, 0, 0, 0, 0, 0, 0,
+ 988, 989, 990, 178, 0, 0, 0, 0, 0, 991,
+ 0, 2573, 179, 0, 0, 0, 0, 0, 992, 0,
+ 0, 993, 0, 0, 0, 0, 0, 0, 0, 0,
+ 994, 0, 995, 0, 996, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 997, 998,
+ 0, 999, 0, 0, 0, 1000, 180, 0, 0, 0,
+ 1001, 0, 0, 181, 1002, 0, 1003, 1004, 1005, 1006,
+ 0, 0, 0, 0, 0, 182, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 183, 1007, 1008, 1009,
+ 0, 1010, 0, 0, 0, 0, 0, 0, 1011, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1012,
+ 0, 0, 0, 0, 0, 0, 0, 1013, 1014, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1015, 0, 0, 0,
+ 0, 0, 0, 1016, 1017, 0, 1018, 1019, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1020, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1021, 1022,
+ 1023, 0, 0, 0, 0, 0, 1024, 1025, 0, 0,
+ 0, 0, 0, 0, 0, 0, 185, 186, 187, 188,
+ 189, 190, 191, 192, 193, 1026, 1027, 1028, 1029, 195,
+ 196, 197, 1030, 199, 200, 201, 202, 203, 204, 1031,
+ 206, 207, 208, 209, 210, 211, 212, 1032, 214, 215,
+ 0, 216, 217, 218, 219, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 1033, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 1034, 243, 1035,
+ 1036, 1037, 0, 247, 248, 249, 250, 251, 252, 253,
+ 254, 255, 256, 257, 258, 259, 1038, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 1039, 1040,
+ 274, 275, 0, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
+ 303, 0, 0, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, 317, 0, 318, 319,
+ 320, 321, 322, 323, 1041, 325, 326, 327, 328, 329,
+ 330, 331, 0, 332, 333, 334, 1042, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, 352, 353, 354, 355, 356, 1043, 1044,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
+ 0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 1045, 403, 404, 405, 406, 407,
+ 1046, 409, 410, 411, 412, 413, 414, 415, 416, 1047,
+ 1048, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 0, 433, 434, 435, 436,
+ 437, 438, 439, 1049, 441, 442, 443, 444, 445, 446,
+ 447, 1050, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, 459, 1051, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 1052, 505, 506,
+ 507, 508, 509, 510, 1053, 512, 513, 514, 515, 516,
+ 517, 1054, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, 532, 533, 534, 535, 0,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 1055, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 1056, 1057, 1058, 1059, 571, 572, 573, 574, 1060,
+ 1061, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 1062, 590, 1063, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 1064, 604, 1065,
+ 606, 607, 608, 0, 609, 610, 611, 1066, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1067, 1068, 0, 0,
+ 949, 0, 1069, 0, 0, 950, 951, 1070, 0, 0,
+ 0, 1071, 1072, 0, 0, 1073, 952, 953, 0, 954,
+ 955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
+ 0, 0, 0, 0, 0, 0, 0, 965, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 966, 967, 968, 969, 0, 0,
+ 0, 0, 0, 0, 0, 970, 971, 0, 972, 0,
+ 0, 0, 0, 0, 0, 973, 974, 0, 0, 975,
+ 976, 977, 978, 0, 979, 176, 0, 980, 981, 0,
+ 0, 0, 0, 0, 0, 0, 982, 0, 0, 983,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 984, 985, 986,
+ 0, 987, 0, 0, 0, 0, 0, 0, 0, 988,
+ 989, 990, 178, 0, 0, 0, 0, 0, 991, 0,
+ 0, 179, 0, 0, 0, 0, 0, 992, 0, 0,
+ 993, 0, 0, 0, 0, 0, 0, 0, 0, 994,
+ 0, 995, 0, 996, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 997, 998, 0,
+ 999, 0, 0, 0, 1000, 180, 0, 0, 0, 1001,
+ 0, 0, 181, 1002, 0, 1003, 1004, 1005, 1006, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 1007, 1008, 1009, 0,
+ 1010, 0, 0, 0, 0, 0, 0, 1011, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1012, 0,
+ 0, 0, 0, 0, 0, 0, 1013, 1014, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1015, 0, 0, 0, 0,
+ 0, 0, 1016, 1017, 0, 1018, 1019, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1020, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1021, 1022, 1023,
+ 0, 0, 0, 0, 0, 1024, 1025, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 1026, 1027, 1028, 1029, 195, 196,
+ 197, 1030, 199, 200, 201, 202, 203, 204, 1031, 206,
+ 207, 208, 209, 210, 211, 212, 1032, 214, 215, 0,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 1033, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 1034, 243, 1035, 1036,
+ 1037, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 1038, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 1039, 1040, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 1041, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 1042, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 1043, 1044, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 1045, 403, 404, 405, 406, 407, 1046,
+ 409, 410, 411, 412, 413, 414, 415, 416, 1047, 1048,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 1049, 441, 442, 443, 444, 445, 446, 447,
+ 1050, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 1051, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 1052, 505, 506, 507,
+ 508, 509, 510, 1053, 512, 513, 514, 515, 516, 517,
+ 1054, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 1055, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 1056, 1057, 1058, 1059, 571, 572, 573, 574, 1060, 1061,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 1062, 590, 1063, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 1064, 604, 1065, 606,
+ 607, 608, 0, 609, 610, 611, 1066, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1067, 1068, 0, 0, 949,
+ 0, 1069, 0, 0, 950, 951, 1070, 0, 0, 0,
+ 1071, 1072, 0, 0, 1073, 952, 953, 0, 954, 955,
+ 956, 957, 958, 959, 960, 961, 962, 963, 964, 0,
+ 0, 0, 0, 0, 0, 0, 965, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 966, 967, 968, 969, 0, 0, 0,
+ 0, 0, 0, 0, 970, 971, 0, 972, 0, 0,
+ 0, 0, 0, 0, 973, 974, 0, 0, 975, 976,
+ 977, 978, 0, 979, 176, 0, 980, 981, 0, 0,
+ 0, 0, 0, 0, 0, 982, 0, 0, 983, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 177, 0, 0, 0, 984, 985, 986, 0,
+ 987, 0, 0, 0, 0, 0, 0, 0, 988, 989,
+ 990, 178, 0, 0, 0, 0, 0, 991, 0, 0,
+ 179, 0, 0, 0, 0, 0, 992, 0, 0, 993,
+ 0, 0, 0, 0, 0, 0, 0, 0, 994, 0,
+ 995, 0, 996, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 997, 998, 0, 999,
+ 0, 0, 0, 1000, 180, 0, 0, 0, 1001, 0,
+ 0, 181, 1002, 0, 1003, 1004, 1005, 1006, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 1007, 1008, 1009, 0, 1010,
+ 0, 0, 0, 0, 0, 0, 1011, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1012, 0, 0,
+ 0, 0, 0, 0, 0, 1013, 1014, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1015, 0, 0, 0, 0, 0,
+ 0, 1016, 1017, 0, 1018, 1019, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1020, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1021, 1022, 1023, 0,
+ 0, 0, 0, 0, 1024, 1025, 0, 0, 0, 0,
+ 0, 0, 0, 0, 185, 186, 187, 188, 189, 190,
+ 191, 192, 193, 1026, 1027, 1028, 1029, 195, 196, 197,
+ 1030, 199, 200, 201, 202, 203, 204, 1031, 206, 207,
+ 208, 209, 210, 211, 212, 1032, 214, 215, 0, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 1033, 230, 231, 232, 233, 234, 235, 236,
+ 237, 238, 239, 240, 241, 1034, 243, 1035, 1036, 1037,
+ 0, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 1038, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 1039, 1040, 274, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 0,
+ 0, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 317, 0, 318, 319, 320, 321,
+ 322, 323, 1041, 325, 326, 327, 328, 329, 330, 331,
+ 0, 332, 333, 334, 1042, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 355, 356, 1043, 1044, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 1045, 403, 404, 405, 406, 407, 1046, 409,
+ 410, 411, 412, 413, 414, 415, 416, 1047, 1048, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 437, 438,
+ 439, 1049, 441, 442, 443, 444, 445, 446, 447, 1050,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ 459, 1051, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 1052, 505, 506, 507, 508,
+ 509, 510, 1053, 512, 513, 514, 515, 516, 517, 1054,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 1055, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 1056,
+ 1057, 1058, 1059, 571, 572, 573, 574, 1060, 1061, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 1062, 590, 1063, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 1064, 604, 1065, 606, 607,
+ 608, 0, 609, 610, 611, 1066, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1067, 1068, 0, 0, 949, 0,
+ 1069, 0, 0, 950, 951, 1594, 0, 0, 0, 1071,
+ 1072, 0, 0, 1073, 952, 953, 0, 954, 955, 956,
+ 957, 958, 959, 960, 961, 962, 963, 964, 0, 0,
+ 0, 0, 0, 0, 0, 965, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 966, 967, 968, 969, 0, 0, 0, 0,
+ 0, 0, 0, 970, 971, 0, 972, 0, 0, 0,
+ 0, 0, 0, 973, 974, 0, 0, 975, 976, 977,
+ 978, 0, 979, 176, 0, 980, 981, 0, 0, 0,
+ 0, 0, 0, 0, 982, 0, 0, 983, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 177, 0, 0, 0, 984, 985, 986, 0, 987,
+ 0, 0, 0, 0, 0, 0, 0, 988, 989, 990,
+ 178, 0, 0, 0, 0, 0, 991, 0, 0, 179,
+ 0, 0, 0, 0, 0, 992, 0, 0, 993, 0,
+ 0, 0, 0, 0, 0, 0, 0, 994, 0, 995,
+ 0, 996, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 997, 998, 0, 999, 0,
+ 0, 0, 1000, 180, 0, 0, 0, 1001, 0, 0,
+ 181, 1002, 0, 1003, 1004, 1005, 1006, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 1007, 1008, 1009, 0, 1010, 0,
+ 0, 0, 0, 0, 0, 1011, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1012, 0, 0, 0,
+ 0, 0, 0, 0, 1013, 1014, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1015, 0, 0, 0, 0, 0, 0,
+ 1016, 1017, 0, 1018, 1019, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1020, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1021, 1022, 1023, 0, 0,
+ 0, 0, 0, 1024, 1025, 0, 0, 0, 0, 0,
+ 0, 0, 0, 185, 186, 187, 188, 189, 190, 191,
+ 192, 193, 1026, 1027, 1028, 1029, 195, 196, 197, 1030,
+ 199, 200, 201, 202, 203, 204, 1031, 206, 207, 208,
+ 209, 210, 211, 212, 1032, 214, 215, 0, 216, 217,
+ 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
+ 228, 1033, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 1034, 243, 1035, 1036, 1037, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 1038, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 1039, 1040, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 0, 318, 319, 320, 321, 322,
+ 323, 1041, 325, 326, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 1042, 2149, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 1043, 1044, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 1045, 403, 404, 405, 406, 407, 1046, 409, 410,
+ 411, 412, 413, 414, 415, 416, 1047, 1048, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 0, 433, 434, 435, 436, 437, 438, 439,
+ 1049, 441, 442, 443, 444, 445, 446, 447, 1050, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 1051, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 1052, 505, 506, 507, 508, 509,
+ 510, 1053, 512, 513, 514, 515, 516, 517, 1054, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 1055,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 1056, 1057,
+ 1058, 1059, 571, 572, 573, 574, 1060, 1061, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 2150, 590, 1063, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 1064, 604, 1065, 606, 607, 608,
+ 0, 609, 610, 611, 1066, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1067, 1068, 0, 0, 949, 0, 1069,
+ 0, 0, 950, 951, 1070, 0, 0, 0, 1071, 1072,
+ 0, 0, 1073, 952, 953, 0, 954, 955, 956, 957,
+ 958, 959, 960, 961, 962, 963, 964, 0, 0, 0,
+ 0, 0, 0, 0, 965, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 966, 967, 968, 969, 0, 0, 0, 0, 0,
+ 0, 0, 970, 971, 0, 972, 0, 0, 0, 0,
+ 0, 0, 973, 974, 0, 0, 975, 976, 977, 978,
+ 0, 979, 176, 0, 980, 981, 0, 0, 0, 0,
+ 0, 0, 0, 982, 0, 0, 983, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 0, 0, 0, 984, 985, 986, 0, 987, 0,
+ 0, 0, 0, 0, 0, 0, 988, 989, 990, 178,
+ 0, 0, 0, 0, 0, 991, 0, 0, 179, 0,
+ 0, 0, 0, 0, 992, 0, 0, 993, 0, 0,
+ 0, 0, 0, 0, 0, 0, 994, 0, 995, 0,
+ 996, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 997, 998, 0, 999, 0, 0,
+ 0, 1000, 180, 0, 0, 0, 1001, 0, 0, 181,
+ 1002, 0, 1003, 1004, 1005, 1006, 0, 0, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 1007, 1008, 1009, 0, 1010, 0, 0,
+ 0, 0, 0, 0, 1011, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1012, 0, 0, 0, 0,
+ 0, 0, 0, 1013, 1014, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1015, 0, 0, 0, 0, 0, 0, 1016,
+ 1017, 0, 1018, 1019, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1020, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1021, 1022, 1023, 0, 0, 0,
+ 0, 0, 1024, 1025, 0, 0, 0, 0, 0, 0,
+ 0, 0, 185, 186, 187, 188, 189, 190, 191, 192,
+ 193, 1026, 1027, 1028, 1029, 195, 196, 197, 1030, 199,
+ 200, 201, 202, 203, 204, 1031, 206, 207, 208, 209,
+ 210, 211, 212, 1032, 214, 215, 0, 216, 217, 218,
+ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
+ 1033, 230, 231, 232, 233, 234, 235, 236, 237, 238,
+ 239, 240, 241, 1034, 243, 1035, 1036, 1037, 0, 247,
+ 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
+ 258, 259, 1038, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 1039, 1040, 274, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 0, 318, 319, 320, 321, 322, 323,
+ 1041, 325, 326, 327, 328, 329, 330, 331, 0, 332,
+ 333, 334, 1042, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 1043, 1044, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 1045, 403, 404, 405, 406, 407, 1046, 409, 410, 411,
+ 412, 413, 414, 415, 416, 1047, 1048, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 437, 438, 439, 1049,
+ 441, 442, 443, 444, 445, 446, 447, 1050, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 459, 1051,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 1052, 505, 506, 507, 508, 509, 510,
+ 1053, 512, 513, 514, 515, 516, 517, 1054, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 1055, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 1056, 1057, 1058,
+ 1059, 571, 572, 573, 574, 1060, 1061, 577, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 2150,
+ 590, 1063, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 1064, 604, 1065, 606, 607, 608, 0,
+ 609, 610, 611, 1066, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1067, 1068, 0, 0, 949, 0, 1069, 0,
+ 0, 950, 951, 1070, 0, 0, 0, 1071, 1072, 0,
+ 0, 1073, 952, 953, 0, 954, 955, 956, 957, 958,
+ 959, 960, 961, 962, 963, 964, 0, 0, 0, 0,
+ 0, 0, 0, 965, 0, 0, 0, 0, 0, 0,
+ 2370, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 966, 967, 968, 969, 0, 0, 0, 0, 0, 0,
+ 0, 970, 971, 0, 972, 0, 0, 0, 0, 0,
+ 0, 973, 974, 0, 0, 975, 976, 977, 978, 0,
+ 979, 176, 0, 980, 981, 0, 0, 0, 0, 0,
+ 0, 0, 982, 0, 0, 983, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 984, 985, 986, 0, 987, 0, 0,
+ 0, 0, 0, 0, 0, 988, 989, 990, 178, 0,
+ 0, 0, 0, 0, 991, 0, 0, 179, 0, 0,
+ 0, 0, 0, 992, 0, 0, 993, 0, 0, 0,
+ 0, 0, 0, 0, 0, 994, 0, 995, 0, 996,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 997, 998, 0, 999, 0, 0, 0,
+ 1000, 180, 0, 0, 0, 1001, 0, 0, 181, 0,
+ 0, 1003, 1004, 1005, 1006, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 1007, 1008, 1009, 0, 1010, 0, 0, 0,
+ 0, 0, 0, 1011, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1012, 0, 0, 0, 0, 0,
+ 0, 0, 1013, 1014, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1015, 0, 0, 0, 0, 0, 0, 1016, 1017,
+ 0, 1018, 1019, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1020, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1021, 1022, 1023, 0, 0, 0, 0,
+ 0, 1024, 1025, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 1026, 1027, 1028, 1029, 195, 196, 197, 1030, 199, 200,
+ 201, 202, 203, 2371, 1031, 206, 207, 208, 209, 210,
+ 211, 212, 1032, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 1033,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 1034, 243, 1035, 1036, 1037, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 1038, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 1039, 1040, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 321, 322, 323, 1041,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 1042, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 1043, 1044, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 1045,
+ 403, 404, 405, 406, 407, 1046, 409, 410, 411, 412,
+ 413, 414, 415, 416, 1047, 1048, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 1049, 441,
+ 442, 443, 444, 445, 446, 447, 1050, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 1051, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 1052, 505, 506, 507, 508, 509, 510, 1053,
+ 512, 513, 514, 515, 516, 517, 1054, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 1055, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 1056, 1057, 1058, 1059,
+ 571, 572, 573, 574, 1060, 1061, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 1062, 590,
+ 1063, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 1064, 604, 1065, 606, 607, 608, 0, 609,
+ 610, 611, 1066, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1067, 1068, 0, 0, 949, 0, 1069, 0, 0,
+ 950, 951, 1070, 0, 0, 0, 1071, 1072, 0, 0,
+ 1073, 952, 953, 0, 954, 955, 956, 957, 958, 959,
+ 960, 961, 962, 963, 964, 0, 0, 0, 0, 0,
+ 0, 0, 965, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 966,
+ 967, 968, 969, 0, 0, 0, 0, 0, 0, 0,
+ 970, 971, 0, 972, 0, 0, 0, 0, 0, 0,
+ 973, 974, 0, 0, 975, 976, 977, 978, 0, 979,
+ 176, 0, 980, 981, 0, 0, 0, 0, 0, 0,
+ 0, 982, 0, 0, 983, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 177, 0,
+ 0, 0, 984, 985, 986, 0, 987, 0, 0, 0,
+ 0, 0, 0, 0, 988, 989, 990, 178, 0, 0,
+ 0, 0, 0, 991, 0, 0, 179, 0, 0, 0,
+ 0, 0, 992, 0, 0, 3758, 0, 0, 0, 0,
+ 0, 0, 0, 0, 994, 0, 995, 0, 996, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 997, 998, 0, 999, 0, 0, 0, 1000,
+ 180, 0, 0, 0, 1001, 0, 0, 181, 1002, 0,
+ 1003, 1004, 1005, 1006, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 183, 1007, 1008, 1009, 0, 1010, 0, 0, 0, 0,
+ 0, 0, 1011, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1012, 0, 0, 0, 0, 0, 0,
+ 0, 1013, 1014, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1015, 0, 0, 0, 0, 0, 0, 1016, 1017, 0,
+ 1018, 1019, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1020, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1021, 1022, 1023, 0, 0, 0, 0, 0,
+ 1024, 1025, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 186, 187, 188, 189, 190, 191, 192, 193, 1026,
+ 1027, 1028, 1029, 195, 196, 197, 1030, 199, 200, 201,
+ 202, 203, 204, 1031, 206, 207, 208, 209, 210, 211,
+ 212, 1032, 214, 215, 0, 216, 217, 218, 219, 220,
+ 221, 222, 223, 224, 225, 226, 227, 228, 1033, 230,
+ 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
+ 241, 1034, 243, 1035, 1036, 1037, 0, 247, 248, 249,
+ 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
+ 1038, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 1039, 1040, 274, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 300, 301, 302, 303, 0, 0, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 0, 318, 319, 320, 321, 322, 323, 1041, 325,
+ 326, 327, 328, 329, 330, 331, 0, 332, 333, 334,
+ 1042, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 1043, 1044, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 1045, 403,
+ 404, 405, 406, 407, 1046, 409, 410, 411, 412, 413,
+ 414, 415, 416, 1047, 1048, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 0,
+ 433, 434, 435, 436, 437, 438, 439, 1049, 441, 442,
+ 443, 444, 445, 446, 447, 1050, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, 459, 1051, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 1052, 505, 506, 507, 508, 509, 510, 1053, 512,
+ 513, 514, 515, 516, 517, 1054, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 1055, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 1056, 1057, 1058, 1059, 571,
+ 572, 573, 574, 1060, 1061, 577, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 1062, 590, 1063,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 1064, 604, 1065, 606, 607, 608, 0, 609, 610,
+ 611, 1066, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1067, 1068, 0, 0, 949, 0, 1069, 0, 0, 950,
+ 951, 1070, 0, 0, 0, 1071, 1072, 0, 0, 1073,
+ 952, 953, 0, 954, 955, 956, 957, 958, 959, 960,
+ 961, 962, 963, 964, 0, 0, 0, 0, 0, 0,
+ 0, 965, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 966, 967,
+ 968, 969, 0, 0, 0, 0, 0, 0, 0, 970,
+ 971, 0, 972, 0, 0, 0, 0, 0, 0, 973,
+ 974, 0, 0, 975, 976, 977, 978, 0, 979, 176,
+ 0, 980, 981, 0, 0, 0, 0, 0, 0, 0,
+ 982, 0, 0, 983, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 984, 985, 986, 0, 987, 0, 0, 0, 0,
+ 0, 0, 0, 988, 989, 990, 178, 0, 0, 0,
+ 0, 0, 991, 0, 0, 179, 0, 0, 0, 0,
+ 0, 992, 0, 0, 3773, 0, 0, 0, 0, 0,
+ 0, 0, 0, 994, 0, 995, 0, 996, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 997, 998, 0, 999, 0, 0, 0, 1000, 180,
+ 0, 0, 0, 1001, 0, 0, 181, 1002, 0, 1003,
+ 1004, 1005, 1006, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 1007, 1008, 1009, 0, 1010, 0, 0, 0, 0, 0,
+ 0, 1011, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1012, 0, 0, 0, 0, 0, 0, 0,
+ 1013, 1014, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1015,
+ 0, 0, 0, 0, 0, 0, 1016, 1017, 0, 1018,
+ 1019, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1020, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1021, 1022, 1023, 0, 0, 0, 0, 0, 1024,
+ 1025, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 1026, 1027,
+ 1028, 1029, 195, 196, 197, 1030, 199, 200, 201, 202,
+ 203, 204, 1031, 206, 207, 208, 209, 210, 211, 212,
+ 1032, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 1033, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 1034, 243, 1035, 1036, 1037, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 1038,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 1039, 1040, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 321, 322, 323, 1041, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 1042,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 1043, 1044, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 1045, 403, 404,
+ 405, 406, 407, 1046, 409, 410, 411, 412, 413, 414,
+ 415, 416, 1047, 1048, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 1049, 441, 442, 443,
+ 444, 445, 446, 447, 1050, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 1051, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 1052, 505, 506, 507, 508, 509, 510, 1053, 512, 513,
+ 514, 515, 516, 517, 1054, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 1055, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 1056, 1057, 1058, 1059, 571, 572,
+ 573, 574, 1060, 1061, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 1062, 590, 1063, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 1064, 604, 1065, 606, 607, 608, 0, 609, 610, 611,
+ 1066, 0, 0, 0, 0, 0, 0, 0, 0, 1067,
+ 1068, 0, 0, 949, 0, 1069, 0, 0, 950, 951,
+ 1070, 0, 0, 0, 1071, 1072, 0, 0, 1073, 952,
+ 953, 0, 954, 955, 956, 957, 958, 959, 960, 961,
+ 962, 963, 964, 0, 0, 0, 0, 0, 0, 0,
+ 965, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 966, 967, 968,
+ 969, 0, 0, 0, 0, 0, 0, 0, 970, 971,
+ 0, 972, 0, 0, 0, 0, 0, 0, 973, 974,
+ 0, 0, 975, 976, 977, 978, 0, 979, 176, 0,
+ 980, 981, 0, 0, 0, 0, 0, 0, 0, 982,
+ 0, 0, 983, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 177, 0, 0, 0,
+ 984, 985, 986, 0, 987, 0, 0, 0, 0, 0,
+ 0, 0, 988, 989, 990, 178, 0, 0, 0, 0,
+ 0, 991, 0, 0, 179, 0, 0, 0, 0, 0,
+ 992, 0, 0, 993, 0, 0, 0, 0, 0, 0,
+ 0, 0, 994, 0, 995, 0, 996, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 997, 998, 6048, 999, 0, 0, 0, 1000, 180, 0,
+ 0, 0, 1001, 0, 0, 181, 0, 0, 1003, 1004,
+ 1005, 1006, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 1007,
+ 1008, 1009, 0, 1010, 0, 0, 0, 0, 0, 0,
+ 1011, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1012, 0, 0, 0, 0, 0, 0, 0, 1013,
+ 1014, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1015, 0,
+ 0, 0, 0, 0, 0, 1016, 1017, 0, 1018, 1019,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1020, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1021, 1022, 1023, 0, 0, 0, 0, 0, 1024, 1025,
+ 0, 0, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 1026, 1027, 1028,
+ 1029, 195, 196, 197, 1030, 199, 200, 201, 202, 203,
+ 204, 1031, 206, 207, 208, 209, 210, 211, 212, 1032,
+ 214, 215, 0, 216, 217, 218, 219, 220, 221, 222,
+ 223, 224, 225, 226, 227, 228, 1033, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 1034,
+ 243, 1035, 1036, 1037, 0, 247, 248, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 1038, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 1039, 1040, 274, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ 301, 302, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, 317, 0,
+ 318, 319, 320, 321, 322, 323, 1041, 325, 326, 327,
+ 328, 329, 330, 331, 0, 332, 333, 334, 1042, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 1043, 1044, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 1045, 403, 404, 405,
+ 406, 407, 1046, 409, 410, 411, 412, 413, 414, 415,
+ 416, 1047, 1048, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 437, 438, 439, 1049, 441, 442, 443, 444,
+ 445, 446, 447, 1050, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, 459, 1051, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 1052,
+ 505, 506, 507, 508, 509, 510, 1053, 512, 513, 514,
+ 515, 516, 517, 1054, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 1055, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 1056, 1057, 1058, 1059, 571, 572, 573,
+ 574, 1060, 1061, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 1062, 590, 1063, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 1064,
+ 604, 1065, 606, 607, 608, 0, 609, 610, 611, 1066,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1067, 1068,
+ 0, 0, 949, 0, 1069, 0, 0, 950, 951, 1070,
+ 0, 0, 0, 1071, 1072, 0, 0, 1073, 952, 953,
+ 0, 954, 955, 956, 957, 958, 959, 960, 961, 962,
+ 963, 964, 0, 0, 0, 0, 0, 0, 0, 965,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 966, 967, 968, 969,
+ 0, 0, 0, 0, 0, 0, 0, 970, 971, 0,
+ 972, 0, 0, 0, 0, 0, 0, 973, 974, 0,
+ 0, 975, 976, 977, 978, 0, 979, 176, 0, 980,
+ 981, 0, 0, 0, 0, 0, 0, 0, 982, 0,
+ 0, 983, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 984,
+ 985, 986, 0, 987, 0, 0, 0, 0, 0, 0,
+ 0, 988, 989, 990, 178, 0, 0, 0, 0, 0,
+ 991, 0, 0, 179, 0, 0, 0, 0, 0, 992,
+ 0, 0, 1561, 0, 0, 0, 0, 0, 0, 0,
+ 0, 994, 0, 995, 0, 996, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 997,
+ 998, 0, 999, 0, 0, 0, 1000, 180, 0, 0,
+ 0, 1001, 0, 0, 181, 0, 0, 1003, 1004, 1005,
+ 1006, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 1007, 1008,
+ 1009, 0, 1010, 0, 0, 0, 0, 0, 0, 1011,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1012, 0, 0, 0, 0, 0, 0, 0, 1013, 1014,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1015, 0, 0,
+ 0, 0, 0, 0, 1016, 1017, 0, 1018, 1019, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1020,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1021,
+ 1022, 1023, 0, 0, 0, 0, 0, 1024, 1025, 0,
+ 0, 0, 0, 0, 0, 0, 0, 185, 186, 187,
+ 188, 189, 190, 191, 192, 193, 1026, 1027, 1028, 1029,
+ 195, 196, 197, 1030, 199, 200, 201, 202, 203, 204,
+ 1031, 206, 207, 208, 209, 210, 211, 212, 1032, 214,
+ 215, 0, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 1033, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 1034, 243,
+ 1035, 1036, 1037, 0, 247, 248, 249, 250, 251, 252,
+ 253, 254, 255, 256, 257, 258, 259, 1038, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 1039,
+ 1040, 274, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
+ 302, 303, 0, 0, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, 317, 0, 318,
+ 319, 320, 321, 322, 323, 1041, 325, 326, 327, 328,
+ 329, 330, 331, 0, 332, 333, 334, 1042, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 1043,
+ 1044, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 1045, 403, 404, 405, 406,
+ 407, 1046, 409, 410, 411, 412, 413, 414, 415, 416,
+ 1047, 1048, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 437, 438, 439, 1049, 441, 442, 443, 444, 445,
+ 446, 447, 1050, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 1051, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 1052, 505,
+ 506, 507, 508, 509, 510, 1053, 512, 513, 514, 515,
+ 516, 517, 1054, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 1055, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 1056, 1057, 1058, 1059, 571, 572, 573, 574,
+ 1060, 1061, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 1062, 590, 1063, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 1064, 604,
+ 1065, 606, 607, 608, 0, 609, 610, 611, 1066, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1562, 1563, 0,
+ 0, 949, 0, 1069, 0, 0, 950, 951, 1070, 0,
+ 0, 0, 1071, 1072, 0, 0, 1073, 952, 953, 0,
+ 954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
+ 964, 0, 0, 0, 0, 0, 0, 0, 965, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 966, 967, 968, 969, 0,
+ 0, 0, 0, 0, 0, 0, 970, 971, 0, 972,
+ 0, 0, 0, 0, 0, 0, 973, 974, 0, 0,
+ 975, 976, 977, 978, 0, 979, 176, 0, 980, 981,
+ 0, 0, 0, 0, 0, 0, 0, 982, 0, 0,
+ 983, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 177, 0, 0, 0, 984, 985,
+ 986, 0, 987, 0, 0, 0, 0, 0, 0, 0,
+ 988, 989, 990, 178, 0, 0, 0, 0, 0, 991,
+ 0, 0, 179, 0, 0, 0, 0, 0, 992, 0,
+ 0, 1675, 0, 0, 0, 0, 0, 0, 0, 0,
+ 994, 0, 995, 0, 996, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 997, 998,
+ 0, 999, 0, 0, 0, 1000, 180, 0, 0, 0,
+ 1001, 0, 0, 181, 0, 0, 1003, 1004, 1005, 1006,
+ 0, 0, 0, 0, 0, 182, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 183, 1007, 1008, 1009,
+ 0, 1010, 0, 0, 0, 0, 0, 0, 1011, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1012,
+ 0, 0, 0, 0, 0, 0, 0, 1013, 1014, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1015, 0, 0, 0,
+ 0, 0, 0, 1016, 1017, 0, 1018, 1019, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1020, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1021, 1022,
+ 1023, 0, 0, 0, 0, 0, 1024, 1025, 0, 0,
+ 0, 0, 0, 0, 0, 0, 185, 186, 187, 188,
+ 189, 190, 191, 192, 193, 1026, 1027, 1028, 1029, 195,
+ 196, 197, 1030, 199, 200, 201, 202, 203, 204, 1031,
+ 206, 207, 208, 209, 210, 211, 212, 1032, 214, 215,
+ 0, 216, 217, 218, 219, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 1033, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 1034, 243, 1035,
+ 1036, 1037, 0, 247, 248, 249, 250, 251, 252, 253,
+ 254, 255, 256, 257, 258, 259, 1038, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 1039, 1040,
+ 274, 275, 0, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
+ 303, 0, 0, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, 317, 0, 318, 319,
+ 320, 321, 322, 323, 1041, 325, 326, 327, 328, 329,
+ 330, 331, 0, 332, 333, 334, 1042, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, 352, 353, 354, 355, 356, 1043, 1044,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
+ 0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 1045, 403, 404, 405, 406, 407,
+ 1046, 409, 410, 411, 412, 413, 414, 415, 416, 1047,
+ 1048, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 0, 433, 434, 435, 436,
+ 437, 438, 439, 1049, 441, 442, 443, 444, 445, 446,
+ 447, 1050, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, 459, 1051, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 1052, 505, 506,
+ 507, 508, 509, 510, 1053, 512, 513, 514, 515, 516,
+ 517, 1054, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, 532, 533, 534, 535, 0,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 1055, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 1056, 1057, 1058, 1059, 571, 572, 573, 574, 1060,
+ 1061, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 1062, 590, 1063, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 1064, 604, 1065,
+ 606, 607, 608, 0, 609, 610, 611, 1066, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1562, 1563, 0, 0,
+ 949, 0, 1069, 0, 0, 950, 951, 1070, 0, 0,
+ 0, 1071, 1072, 0, 0, 1073, 952, 953, 0, 954,
+ 955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
+ 0, 0, 0, 0, 0, 0, 0, 965, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 966, 967, 968, 969, 0, 0,
+ 0, 0, 0, 0, 0, 970, 971, 0, 972, 0,
+ 0, 0, 0, 0, 0, 973, 974, 0, 0, 975,
+ 976, 977, 978, 0, 979, 176, 0, 980, 981, 0,
+ 0, 0, 0, 0, 0, 0, 982, 0, 0, 983,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 984, 985, 986,
+ 0, 987, 0, 0, 0, 0, 0, 0, 0, 988,
+ 989, 990, 178, 0, 0, 0, 0, 0, 991, 0,
+ 0, 179, 0, 0, 0, 0, 0, 992, 0, 0,
+ 1677, 0, 0, 0, 0, 0, 0, 0, 0, 994,
+ 0, 995, 0, 996, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 997, 998, 0,
+ 999, 0, 0, 0, 1000, 180, 0, 0, 0, 1001,
+ 0, 0, 181, 0, 0, 1003, 1004, 1005, 1006, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 1007, 1008, 1009, 0,
+ 1010, 0, 0, 0, 0, 0, 0, 1011, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1012, 0,
+ 0, 0, 0, 0, 0, 0, 1013, 1014, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1015, 0, 0, 0, 0,
+ 0, 0, 1016, 1017, 0, 1018, 1019, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1020, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1021, 1022, 1023,
+ 0, 0, 0, 0, 0, 1024, 1025, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 1026, 1027, 1028, 1029, 195, 196,
+ 197, 1030, 199, 200, 201, 202, 203, 204, 1031, 206,
+ 207, 208, 209, 210, 211, 212, 1032, 214, 215, 0,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 1033, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 1034, 243, 1035, 1036,
+ 1037, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 1038, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 1039, 1040, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 1041, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 1042, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 1043, 1044, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 1045, 403, 404, 405, 406, 407, 1046,
+ 409, 410, 411, 412, 413, 414, 415, 416, 1047, 1048,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 1049, 441, 442, 443, 444, 445, 446, 447,
+ 1050, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 1051, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 1052, 505, 506, 507,
+ 508, 509, 510, 1053, 512, 513, 514, 515, 516, 517,
+ 1054, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 1055, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 1056, 1057, 1058, 1059, 571, 572, 573, 574, 1060, 1061,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 1062, 590, 1063, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 1064, 604, 1065, 606,
+ 607, 608, 0, 609, 610, 611, 1066, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1562, 1563, 0, 0, 949,
+ 0, 1069, 0, 0, 950, 951, 1070, 0, 0, 0,
+ 1071, 1072, 0, 0, 1073, 952, 953, 0, 954, 955,
+ 956, 957, 958, 959, 960, 961, 962, 963, 964, 0,
+ 0, 0, 0, 0, 0, 0, 965, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 966, 967, 968, 969, 0, 0, 0,
+ 0, 0, 0, 0, 970, 971, 0, 972, 0, 0,
+ 0, 0, 0, 0, 973, 974, 0, 0, 975, 976,
+ 977, 978, 0, 979, 176, 0, 980, 981, 0, 0,
+ 0, 0, 0, 0, 0, 982, 0, 0, 983, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 177, 0, 0, 0, 984, 985, 986, 0,
+ 987, 0, 0, 0, 0, 0, 0, 0, 988, 989,
+ 990, 178, 0, 0, 0, 0, 0, 991, 0, 0,
+ 179, 0, 0, 0, 0, 0, 992, 0, 0, 993,
+ 0, 0, 0, 0, 0, 0, 0, 0, 994, 0,
+ 995, 0, 996, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 997, 998, 0, 999,
+ 0, 0, 0, 1000, 180, 0, 0, 0, 1001, 0,
+ 0, 181, 0, 0, 1003, 1004, 1005, 1006, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 1007, 1008, 1009, 0, 1010,
+ 0, 0, 0, 0, 0, 0, 1011, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1012, 0, 0,
+ 0, 0, 0, 0, 0, 1013, 1014, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1015, 0, 0, 0, 0, 0,
+ 0, 1016, 1017, 0, 1018, 1019, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1020, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1021, 1022, 1023, 0,
+ 0, 0, 0, 0, 1024, 1025, 0, 0, 0, 0,
+ 0, 0, 0, 0, 185, 186, 187, 188, 189, 190,
+ 191, 192, 193, 1026, 1027, 1028, 1029, 195, 196, 197,
+ 1030, 199, 200, 201, 202, 203, 204, 1031, 206, 207,
+ 208, 209, 210, 211, 212, 1032, 214, 215, 0, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 1033, 230, 231, 232, 233, 234, 235, 236,
+ 237, 238, 239, 240, 241, 1034, 243, 1035, 1036, 1037,
+ 0, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 1038, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 1039, 1040, 274, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 0,
+ 0, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 317, 0, 318, 319, 320, 321,
+ 322, 323, 1041, 325, 326, 327, 328, 329, 330, 331,
+ 0, 332, 333, 334, 1042, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 355, 356, 1043, 1044, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 1045, 403, 404, 405, 406, 407, 1046, 409,
+ 410, 411, 412, 413, 414, 415, 416, 1047, 1048, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 437, 438,
+ 439, 1049, 441, 442, 443, 444, 445, 446, 447, 1050,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ 459, 1051, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 1052, 505, 506, 507, 508,
+ 509, 510, 1053, 512, 513, 514, 515, 516, 517, 1054,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 1055, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 1056,
+ 1057, 1058, 1059, 571, 572, 573, 574, 1060, 1061, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 1062, 590, 1063, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 1064, 604, 1065, 606, 607,
+ 608, 0, 609, 610, 611, 1066, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1067, 1068, 0, 0, 949, 0,
+ 1069, 0, 0, 950, 951, 1070, 0, 0, 0, 1071,
+ 1072, 0, 0, 1073, 952, 953, 0, 954, 955, 956,
+ 957, 958, 959, 960, 961, 962, 963, 964, 0, 0,
+ 0, 0, 0, 0, 0, 965, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 966, 967, 968, 969, 0, 0, 0, 0,
+ 0, 0, 0, 970, 971, 0, 972, 0, 0, 0,
+ 0, 0, 0, 973, 974, 0, 0, 975, 976, 977,
+ 978, 0, 979, 176, 0, 980, 981, 0, 0, 0,
+ 0, 0, 0, 0, 982, 0, 0, 983, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 177, 0, 0, 0, 984, 985, 986, 0, 987,
+ 0, 0, 0, 0, 0, 0, 0, 988, 989, 990,
+ 178, 0, 0, 0, 0, 0, 991, 0, 0, 179,
+ 0, 0, 0, 0, 0, 992, 0, 0, 2391, 0,
+ 0, 0, 0, 0, 0, 0, 0, 994, 0, 995,
+ 0, 996, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 997, 998, 0, 999, 0,
+ 0, 0, 1000, 180, 0, 0, 0, 1001, 0, 0,
+ 181, 0, 0, 1003, 1004, 1005, 1006, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 1007, 1008, 1009, 0, 1010, 0,
+ 0, 0, 0, 0, 0, 1011, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1012, 0, 0, 0,
+ 0, 0, 0, 0, 1013, 1014, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1015, 0, 0, 0, 0, 0, 0,
+ 1016, 1017, 0, 1018, 1019, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1020, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1021, 1022, 1023, 0, 0,
+ 0, 0, 0, 1024, 1025, 0, 0, 0, 0, 0,
+ 0, 0, 0, 185, 186, 187, 188, 189, 190, 191,
+ 192, 193, 1026, 1027, 1028, 1029, 195, 196, 197, 1030,
+ 199, 200, 201, 202, 203, 204, 1031, 206, 207, 208,
+ 209, 210, 211, 212, 1032, 214, 215, 0, 216, 217,
+ 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
+ 228, 1033, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 1034, 243, 1035, 1036, 1037, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 1038, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 1039, 1040, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 0, 318, 319, 320, 321, 322,
+ 323, 1041, 325, 326, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 1042, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 1043, 1044, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 1045, 403, 404, 405, 406, 407, 1046, 409, 410,
+ 411, 412, 413, 414, 415, 416, 1047, 1048, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 0, 433, 434, 435, 436, 437, 438, 439,
+ 1049, 441, 442, 443, 444, 445, 446, 447, 1050, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 1051, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 1052, 505, 506, 507, 508, 509,
+ 510, 1053, 512, 513, 514, 515, 516, 517, 1054, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 1055,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 1056, 1057,
+ 1058, 1059, 571, 572, 573, 574, 1060, 1061, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 1062, 590, 1063, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 1064, 604, 1065, 606, 607, 608,
+ 0, 609, 610, 611, 1066, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1067, 1068, 0, 0, 949, 0, 1069,
+ 0, 0, 950, 951, 1070, 0, 0, 0, 1071, 1072,
+ 0, 0, 1073, 952, 953, 0, 954, 955, 956, 957,
+ 958, 959, 960, 961, 962, 963, 964, 0, 0, 0,
+ 0, 0, 0, 0, 965, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 966, 967, 968, 969, 0, 0, 0, 0, 0,
+ 0, 0, 970, 971, 0, 972, 0, 0, 0, 0,
+ 0, 0, 973, 974, 0, 0, 975, 976, 977, 978,
+ 0, 979, 176, 0, 980, 981, 0, 0, 0, 0,
+ 0, 0, 0, 982, 0, 0, 983, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 0, 0, 0, 984, 985, 986, 0, 987, 0,
+ 0, 0, 0, 0, 0, 0, 988, 989, 990, 178,
+ 0, 0, 0, 0, 0, 991, 0, 0, 179, 0,
+ 0, 0, 0, 0, 992, 0, 0, 2393, 0, 0,
+ 0, 0, 0, 0, 0, 0, 994, 0, 995, 0,
+ 996, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 997, 998, 0, 999, 0, 0,
+ 0, 1000, 180, 0, 0, 0, 1001, 0, 0, 181,
+ 0, 0, 1003, 1004, 1005, 1006, 0, 0, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 1007, 1008, 1009, 0, 1010, 0, 0,
+ 0, 0, 0, 0, 1011, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1012, 0, 0, 0, 0,
+ 0, 0, 0, 1013, 1014, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1015, 0, 0, 0, 0, 0, 0, 1016,
+ 1017, 0, 1018, 1019, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1020, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1021, 1022, 1023, 0, 0, 0,
+ 0, 0, 1024, 1025, 0, 0, 0, 0, 0, 0,
+ 0, 0, 185, 186, 187, 188, 189, 190, 191, 192,
+ 193, 1026, 1027, 1028, 1029, 195, 196, 197, 1030, 199,
+ 200, 201, 202, 203, 204, 1031, 206, 207, 208, 209,
+ 210, 211, 212, 1032, 214, 215, 0, 216, 217, 218,
+ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
+ 1033, 230, 231, 232, 233, 234, 235, 236, 237, 238,
+ 239, 240, 241, 1034, 243, 1035, 1036, 1037, 0, 247,
+ 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
+ 258, 259, 1038, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 1039, 1040, 274, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 0, 318, 319, 320, 321, 322, 323,
+ 1041, 325, 326, 327, 328, 329, 330, 331, 0, 332,
+ 333, 334, 1042, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 1043, 1044, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 1045, 403, 404, 405, 406, 407, 1046, 409, 410, 411,
+ 412, 413, 414, 415, 416, 1047, 1048, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 437, 438, 439, 1049,
+ 441, 442, 443, 444, 445, 446, 447, 1050, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 459, 1051,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 1052, 505, 506, 507, 508, 509, 510,
+ 1053, 512, 513, 514, 515, 516, 517, 1054, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 1055, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 1056, 1057, 1058,
+ 1059, 571, 572, 573, 574, 1060, 1061, 577, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 1062,
+ 590, 1063, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 1064, 604, 1065, 606, 607, 608, 0,
+ 609, 610, 611, 1066, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1067, 1068, 0, 0, 949, 0, 1069, 0,
+ 0, 950, 951, 1070, 0, 0, 0, 1071, 1072, 0,
+ 0, 1073, 5920, 5921, 0, 954, 955, 956, 957, 958,
+ 959, 960, 961, 962, 963, 964, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 967, 968, 969, 0, 0, 0, 0, 0, 0,
+ 0, 970, 971, 0, 972, 0, 0, 0, 0, 0,
+ 0, 973, 974, 0, 0, 975, 976, 977, 978, 0,
+ 979, 176, 0, 980, 981, 0, 0, 0, 0, 0,
+ 0, 0, 982, 0, 0, 983, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 984, 985, 986, 0, 987, 0, 0,
+ 0, 0, 0, 0, 0, 988, 989, 990, 178, 0,
+ 0, 0, 0, 0, 991, 0, 0, 179, 0, 0,
+ 0, 0, 0, 992, 0, 0, 1561, 0, 0, 0,
+ 0, 0, 0, 0, 0, 994, 0, 995, 0, 996,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 997, 998, 0, 999, 0, 0, 0,
+ 1000, 180, 0, 0, 0, 1001, 0, 0, 181, 0,
+ 0, 1003, 1004, 1005, 1006, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 1007, 1008, 1009, 0, 1010, 0, 0, 0,
+ 0, 0, 0, 1011, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1012, 0, 0, 0, 0, 0,
+ 0, 0, 1013, 1014, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1015, 0, 0, 0, 0, 0, 0, 1016, 1017,
+ 0, 1018, 1019, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1020, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1021, 1022, 1023, 0, 0, 0, 0,
+ 0, 1024, 1025, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 1026, 1027, 1028, 1029, 195, 196, 197, 1030, 199, 200,
+ 201, 202, 203, 204, 1031, 206, 207, 208, 209, 210,
+ 211, 212, 1032, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 1033,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 1034, 243, 1035, 1036, 1037, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 1038, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 1039, 1040, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 321, 322, 323, 1041,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 1042, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 1043, 1044, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 1045,
+ 403, 404, 405, 406, 407, 1046, 409, 410, 411, 412,
+ 413, 414, 415, 416, 1047, 1048, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 1049, 441,
+ 442, 443, 444, 445, 446, 447, 1050, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 1051, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 1052, 505, 506, 507, 508, 509, 510, 1053,
+ 512, 513, 514, 515, 516, 517, 1054, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 1055, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 1056, 1057, 1058, 1059,
+ 571, 572, 573, 574, 1060, 1061, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 1062, 590,
+ 1063, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 1064, 604, 1065, 606, 607, 608, 0, 609,
+ 610, 611, 1066, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5922, 5923, 0, 0, 949, 0, 0, 0, 0,
+ 1599, 0, 5924, 0, 0, 0, 0, 1072, 0, 0,
+ 1073, 1554, 1555, 0, 954, 955, 956, 957, 958, 959,
+ 960, 961, 962, 963, 964, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 176, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 177, 0,
+ 0, 0, 0, 0, 986, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 178, 0, 0,
+ 0, 0, 0, 0, 0, 0, 179, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 180, 0, 0, 0, 0, 0, 0, 181, 0, 0,
+ 0, 0, 0, 1006, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 183, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 184, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1020, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
+ 0, 0, 0, 195, 196, 197, 198, 199, 200, 201,
+ 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
+ 212, 213, 214, 215, 0, 216, 217, 218, 219, 220,
+ 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
+ 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
+ 241, 242, 243, 244, 245, 246, 0, 247, 248, 249,
+ 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 2427, 273, 274, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 300, 301, 302, 303, 0, 0, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 0, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ 414, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 0,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ 443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 2428, 568, 569, 2429, 571,
+ 572, 573, 574, 575, 576, 577, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 6200, 609, 610,
+ 611, 612, 2347, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 174, 175, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1073,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 176, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 178,
+ 0, 0, 0, 0, 0, 0, 0, 0, 179, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 180, 0, 0, 0, 0, 0, 0, 181,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 184, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 185, 186, 187, 188, 189, 190, 191, 192,
+ 193, 194, 0, 0, 0, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
+ 210, 211, 212, 213, 214, 215, 0, 216, 217, 218,
+ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
+ 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
+ 239, 240, 241, 242, 243, 244, 245, 246, 0, 247,
+ 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
+ 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 272, 273, 274, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 0, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 0, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, 443, 444, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, 577, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 6200,
+ 609, 610, 611, 612, 2347, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 174, 175, 0, 0, 0,
+ 0, 0, 0, 0, 6201, 0, 0, 0, 0, 0,
+ 0, 2348, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 176, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 177, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 178, 0, 0, 0, 0, 0, 0, 0, 0,
+ 179, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 180, 0, 0, 0, 0, 0,
+ 0, 181, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 184, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 185, 186, 187, 188, 189, 190,
+ 191, 192, 193, 194, 0, 0, 0, 195, 196, 197,
+ 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
+ 208, 209, 210, 211, 212, 213, 214, 215, 0, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 0, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 0,
+ 0, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 317, 0, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 0, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, 414, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, 443, 444, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 1599, 609, 610, 611, 612, 0, 0, 0, 0,
+ 0, 0, 1554, 1555, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2348, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 178, 0,
+ 0, 0, 0, 0, 0, 0, 0, 179, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 180, 0, 0, 0, 0, 0, 0, 181, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 194, 0, 0, 0, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 1599, 609,
+ 610, 611, 612, 0, 0, 0, 0, 0, 0, 1554,
+ 1555, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1600, 0, 0, 0, 0, 0, 0, 0,
+ 1073, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 176, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 177, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 178, 0, 0, 0, 0,
+ 0, 0, 0, 0, 179, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 180, 0,
+ 0, 0, 0, 0, 0, 181, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 194, 0, 0,
+ 0, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
+ 214, 215, 0, 216, 217, 218, 219, 220, 221, 222,
+ 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
+ 243, 244, 245, 246, 0, 247, 248, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, 273, 274, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ 301, 302, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, 317, 0,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 0, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 2347, 609, 610, 611, 612,
+ 0, 0, 0, 0, 0, 0, 174, 175, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1073, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 176, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 178, 0, 0, 0, 0, 0, 0, 0,
+ 0, 179, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 180, 0, 0, 0, 0,
+ 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 194, 0, 0, 0, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 0,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 0, 609, 610, 611, 612, 174, 175, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 2348, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 4821, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 177, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 745, 0, 0,
+ 0, 0, 0, 178, 0, 0, 0, 0, 0, 0,
+ 0, 0, 179, 3155, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3156, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 180, 0, 0, 0,
+ 0, 0, 0, 181, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 182, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 183, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 747, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 184, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 185, 186, 187, 188,
+ 189, 190, 191, 192, 193, 194, 0, 0, 0, 195,
+ 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
+ 0, 216, 217, 218, 219, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
+ 245, 246, 0, 247, 248, 249, 250, 251, 252, 253,
+ 254, 255, 256, 257, 258, 259, 260, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
+ 274, 275, 0, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
+ 303, 0, 0, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, 317, 0, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 0, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
+ 0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 0, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
+ 447, 448, 4822, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, 532, 533, 534, 535, 0,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 0, 609, 610, 611, 612, 174, 175,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 4823, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1336, 0, 0, 0, 0, 0,
+ 0, 0, 0, 179, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 180, 0, 0,
+ 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 32, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 39, 0, 0, 0, 0, 0,
+ 0, 0, 0, 41, 0, 0, 0, 185, 186, 187,
+ 188, 189, 190, 191, 192, 193, 194, 0, 0, 0,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
+ 215, 0, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
+ 244, 245, 246, 0, 247, 248, 249, 250, 251, 252,
+ 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ 273, 274, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
+ 302, 303, 0, 0, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, 317, 0, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 0, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 0, 609, 610, 611, 612, 174,
+ 175, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1337, 0,
+ 0, 0, 0, 0, 0, 0, 776, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 176, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1335, 0, 0, 0, 0, 177, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1336, 0, 0, 0, 0,
+ 0, 0, 0, 0, 179, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 180, 0,
+ 0, 0, 0, 0, 0, 181, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 194, 0, 0,
+ 0, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
+ 214, 215, 0, 216, 217, 218, 219, 220, 221, 222,
+ 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
+ 243, 244, 245, 246, 0, 247, 248, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, 273, 274, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ 301, 302, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, 317, 0,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 0, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 0, 609, 610, 611, 612,
+ 174, 175, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1337,
+ 0, 0, 0, 0, 1338, 0, 0, 776, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1336, 0, 0, 0,
+ 0, 0, 0, 0, 0, 179, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
+ 0, 0, 0, 0, 0, 0, 181, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 194, 0,
+ 0, 0, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 213, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 242, 243, 244, 245, 246, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, 273, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
+ 444, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 0, 609, 610, 611,
+ 612, 174, 175, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1337, 0, 0, 0, 0, 1338, 0, 0, 776, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 176, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 177, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1336, 0, 0,
+ 0, 0, 0, 0, 0, 0, 179, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 180, 0, 0, 0, 0, 0, 0, 181, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 183, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 184, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
+ 0, 0, 0, 195, 196, 197, 198, 199, 200, 201,
+ 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
+ 212, 213, 214, 215, 0, 216, 217, 218, 219, 220,
+ 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
+ 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
+ 241, 242, 243, 244, 245, 246, 0, 247, 248, 249,
+ 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 272, 273, 274, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 300, 301, 302, 303, 0, 0, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 0, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ 414, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 0,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ 443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, 577, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 0, 609, 610,
+ 611, 612, 174, 175, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1337, 0, 0, 0, 0, 0, 0, 0, 776,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 178, 0,
+ 0, 0, 0, 0, 0, 0, 0, 179, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 180, 0, 0, 0, 0, 0, 0, 181, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 194, 0, 0, 0, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 0, 609,
+ 610, 611, 612, 174, 175, 0, 0, 0, 0, 0,
+ 0, 0, 0, 2801, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 776, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 176, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 178,
+ 0, 0, 0, 0, 0, 0, 0, 0, 179, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 180, 0, 0, 0, 0, 0, 0, 181,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 184, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 185, 186, 187, 188, 189, 190, 191, 192,
+ 193, 194, 0, 0, 0, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
+ 210, 211, 212, 213, 214, 215, 0, 216, 217, 218,
+ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
+ 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
+ 239, 240, 241, 242, 243, 244, 245, 246, 0, 247,
+ 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
+ 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 272, 273, 274, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 0, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 0, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, 443, 444, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, 577, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 0,
+ 609, 610, 611, 612, 174, 175, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 4981, 0, 0, 0, 0, 0, 0,
+ 0, 4823, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 176, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 178, 0, 0, 0, 0, 0, 5290, 0, 0, 179,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 180, 0, 0, 0, 0, 0, 0,
+ 181, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 184, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 185, 186, 187, 188, 189, 190, 191,
+ 192, 193, 194, 0, 0, 0, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
+ 209, 210, 211, 212, 213, 214, 215, 0, 216, 217,
+ 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
+ 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 242, 243, 244, 245, 246, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 273, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 0, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, 414, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 0, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, 443, 444, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 0, 609, 610, 611, 612, 174, 175, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4823, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 176, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 177, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 178, 0, 0, 0, 0, 0, 0, 0, 0,
+ 179, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 180, 0, 0, 0, 0, 0,
+ 0, 181, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 184, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 185, 186, 187, 188, 189, 190,
+ 191, 192, 193, 194, 0, 0, 0, 195, 196, 197,
+ 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
+ 208, 209, 210, 211, 212, 213, 214, 215, 0, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 0, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 0,
+ 0, 304, 305, 306, 773, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 317, 0, 774, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 0, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, 414, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, 443, 444, 445, 775, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 0, 609, 610, 611, 612, 174, 175, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 776, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 176, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 178, 0, 0, 0, 0, 0, 0, 0,
+ 0, 179, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 180, 0, 0, 0, 0,
+ 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 194, 0, 0, 0, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 0,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 0, 609, 610, 611, 612, 174, 175, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 776, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 177, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 178, 0, 0, 0, 0, 0, 0,
+ 0, 0, 179, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 180, 0, 0, 0,
+ 0, 0, 0, 181, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 182, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 183, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 184, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 185, 186, 187, 188,
+ 189, 190, 191, 192, 193, 194, 0, 0, 0, 195,
+ 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
+ 0, 216, 217, 218, 219, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
+ 245, 246, 0, 247, 248, 249, 250, 251, 252, 253,
+ 254, 255, 256, 257, 258, 259, 260, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
+ 274, 275, 0, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
+ 303, 0, 0, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, 317, 0, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 0, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
+ 0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 0, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, 532, 533, 534, 535, 0,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 0, 609, 610, 611, 612, 174, 175,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 4823, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 902, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 0,
+ 0, 0, 903, 0, 0, 0, 14, 0, 0, 904,
+ 0, 0, 0, 0, 178, 0, 0, 0, 0, 0,
+ 16, 0, 0, 905, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 906, 0, 0, 0,
+ 0, 0, 0, 0, 907, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 21, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 180, 0, 0,
+ 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 29, 0, 0, 0, 0, 908, 909, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 40, 0, 0, 0, 0, 185, 186, 187,
+ 910, 189, 0, 191, 192, 193, 194, 0, 0, 0,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 0, 206, 207, 208, 209, 210, 211, 212, 213, 0,
+ 911, 0, 0, 217, 218, 219, 220, 221, 0, 0,
+ 224, 225, 226, 227, 228, 0, 0, 0, 232, 233,
+ 234, 235, 236, 912, 238, 239, 240, 241, 0, 0,
+ 0, 0, 0, 0, 247, 0, 249, 0, 251, 252,
+ 0, 254, 255, 256, 257, 258, 259, 0, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ 273, 0, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 0, 284, 285, 286, 287, 0, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 0, 0,
+ 0, 303, 0, 913, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 0, 0, 0, 0, 0,
+ 319, 320, 914, 322, 323, 324, 0, 326, 327, 0,
+ 329, 330, 0, 0, 332, 0, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 0, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 0, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 0, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 915, 0, 0, 440, 0, 442, 443, 0, 445,
+ 446, 447, 448, 0, 450, 451, 452, 453, 0, 0,
+ 0, 0, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 0, 485,
+ 0, 487, 488, 489, 0, 491, 492, 0, 494, 495,
+ 496, 497, 498, 499, 0, 501, 502, 503, 504, 505,
+ 506, 507, 0, 509, 510, 511, 0, 513, 514, 515,
+ 516, 0, 518, 519, 0, 0, 522, 523, 0, 0,
+ 526, 527, 528, 0, 530, 0, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 0, 541, 542, 0, 544,
+ 0, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 0, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 0, 577, 578, 0, 580, 581, 582, 583, 0,
+ 0, 586, 587, 0, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 0,
+ 0, 606, 607, 0, 0, 609, 0, 611, 612, 174,
+ 175, 793, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 698, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 5590, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1412, 0, 0, 176, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 177, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 178, 0, 0, 0, 0,
+ 0, 0, 0, 0, 179, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 180, 0,
+ 0, 0, 0, 0, 0, 181, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 194, 0, 0,
+ 0, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
+ 214, 215, 0, 216, 217, 218, 219, 220, 221, 222,
+ 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
+ 243, 244, 245, 246, 0, 247, 248, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, 273, 274, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ 301, 302, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, 317, 0,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 0, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 0, 533, 534,
+ 535, 0, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 0, 609, 610, 611, 612,
+ 174, 175, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1670,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 178, 0, 0, 0,
+ 0, 0, 0, 0, 0, 179, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
+ 0, 0, 0, 0, 0, 0, 181, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 194, 0,
+ 0, 0, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 213, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 242, 243, 244, 245, 246, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, 273, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
+ 444, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 1162, 609, 610, 611,
+ 612, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 174, 175, 0, 0, 0, 0, 0, 0,
+ 2402, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1163, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1164, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 178, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1165, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 180, 0, 0, 0, 0, 0, 0, 181, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 1166, 189, 190, 191, 192, 193,
+ 194, 0, 0, 0, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 1167,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 1168, 322, 323, 324,
+ 325, 1169, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 1170,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 1171,
+ 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 1172, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 1173, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 1174, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 1175, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 1176, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 1177, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 1178, 605, 606, 607, 608, 1162, 609,
+ 610, 611, 612, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 174, 175, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1163, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 176, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1164, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 178, 0, 0, 0, 0, 0, 0, 0, 0, 1165,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 180, 0, 0, 0, 0, 0, 0,
+ 181, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 184, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 185, 186, 187, 1166, 189, 190, 191,
+ 192, 193, 194, 0, 0, 0, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
+ 209, 210, 211, 212, 213, 214, 215, 0, 216, 217,
+ 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
+ 228, 1167, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 242, 243, 244, 245, 246, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 273, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 0, 318, 319, 320, 1168, 322,
+ 323, 324, 325, 1169, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 1170, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 1171, 413, 414, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 1172, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, 443, 444, 445, 446, 447, 1173, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 1174,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 1175, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 1178, 605, 606, 607, 608,
+ 1749, 609, 610, 611, 612, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 174, 175, 793, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 698, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 176, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 178, 0, 0, 0, 0, 0, 0, 0,
+ 0, 179, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 180, 0, 0, 0, 0,
+ 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 194, 0, 0, 0, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 0,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 1990, 609, 610, 611, 612, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 174, 175,
+ 793, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 698, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 178, 0, 0, 0, 0, 0,
+ 0, 0, 0, 179, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 180, 0, 0,
+ 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 185, 186, 187,
+ 188, 189, 190, 191, 192, 193, 194, 0, 0, 0,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
+ 215, 0, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
+ 244, 245, 246, 0, 247, 248, 249, 250, 251, 252,
+ 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ 273, 274, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
+ 302, 303, 0, 0, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, 317, 0, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 0, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 2188, 609, 610, 611, 612, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 174, 175, 793, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 698, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 178, 0, 0, 0,
+ 0, 0, 0, 0, 0, 179, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
+ 0, 0, 0, 0, 0, 0, 181, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 194, 0,
+ 0, 0, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 213, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 242, 243, 244, 245, 246, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, 273, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
+ 444, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 1899, 609, 610, 611,
+ 612, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1554, 1555, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1900, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 178, 0,
+ 0, 0, 0, 0, 0, 0, 0, 179, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 180, 0, 0, 0, 0, 0, 0, 181, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 194, 0, 0, 0, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 1899, 609,
+ 610, 611, 612, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1554, 1555, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 176, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 178, 0, 0, 0, 0, 0, 0, 0, 0, 179,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 180, 0, 0, 0, 0, 0, 0,
+ 181, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 184, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 185, 186, 187, 188, 189, 190, 191,
+ 192, 193, 194, 0, 0, 0, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
+ 209, 210, 211, 212, 213, 214, 215, 0, 216, 217,
+ 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
+ 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 242, 243, 244, 245, 246, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 273, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 0, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, 414, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 0, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, 443, 444, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 0, 609, 610, 611, 612, 2004, 951, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 1554, 1555, 0, 0,
+ 0, 0, 0, 0, 0, 2005, 0, 2006, 0, 2007,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 176, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 178, 0, 0, 0, 0, 0, 0, 0,
+ 0, 179, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 180, 0, 0, 0, 0,
+ 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 2008, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 194, 0, 0, 0, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 0,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 0, 609, 610, 611, 612, 2004, 951, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1554, 1555,
+ 0, 0, 0, 0, 0, 0, 0, 2005, 0, 2006,
+ 0, 2007, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 178, 0, 0, 0, 0, 0,
+ 0, 0, 0, 179, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 180, 0, 0,
+ 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 2679, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 185, 186, 187,
+ 188, 189, 190, 191, 192, 193, 194, 0, 0, 0,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
+ 215, 0, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
+ 244, 245, 246, 0, 247, 248, 249, 250, 251, 252,
+ 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ 273, 274, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
+ 302, 303, 0, 0, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, 317, 0, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 0, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 2680, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 0, 609, 610, 611, 612, 2004,
+ 951, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1554, 1555, 0, 0, 0, 0, 0, 0, 0, 2005,
+ 0, 2006, 0, 2007, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 178, 0, 0, 0,
+ 0, 0, 0, 0, 0, 179, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
+ 0, 0, 0, 0, 0, 0, 181, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 4100, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 194, 0,
+ 0, 0, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 213, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 242, 243, 244, 245, 246, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, 273, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
+ 444, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 0, 609, 610, 611,
+ 612, 2004, 951, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1554, 1555, 0, 0, 0, 0, 0, 0,
+ 0, 2005, 0, 2006, 0, 2007, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 178, 0,
+ 0, 0, 0, 0, 0, 0, 0, 179, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 180, 0, 0, 0, 0, 0, 0, 181, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 194, 0, 0, 0, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 0, 609,
+ 610, 611, 612, 1554, 1555, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 176, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 178,
+ 0, 0, 0, 0, 0, 0, 0, 0, 179, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 180, 0, 0, 0, 0, 0, 0, 181,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 184, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 185, 186, 187, 188, 189, 190, 191, 192,
+ 193, 194, 2408, 2409, 2410, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
+ 210, 211, 212, 213, 214, 215, 0, 216, 217, 218,
+ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
+ 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
+ 239, 240, 241, 242, 243, 244, 245, 246, 0, 247,
+ 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
+ 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 272, 273, 274, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 0, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 0, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, 443, 444, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, 577, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 0,
+ 609, 610, 611, 612, 174, 175, 0, 0, 0, 0,
+ 0, 0, 0, 0, 4337, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 176, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 178, 0, 0, 0, 0, 0, 0, 0, 0, 179,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 180, 0, 0, 0, 0, 0, 0,
+ 181, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 184, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 185, 186, 187, 188, 189, 190, 191,
+ 192, 193, 194, 0, 0, 0, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
+ 209, 210, 211, 212, 213, 214, 215, 0, 216, 217,
+ 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
+ 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 242, 243, 244, 245, 246, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 273, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 0, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, 414, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 0, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, 443, 444, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 0, 609, 610, 611, 612, 174, 175, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2782, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 176, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 177, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 178, 0, 0, 0, 0, 0, 0, 0, 0,
+ 179, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 180, 0, 0, 0, 0, 0,
+ 0, 181, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 184, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 185, 186, 187, 188, 189, 190,
+ 191, 192, 193, 194, 0, 0, 0, 195, 196, 197,
+ 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
+ 208, 209, 210, 211, 212, 213, 214, 215, 0, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 0, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 0,
+ 0, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 317, 0, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 0, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, 414, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, 443, 444, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 0, 609, 610, 611, 612, 1554, 1555, 0, 0,
+ 0, 0, 0, 0, 0, 0, 4116, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 176, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 178, 0, 0, 0, 0, 0, 0, 0,
+ 0, 179, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 180, 0, 0, 0, 0,
+ 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 194, 0, 0, 0, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 0,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 0, 609, 610, 611, 612, 174, 175, 0,
+ 0, 0, 0, 0, 0, 0, 0, 5129, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 177, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 178, 0, 0, 0, 0, 0, 0,
+ 0, 0, 179, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 180, 0, 0, 0,
+ 0, 0, 0, 181, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 182, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 183, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 184, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 185, 186, 187, 188,
+ 189, 190, 191, 192, 193, 194, 0, 0, 0, 195,
+ 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
+ 0, 216, 217, 218, 219, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
+ 245, 246, 0, 247, 248, 249, 250, 251, 252, 253,
+ 254, 255, 256, 257, 258, 259, 260, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
+ 274, 275, 0, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
+ 303, 0, 0, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, 317, 0, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 0, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
+ 0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 0, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, 532, 533, 534, 535, 0,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 0, 609, 610, 611, 612, 174, 175,
+ 0, 0, 0, 0, 0, 0, 0, 0, 5430, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 178, 0, 0, 0, 0, 0,
+ 0, 0, 0, 179, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 180, 0, 0,
+ 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 185, 186, 187,
+ 188, 189, 190, 191, 192, 193, 194, 0, 0, 0,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
+ 215, 0, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
+ 244, 245, 246, 0, 247, 248, 249, 250, 251, 252,
+ 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ 273, 274, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
+ 302, 303, 0, 0, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, 317, 0, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 0, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 0, 609, 610, 611, 612, 174,
+ 175, 0, 0, 0, 0, 0, 2838, 0, 0, 5755,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 693, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 176, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 177, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 178, 0, 0, 0, 0,
+ 0, 0, 0, 0, 179, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 180, 0,
+ 0, 0, 0, 0, 0, 181, 694, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 182, 0, 5384,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 5385, 0, 665, 0, 5386,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 194, 0, 0,
+ 0, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
+ 214, 215, 0, 216, 217, 218, 219, 220, 221, 222,
+ 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
+ 243, 244, 245, 246, 0, 247, 248, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, 273, 274, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ 301, 302, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, 317, 0,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 0, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 0, 609, 610, 611, 612,
+ 174, 175, 793, 0, 0, 0, 0, 0, 0, 2839,
+ 0, 0, 698, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 1401, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1754, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1755, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 178, 0, 0, 0,
+ 0, 0, 0, 0, 0, 179, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
+ 0, 0, 0, 0, 0, 0, 181, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 194, 0,
+ 0, 0, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 213, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 242, 243, 244, 245, 246, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, 273, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
+ 444, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 0, 609, 610, 611,
+ 612, 174, 175, 793, 1402, 0, 0, 0, 0, 0,
+ 0, 0, 0, 698, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1401, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 176, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 177, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 178, 0, 0,
+ 0, 0, 0, 0, 0, 0, 179, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 180, 0, 0, 0, 0, 0, 0, 181, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 183, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 184, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
+ 0, 0, 0, 195, 196, 197, 198, 199, 200, 201,
+ 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
+ 212, 213, 214, 215, 0, 216, 217, 218, 219, 220,
+ 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
+ 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
+ 241, 242, 243, 244, 245, 246, 0, 247, 248, 249,
+ 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 272, 273, 274, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 300, 301, 302, 303, 0, 0, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 0, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ 414, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 0,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ 443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, 577, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 0, 609, 610,
+ 611, 612, 174, 175, 0, 1402, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3451, 3452,
+ 3453, 3454, 3455, 3456, 3457, 3458, 3459, 3460, 3461, 4130,
+ 4131, 3463, 3464, 3465, 4132, 4133, 3466, 3467, 3468, 3469,
+ 3470, 3471, 3472, 3473, 4134, 3475, 3476, 0, 3477, 3478,
+ 3479, 3480, 3481, 3482, 3483, 3484, 3485, 3486, 3487, 0,
+ 3488, 176, 3489, 3490, 3491, 3492, 3493, 3494, 3495, 4135,
+ 3497, 3498, 3499, 3500, 3501, 3502, 3503, 3504, 3505, 3506,
+ 3507, 3508, 4136, 3510, 3511, 3512, 3513, 3514, 3515, 177,
+ 3516, 3517, 3518, 3519, 3520, 3521, 3522, 3523, 4137, 3525,
+ 0, 3526, 3527, 3528, 3529, 3530, 0, 0, 178, 3531,
+ 3532, 3533, 3534, 3535, 3536, 3537, 3538, 5460, 3540, 3541,
+ 3542, 3543, 3544, 3545, 3546, 3547, 4138, 3549, 4139, 3551,
+ 3552, 3553, 3554, 3555, 3556, 3557, 3558, 3559, 3560, 3561,
+ 3562, 3563, 3564, 3565, 3566, 3567, 3568, 4140, 4141, 4142,
+ 3569, 3570, 3571, 3572, 3573, 3574, 3575, 4143, 4144, 4145,
+ 3576, 180, 3577, 3578, 3579, 3580, 3581, 3582, 181, 3583,
+ 3584, 3585, 3586, 3587, 3588, 4146, 3589, 3590, 3591, 3592,
+ 182, 3593, 3594, 3595, 3596, 3597, 3598, 3599, 3600, 3601,
+ 3602, 183, 3603, 3604, 3605, 3606, 3607, 3608, 3609, 3610,
+ 3611, 3612, 3613, 3614, 3615, 3616, 3617, 4147, 3618, 3619,
+ 3620, 3621, 3622, 3623, 3624, 3625, 3626, 3627, 3628, 3629,
+ 3630, 3631, 3632, 3633, 3634, 3635, 3636, 3637, 3638, 3639,
+ 3640, 4148, 3641, 3642, 4149, 3643, 3644, 3645, 3646, 3647,
+ 3648, 3649, 3650, 3651, 3652, 3653, 3654, 3655, 3656, 3657,
+ 3658, 3659, 184, 3660, 3661, 3662, 3663, 4150, 4151, 4152,
+ 3664, 3665, 3666, 3667, 3668, 3669, 3670, 3671, 0, 3673,
+ 3674, 3675, 3676, 3677, 3678, 3679, 3680, 3681, 3682, 4153,
+ 4154, 3684, 3685, 3686, 3687, 3688, 3689, 3690, 3691, 3692,
+ 3693, 185, 186, 187, 0, 189, 190, 191, 192, 193,
+ 194, 3694, 3695, 3696, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 5461, 218, 5462,
+ 5463, 221, 222, 223, 224, 225, 226, 227, 228, 229,
+ 230, 231, 232, 233, 234, 235, 5464, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 5465, 5466, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 5467, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 5468, 315,
+ 316, 317, 0, 318, 319, 320, 3410, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 5469,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 5470, 5471, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 5472, 5473, 432,
+ 3700, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 5474,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 5475, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 5476, 565, 566, 5477, 568, 569, 5478,
+ 571, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 5479, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 3411, 605, 606, 607, 608, 0, 609,
+ 610, 611, 5480, 174, 175, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 3451,
+ 3452, 3453, 3454, 3455, 3456, 3457, 3458, 3459, 3460, 3461,
+ 4130, 4131, 3463, 3464, 3465, 4132, 4133, 3466, 3467, 3468,
+ 3469, 3470, 3471, 3472, 3473, 4134, 3475, 3476, 0, 3477,
+ 3478, 3479, 3480, 3481, 3482, 3483, 3484, 3485, 3486, 3487,
+ 0, 3488, 176, 3489, 3490, 3491, 3492, 3493, 3494, 3495,
+ 4135, 3497, 3498, 3499, 3500, 3501, 3502, 3503, 3504, 3505,
+ 3506, 3507, 3508, 4136, 3510, 3511, 3512, 3513, 3514, 3515,
+ 177, 3516, 3517, 3518, 3519, 3520, 3521, 3522, 3523, 4137,
+ 3525, 0, 3526, 3527, 3528, 3529, 3530, 0, 0, 178,
+ 3531, 3532, 3533, 3534, 3535, 3536, 3537, 3538, 3539, 3540,
+ 3541, 3542, 3543, 3544, 3545, 3546, 3547, 4138, 3549, 4139,
+ 3551, 3552, 3553, 3554, 3555, 3556, 3557, 3558, 3559, 3560,
+ 3561, 3562, 3563, 3564, 3565, 3566, 3567, 3568, 4140, 4141,
+ 4142, 3569, 3570, 3571, 3572, 3573, 3574, 3575, 4143, 4144,
+ 4145, 3576, 180, 3577, 3578, 3579, 3580, 3581, 3582, 181,
+ 3583, 3584, 3585, 3586, 3587, 3588, 4146, 3589, 3590, 3591,
+ 3592, 182, 3593, 3594, 3595, 3596, 3597, 3598, 3599, 3600,
+ 3601, 3602, 183, 3603, 3604, 3605, 3606, 3607, 3608, 3609,
+ 3610, 3611, 3612, 3613, 3614, 3615, 3616, 3617, 4147, 3618,
+ 3619, 3620, 3621, 3622, 3623, 3624, 3625, 3626, 3627, 3628,
+ 3629, 3630, 3631, 3632, 3633, 3634, 3635, 3636, 3637, 3638,
+ 3639, 3640, 4148, 3641, 3642, 4149, 3643, 3644, 3645, 3646,
+ 3647, 3648, 3649, 3650, 3651, 3652, 3653, 3654, 3655, 3656,
+ 3657, 3658, 3659, 184, 3660, 3661, 3662, 3663, 4150, 4151,
+ 4152, 3664, 3665, 3666, 3667, 3668, 3669, 3670, 3671, 0,
+ 3673, 3674, 3675, 3676, 3677, 3678, 3679, 3680, 3681, 3682,
+ 4153, 4154, 3684, 3685, 3686, 3687, 3688, 3689, 3690, 3691,
+ 3692, 3693, 185, 186, 187, 0, 189, 190, 191, 192,
+ 193, 194, 3694, 3695, 3696, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
+ 210, 211, 212, 213, 214, 215, 0, 216, 4155, 218,
+ 4156, 4157, 221, 222, 223, 224, 225, 226, 227, 228,
+ 229, 230, 231, 232, 233, 234, 0, 4158, 237, 238,
+ 239, 240, 241, 242, 243, 244, 245, 246, 0, 247,
+ 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
+ 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 4159, 4160, 273, 274, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 4161, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 4162,
+ 315, 316, 317, 0, 318, 319, 320, 0, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 0, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
+ 4163, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 0, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, 4164, 4165, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 0, 4166, 4167,
+ 432, 3700, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, 443, 444, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 0,
+ 4168, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 4169, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 0, 516, 517, 518, 519, 520,
+ 0, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 4170, 565, 566, 4171, 568, 569,
+ 4172, 571, 572, 573, 574, 575, 576, 4173, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 0, 4174, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 0, 605, 606, 607, 608, 0,
+ 609, 610, 611, 4175, 174, 175, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 3451, 3452, 3453, 3454, 3455, 3456, 3457, 3458, 3459, 3460,
+ 3461, 4130, 4131, 3463, 3464, 3465, 4132, 4133, 3466, 3467,
+ 3468, 3469, 3470, 3471, 3472, 3473, 4134, 3475, 3476, 0,
+ 3477, 3478, 3479, 3480, 3481, 3482, 3483, 3484, 3485, 3486,
+ 3487, 0, 3488, 176, 3489, 3490, 3491, 3492, 3493, 3494,
+ 3495, 4135, 3497, 3498, 3499, 3500, 3501, 3502, 3503, 3504,
+ 3505, 3506, 3507, 3508, 4136, 3510, 3511, 3512, 3513, 3514,
+ 3515, 177, 3516, 3517, 3518, 3519, 3520, 3521, 3522, 3523,
+ 4137, 3525, 0, 3526, 3527, 3528, 3529, 3530, 0, 0,
+ 178, 3531, 3532, 3533, 3534, 3535, 3536, 3537, 3538, 3539,
+ 3540, 3541, 3542, 3543, 3544, 3545, 3546, 3547, 4138, 3549,
+ 4139, 3551, 3552, 3553, 3554, 3555, 3556, 3557, 3558, 3559,
+ 3560, 3561, 3562, 3563, 3564, 3565, 3566, 3567, 3568, 4140,
+ 4141, 4142, 3569, 3570, 3571, 3572, 3573, 3574, 3575, 4143,
+ 4144, 4145, 3576, 180, 3577, 3578, 3579, 3580, 3581, 3582,
+ 181, 3583, 3584, 3585, 3586, 3587, 3588, 4146, 3589, 3590,
+ 3591, 3592, 182, 3593, 3594, 3595, 3596, 3597, 3598, 3599,
+ 3600, 3601, 3602, 183, 3603, 3604, 3605, 3606, 3607, 3608,
+ 3609, 3610, 3611, 3612, 3613, 3614, 3615, 3616, 3617, 4147,
+ 3618, 3619, 3620, 3621, 3622, 3623, 3624, 3625, 3626, 3627,
+ 3628, 3629, 3630, 3631, 3632, 3633, 3634, 3635, 3636, 3637,
+ 3638, 3639, 3640, 4148, 3641, 3642, 4149, 3643, 3644, 3645,
+ 3646, 3647, 3648, 3649, 3650, 3651, 3652, 3653, 3654, 3655,
+ 3656, 3657, 3658, 3659, 184, 3660, 3661, 3662, 3663, 4150,
+ 4151, 4152, 3664, 3665, 3666, 3667, 3668, 3669, 3670, 3671,
+ 0, 3673, 3674, 3675, 3676, 3677, 3678, 3679, 3680, 3681,
+ 3682, 4153, 4154, 3684, 3685, 3686, 3687, 3688, 3689, 3690,
+ 3691, 3692, 3693, 185, 186, 187, 0, 189, 190, 191,
+ 192, 193, 194, 3694, 3695, 3696, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
+ 209, 210, 211, 212, 213, 214, 215, 0, 216, 4155,
+ 218, 4156, 4157, 221, 222, 223, 224, 225, 226, 227,
+ 228, 229, 230, 231, 232, 233, 234, 0, 4158, 237,
+ 238, 239, 240, 241, 242, 243, 244, 245, 246, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 4159, 4160, 273, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 4161, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 4162, 315, 316, 317, 0, 318, 319, 320, 0, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 4163, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 0, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, 4164, 4165, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 0, 4166,
+ 4167, 432, 3700, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, 443, 444, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 0, 4168, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 5504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 0, 516, 517, 518, 519,
+ 520, 0, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 4170, 565, 566, 4171, 568,
+ 569, 4172, 571, 572, 573, 574, 575, 576, 5505, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 0, 4174, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 0, 605, 606, 607, 608,
+ 0, 609, 610, 611, 4175, 174, 175, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 3451, 3452, 3453, 3454, 3455, 3456, 3457, 3458, 3459,
+ 3460, 3461, 4130, 4131, 3463, 3464, 3465, 4132, 4133, 3466,
+ 3467, 3468, 3469, 3470, 3471, 3472, 3473, 4134, 3475, 3476,
+ 0, 3477, 3478, 3479, 3480, 3481, 3482, 3483, 3484, 3485,
+ 3486, 3487, 0, 3488, 176, 3489, 3490, 3491, 3492, 3493,
+ 3494, 3495, 4135, 3497, 3498, 3499, 3500, 3501, 3502, 3503,
+ 3504, 3505, 3506, 3507, 3508, 4136, 3510, 3511, 3512, 3513,
+ 3514, 3515, 177, 3516, 3517, 3518, 3519, 3520, 3521, 3522,
+ 3523, 4137, 3525, 0, 3526, 3527, 3528, 3529, 3530, 0,
+ 0, 178, 3531, 3532, 3533, 3534, 3535, 3536, 3537, 3538,
+ 3539, 3540, 3541, 3542, 3543, 3544, 3545, 3546, 3547, 4138,
+ 3549, 4139, 3551, 3552, 3553, 3554, 3555, 3556, 3557, 3558,
+ 3559, 3560, 3561, 3562, 3563, 3564, 3565, 3566, 3567, 3568,
+ 4140, 4141, 4142, 3569, 3570, 3571, 3572, 3573, 3574, 3575,
+ 4143, 4144, 4145, 3576, 180, 3577, 3578, 3579, 3580, 3581,
+ 3582, 181, 3583, 3584, 3585, 3586, 3587, 3588, 4146, 3589,
+ 3590, 3591, 3592, 182, 3593, 3594, 3595, 3596, 3597, 3598,
+ 3599, 3600, 3601, 3602, 183, 3603, 3604, 3605, 3606, 3607,
+ 3608, 3609, 3610, 3611, 3612, 3613, 3614, 3615, 3616, 3617,
+ 4147, 3618, 3619, 3620, 3621, 3622, 3623, 3624, 3625, 3626,
+ 3627, 3628, 3629, 3630, 3631, 3632, 3633, 3634, 3635, 3636,
+ 3637, 3638, 3639, 3640, 4148, 3641, 3642, 4149, 3643, 3644,
+ 3645, 3646, 3647, 3648, 3649, 3650, 3651, 3652, 3653, 3654,
+ 3655, 3656, 3657, 3658, 3659, 184, 3660, 3661, 3662, 3663,
+ 4150, 4151, 4152, 3664, 3665, 3666, 3667, 3668, 3669, 3670,
+ 3671, 0, 3673, 3674, 3675, 3676, 3677, 3678, 3679, 3680,
+ 3681, 3682, 4153, 4154, 3684, 3685, 3686, 3687, 3688, 3689,
+ 3690, 3691, 3692, 3693, 185, 186, 187, 0, 189, 190,
+ 191, 192, 193, 194, 3694, 3695, 3696, 195, 196, 197,
+ 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
+ 208, 209, 210, 211, 212, 213, 214, 215, 0, 216,
+ 4155, 218, 4156, 4157, 221, 222, 223, 224, 225, 226,
+ 227, 228, 229, 230, 231, 232, 233, 234, 0, 4158,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 0, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 4159, 4160, 273, 274, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 4161, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 0,
+ 0, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 4162, 315, 316, 317, 0, 318, 319, 320, 0,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 0, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, 352, 4163, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 0, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, 4164, 4165, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 0,
+ 4166, 4167, 432, 3700, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, 443, 444, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 0, 4168, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 0, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 0, 516, 517, 518,
+ 519, 520, 0, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 4170, 565, 566, 4171,
+ 568, 569, 4172, 571, 572, 573, 574, 575, 576, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 0, 4174, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 0, 605, 606, 607,
+ 608, 0, 609, 610, 611, 4175, 174, 175, 793, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 698, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 851, 852, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 853, 0, 0,
+ 0, 854, 0, 0, 0, 176, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 855, 0,
+ 0, 0, 0, 0, 0, 0, 0, 856, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 857, 0,
+ 0, 0, 178, 0, 0, 0, 0, 0, 0, 0,
+ 0, 179, 858, 0, 0, 0, 0, 859, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 860, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 180, 0, 0, 0, 0,
+ 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 861,
+ 0, 0, 0, 862, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 863, 0, 0, 0, 864, 865, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 866, 0, 0, 0,
+ 0, 0, 0, 867, 868, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 194, 0, 0, 0, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 0,
+ 869, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 870, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 871, 298, 299, 300, 301, 872, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 873,
+ 874, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 460, 461, 875, 463, 464, 465, 876, 467,
+ 468, 469, 470, 471, 877, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 878, 484, 485, 486, 487,
+ 488, 879, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 880, 521, 522, 523, 881, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 882, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 0, 609, 610, 611, 612, 174, 175, 793,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 698,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 1140, 852, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 853, 0,
+ 0, 0, 854, 0, 0, 0, 176, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 855,
+ 0, 0, 0, 0, 0, 0, 0, 0, 856, 0,
+ 0, 0, 0, 0, 177, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 857,
+ 0, 0, 0, 178, 0, 0, 0, 0, 0, 0,
+ 0, 0, 179, 858, 0, 0, 0, 0, 859, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 860, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 180, 0, 0, 0,
+ 0, 0, 0, 181, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 182, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 183, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 861, 0, 0, 0, 862, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 863, 0, 0, 0, 864, 865, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 184, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 866, 0, 0,
+ 0, 0, 0, 0, 867, 868, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 185, 186, 187, 188,
+ 189, 190, 191, 192, 193, 194, 0, 0, 0, 195,
+ 196, 1141, 198, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
+ 0, 869, 217, 218, 219, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
+ 245, 246, 0, 247, 248, 249, 250, 251, 252, 253,
+ 254, 870, 256, 257, 258, 259, 260, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
+ 274, 275, 0, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 871, 298, 299, 300, 301, 872,
+ 303, 0, 0, 304, 305, 306, 307, 308, 309, 310,
+ 873, 874, 313, 314, 315, 316, 317, 0, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 0, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
+ 0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 0, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, 459, 460, 461, 875, 463, 464, 465, 1142,
+ 467, 468, 469, 470, 471, 877, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 878, 484, 485, 486,
+ 487, 488, 879, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 880, 521, 522, 523, 881, 525, 526,
+ 527, 528, 529, 530, 531, 532, 533, 534, 535, 0,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 882, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 0, 609, 610, 611, 612, 174, 175,
+ 0, 0, 0, 2210, 2211, 5227, 0, 5228, 0, 5229,
+ 698, 5230, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 5231, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 178, 0, 0, 0, 0, 0,
+ 0, 0, 0, 179, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 180, 0, 0,
+ 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 185, 186, 187,
+ 188, 189, 190, 191, 192, 193, 194, 0, 0, 0,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
+ 215, 0, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
+ 244, 245, 246, 0, 247, 248, 249, 250, 251, 252,
+ 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ 273, 274, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
+ 302, 303, 0, 0, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, 317, 0, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 0, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 0, 609, 610, 611, 612, 174,
+ 175, 793, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 698, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 854, 1412, 0, 0, 176, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 177, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 178, 0, 0, 0, 0,
+ 0, 0, 0, 0, 179, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 180, 0,
+ 0, 0, 0, 0, 0, 181, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 194, 0, 0,
+ 0, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
+ 214, 215, 0, 216, 217, 218, 219, 220, 221, 222,
+ 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
+ 243, 244, 245, 246, 0, 247, 248, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, 273, 274, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ 301, 302, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, 317, 0,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 0, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 0, 609, 610, 611, 612,
+ 174, 175, 793, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 698, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 1769, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1770, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 178, 0, 0, 0,
+ 0, 0, 0, 0, 0, 179, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
+ 0, 0, 0, 0, 0, 0, 181, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 194, 0,
+ 0, 0, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 213, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 242, 243, 244, 245, 246, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, 273, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
+ 444, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 0, 609, 610, 611,
+ 612, 174, 175, 0, 0, 1298, 0, 0, 1299, 1300,
+ 0, 0, 0, 1301, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 176, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 177, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 178, 0, 0,
+ 0, 0, 0, 0, 0, 0, 179, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 180, 0, 0, 0, 0, 0, 0, 181, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 183, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 184, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
+ 0, 0, 0, 195, 196, 197, 198, 199, 200, 201,
+ 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
+ 212, 213, 214, 215, 0, 216, 217, 218, 219, 220,
+ 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
+ 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
+ 241, 242, 243, 244, 245, 246, 0, 247, 248, 249,
+ 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 272, 273, 274, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 300, 301, 302, 303, 0, 0, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 0, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ 414, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 0,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ 443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, 577, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 0, 609, 610,
+ 611, 612, 174, 175, 793, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 698, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1754, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1755, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 178, 0,
+ 0, 0, 0, 0, 0, 0, 0, 179, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 180, 0, 0, 0, 0, 0, 0, 181, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 194, 0, 0, 0, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 0, 609,
+ 610, 611, 612, 174, 175, 793, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 698, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 1412,
+ 0, 0, 176, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 178,
+ 0, 0, 0, 0, 0, 0, 0, 0, 179, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 180, 0, 0, 0, 0, 0, 0, 181,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 184, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 185, 186, 187, 188, 189, 190, 191, 192,
+ 193, 194, 0, 0, 0, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
+ 210, 211, 212, 213, 214, 215, 0, 216, 217, 218,
+ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
+ 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
+ 239, 240, 241, 242, 243, 244, 245, 246, 0, 247,
+ 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
+ 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 272, 273, 274, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 0, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 0, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, 443, 444, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, 577, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 0,
+ 609, 610, 611, 612, 174, 175, 793, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 698, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 1805, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 176, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 178, 0, 0, 0, 0, 0, 0, 0, 0, 179,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 180, 0, 0, 0, 0, 0, 0,
+ 181, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 184, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 185, 186, 187, 188, 189, 190, 191,
+ 192, 193, 194, 0, 0, 0, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
+ 209, 210, 211, 212, 213, 214, 215, 0, 216, 217,
+ 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
+ 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 242, 243, 244, 245, 246, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 273, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 0, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, 414, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 0, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, 443, 444, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 0, 609, 610, 611, 612, 174, 175, 793, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 698, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 854, 0, 0, 0, 176, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 177, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 178, 0, 0, 0, 0, 0, 0, 0, 0,
+ 179, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 180, 0, 0, 0, 0, 0,
+ 0, 181, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 184, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 185, 186, 187, 188, 189, 190,
+ 191, 192, 193, 194, 0, 0, 0, 195, 196, 197,
+ 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
+ 208, 209, 210, 211, 212, 213, 214, 215, 0, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 0, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 0,
+ 0, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 317, 0, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 0, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, 414, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, 443, 444, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 0, 609, 610, 611, 612, 1554, 1555, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 176, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 178, 0, 0, 0, 0, 0, 0, 0,
+ 0, 179, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 180, 0, 0, 0, 0,
+ 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 194, 2408, 2409, 2410, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 0,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 0, 609, 610, 611, 612, 174, 175, 793,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 698,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 3073, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 177, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 178, 0, 0, 0, 0, 0, 0,
+ 0, 0, 179, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 180, 0, 0, 0,
+ 0, 0, 0, 181, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 182, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 183, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 184, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 185, 186, 187, 188,
+ 189, 190, 191, 192, 193, 194, 0, 0, 0, 195,
+ 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
+ 0, 216, 217, 218, 219, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
+ 245, 246, 0, 247, 248, 249, 250, 251, 252, 253,
+ 254, 255, 256, 257, 258, 259, 260, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
+ 274, 275, 0, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
+ 303, 0, 0, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, 317, 0, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 0, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
+ 0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 0, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, 532, 533, 534, 535, 0,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 0, 609, 610, 611, 612, 174, 175,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 3405, 3406, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 178, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3407, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 180, 0, 0,
+ 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 185, 186, 187,
+ 0, 189, 190, 191, 192, 193, 194, 0, 0, 0,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
+ 215, 0, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
+ 244, 245, 246, 0, 247, 248, 249, 250, 251, 252,
+ 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ 273, 274, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
+ 302, 303, 3408, 3409, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, 317, 0, 318,
+ 319, 320, 3410, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 0, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 3411,
+ 605, 606, 607, 608, 0, 609, 610, 611, 612, 174,
+ 175, 793, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 698, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1754, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 176, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 177, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 178, 0, 0, 0, 0,
+ 0, 0, 0, 0, 179, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 180, 0,
+ 0, 0, 0, 0, 0, 181, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 194, 0, 0,
+ 0, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
+ 214, 215, 0, 216, 217, 218, 219, 220, 221, 222,
+ 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
+ 243, 244, 245, 246, 0, 247, 248, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, 273, 274, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ 301, 302, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, 317, 0,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 0, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 0, 609, 610, 611, 612,
+ 174, 175, 793, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 698, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 5027, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 178, 0, 0, 0,
+ 0, 0, 0, 0, 0, 179, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
+ 0, 0, 0, 0, 0, 0, 181, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 194, 0,
+ 0, 0, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 213, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 242, 243, 244, 245, 246, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, 273, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
+ 444, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 0, 609, 610, 611,
+ 612, 174, 175, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 176, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 177, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 178, 0, 0,
+ 0, 0, 0, 0, 0, 0, 179, 0, 0, 0,
+ 5236, 0, 0, 5237, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 180, 0, 0, 0, 0, 0, 0, 181, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 5238, 0, 0, 0, 0, 0,
+ 183, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 184, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
+ 0, 0, 0, 195, 196, 197, 198, 199, 200, 201,
+ 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
+ 212, 213, 214, 215, 0, 216, 217, 218, 219, 220,
+ 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
+ 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
+ 241, 242, 243, 244, 245, 246, 0, 247, 248, 249,
+ 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 272, 273, 274, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 300, 301, 302, 303, 0, 0, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 0, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ 414, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 0,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ 443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, 577, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 0, 609, 610,
+ 611, 612, 174, 175, 793, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 698, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 5369, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 178, 0,
+ 0, 0, 0, 0, 0, 0, 0, 179, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 180, 0, 0, 0, 0, 0, 0, 181, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 194, 0, 0, 0, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 0, 609,
+ 610, 611, 612, 174, 175, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 176, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 178,
+ 0, 0, 0, 0, 0, 0, 0, 0, 179, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 180, 0, 0, 0, 0, 0, 0, 181,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 664, 0, 0, 0, 0, 0, 0, 0,
+ 0, 665, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 184, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 185, 186, 187, 188, 189, 190, 191, 192,
+ 193, 194, 0, 0, 0, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
+ 210, 211, 212, 213, 214, 215, 0, 216, 217, 218,
+ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
+ 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
+ 239, 240, 241, 242, 243, 244, 245, 246, 0, 247,
+ 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
+ 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 272, 273, 274, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 0, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 0, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, 443, 444, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, 577, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 0,
+ 609, 610, 611, 612, 174, 175, 793, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 698, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 176, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 178, 0, 0, 0, 0, 0, 0, 0, 0, 179,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 180, 0, 0, 0, 0, 0, 0,
+ 181, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 184, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 185, 186, 187, 188, 189, 190, 191,
+ 192, 193, 194, 0, 0, 0, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
+ 209, 210, 211, 212, 213, 214, 215, 0, 216, 217,
+ 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
+ 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 242, 243, 244, 245, 246, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 273, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 0, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, 414, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 0, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, 443, 444, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 0, 609, 610, 611, 612, 174, 175, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 176, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 177, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1526, 0, 0, 0, 0, 0,
+ 0, 178, 1527, 0, 0, 0, 0, 0, 0, 0,
+ 179, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 180, 0, 0, 0, 0, 0,
+ 0, 181, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 184, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 185, 186, 187, 188, 189, 190,
+ 191, 192, 193, 194, 0, 0, 0, 195, 196, 197,
+ 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
+ 208, 209, 210, 211, 212, 213, 214, 215, 0, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 0, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 0,
+ 0, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 317, 0, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 0, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, 414, 415, 416, 1528, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, 443, 444, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 0, 609, 610, 611, 612, 174, 175, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 698, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 4333, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 176, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 178, 0, 0, 0, 0, 0, 0, 0,
+ 0, 179, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 180, 0, 0, 0, 0,
+ 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 194, 0, 0, 0, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 0,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 0, 609, 610, 611, 612, 174, 175, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 177, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 178, 0, 0, 0, 0, 0, 0,
+ 0, 0, 179, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 180, 0, 0, 0,
+ 0, 0, 0, 181, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 182, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 183, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 665, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 184, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 185, 186, 187, 188,
+ 189, 190, 191, 192, 193, 194, 0, 0, 0, 195,
+ 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
+ 0, 216, 217, 218, 219, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
+ 245, 246, 0, 247, 248, 249, 250, 251, 252, 253,
+ 254, 255, 256, 257, 258, 259, 260, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
+ 274, 275, 0, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
+ 303, 0, 0, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, 317, 0, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 0, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
+ 0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 0, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, 532, 533, 534, 535, 0,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 0, 609, 610, 611, 612, 174, 175,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1450, 0, 0,
+ 0, 0, 0, 0, 178, 0, 0, 0, 0, 0,
+ 0, 0, 0, 179, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 180, 0, 0,
+ 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 185, 186, 187,
+ 188, 189, 190, 191, 192, 193, 194, 0, 0, 0,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
+ 215, 0, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
+ 244, 245, 246, 0, 247, 248, 249, 250, 251, 252,
+ 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ 273, 274, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
+ 302, 303, 0, 0, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, 317, 0, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 0, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 0, 609, 610, 611, 612, 1554,
+ 1555, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1556, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 176, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 177, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 178, 0, 0, 0, 0,
+ 0, 0, 0, 0, 179, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 180, 0,
+ 0, 0, 0, 0, 0, 181, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 194, 0, 0,
+ 0, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
+ 214, 215, 0, 216, 217, 218, 219, 220, 221, 222,
+ 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
+ 243, 244, 245, 246, 0, 247, 248, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, 273, 274, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ 301, 302, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, 317, 0,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 0, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 0, 609, 610, 611, 612,
+ 1554, 1555, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 1764, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 178, 0, 0, 0,
+ 0, 0, 0, 0, 0, 179, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
+ 0, 0, 0, 0, 0, 0, 181, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 194, 0,
+ 0, 0, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 213, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 242, 243, 244, 245, 246, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, 273, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
+ 444, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 0, 609, 610, 611,
+ 612, 1554, 1555, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 176, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 2476, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 177, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 178, 0, 0,
+ 0, 0, 0, 0, 0, 0, 179, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 180, 0, 0, 0, 0, 0, 0, 181, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 183, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 184, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
+ 0, 0, 0, 195, 196, 197, 198, 199, 200, 201,
+ 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
+ 212, 213, 214, 215, 0, 216, 217, 218, 219, 220,
+ 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
+ 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
+ 241, 242, 243, 244, 245, 246, 0, 247, 248, 249,
+ 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 272, 273, 274, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 300, 301, 302, 303, 0, 0, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 0, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ 414, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 0,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ 443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 2477,
+ 572, 573, 574, 575, 576, 577, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 0, 609, 610,
+ 611, 612, 174, 175, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 2489, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 178, 0,
+ 0, 0, 0, 0, 0, 0, 0, 179, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 180, 0, 0, 0, 0, 0, 0, 181, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 194, 0, 0, 0, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 0, 609,
+ 610, 611, 612, 174, 175, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 176, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 3148, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 178,
+ 0, 0, 0, 0, 0, 0, 0, 0, 179, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 180, 0, 0, 0, 0, 0, 0, 181,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 184, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 185, 186, 187, 188, 189, 190, 191, 192,
+ 193, 194, 0, 0, 0, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
+ 210, 211, 212, 213, 214, 215, 0, 216, 217, 218,
+ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
+ 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
+ 239, 240, 241, 242, 243, 244, 245, 246, 0, 247,
+ 248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
+ 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 272, 273, 274, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 0, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 0, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, 443, 444, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, 577, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 0,
+ 609, 610, 611, 612, 1554, 1555, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 176, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 2476, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 178, 0, 0, 0, 0, 0, 0, 0, 0, 179,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 180, 0, 0, 0, 0, 0, 0,
+ 181, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 184, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 185, 186, 187, 188, 189, 190, 191,
+ 192, 193, 194, 0, 0, 0, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
+ 209, 210, 211, 212, 213, 214, 215, 0, 216, 217,
+ 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
+ 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 242, 243, 244, 245, 246, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 273, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 0, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, 414, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 0, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, 443, 444, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 0, 609, 610, 611, 612, 174, 175, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 176, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 177, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 178, 0, 0, 0, 0, 0, 0, 0, 0,
+ 179, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 180, 0, 0, 0, 0, 0,
+ 0, 181, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 0, 0, 0, 0, 0,
+ 0, 4382, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 184, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 185, 186, 187, 188, 189, 190,
+ 191, 192, 193, 194, 0, 0, 0, 195, 196, 197,
+ 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
+ 208, 209, 210, 211, 212, 213, 214, 215, 0, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 0, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 0,
+ 0, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 317, 0, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 0, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, 414, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, 443, 444, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 0, 609, 610, 611, 612, 174, 175, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 698, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 176, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 178, 0, 0, 0, 0, 0, 0, 0,
+ 0, 179, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 180, 0, 0, 0, 0,
+ 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 185, 186, 187, 188, 189,
+ 190, 191, 192, 193, 194, 0, 0, 0, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 0,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 0, 609, 610, 611, 612, 174, 175, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 4801, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 177, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 178, 0, 0, 0, 0, 0, 0,
+ 0, 0, 179, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 180, 0, 0, 0,
+ 0, 0, 0, 181, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 182, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 183, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 184, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 185, 186, 187, 188,
+ 189, 190, 191, 192, 193, 194, 0, 0, 0, 195,
+ 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
+ 0, 216, 217, 218, 219, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
+ 245, 246, 0, 247, 248, 249, 250, 251, 252, 253,
+ 254, 255, 256, 257, 258, 259, 260, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
+ 274, 275, 0, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
+ 303, 0, 0, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, 317, 0, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 0, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
+ 0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 0, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, 532, 533, 534, 535, 0,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 0, 609, 610, 611, 612, 174, 175,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 5313, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 178, 0, 0, 0, 0, 0,
+ 0, 0, 0, 179, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 180, 0, 0,
+ 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 185, 186, 187,
+ 188, 189, 190, 191, 192, 193, 194, 0, 0, 0,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
+ 215, 0, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
+ 244, 245, 246, 0, 247, 248, 249, 250, 251, 252,
+ 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ 273, 274, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
+ 302, 303, 0, 0, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 315, 316, 317, 0, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 0, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 0, 609, 610, 611, 612, 174,
+ 175, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 176, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 5323,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 177, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 178, 0, 0, 0, 0,
+ 0, 0, 0, 0, 179, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 180, 0,
+ 0, 0, 0, 0, 0, 181, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 194, 0, 0,
+ 0, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
+ 214, 215, 0, 216, 217, 218, 219, 220, 221, 222,
+ 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
+ 243, 244, 245, 246, 0, 247, 248, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, 273, 274, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ 301, 302, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, 317, 0,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 0, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 0, 609, 610, 611, 612,
+ 174, 175, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 178, 0, 0, 0,
+ 0, 0, 0, 0, 0, 179, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
+ 0, 0, 0, 0, 0, 0, 181, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 0, 0, 0, 0, 0, 0, 5714, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 194, 0,
+ 0, 0, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 213, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 242, 243, 244, 245, 246, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, 273, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
+ 444, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 0, 609, 610, 611,
+ 612, 174, 175, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 176, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 177, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 178, 0, 0,
+ 0, 0, 0, 0, 0, 0, 179, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 180, 0, 0, 0, 0, 0, 0, 181, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 183, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 184, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
+ 0, 0, 0, 195, 196, 197, 198, 199, 200, 201,
+ 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
+ 212, 213, 214, 215, 0, 216, 217, 218, 219, 220,
+ 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
+ 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
+ 241, 242, 243, 244, 245, 246, 0, 247, 248, 249,
+ 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 272, 273, 274, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 300, 301, 302, 303, 0, 0, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 0, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 0, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ 414, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 0,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ 443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, 577, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 0, 609, 610,
+ 611, 612, 174, 175, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 178, 0,
+ 0, 0, 0, 0, 0, 0, 0, 179, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 180, 0, 0, 0, 0, 0, 0, 181, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 194, 0, 0, 0, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 705, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 0, 609,
+ 610, 611, 612, 174, 175, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 176, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 178,
+ 0, 0, 0, 0, 0, 0, 0, 0, 179, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 180, 0, 0, 0, 0, 0, 0, 181,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 184, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 185, 186, 187, 188, 189, 190, 191, 192,
+ 193, 194, 0, 0, 0, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 205, 206, 207, 208, 209,
+ 210, 211, 212, 213, 214, 215, 0, 216, 217, 218,
+ 219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
+ 229, 230, 231, 232, 233, 234, 235, 236, 237, 238,
+ 239, 240, 241, 242, 243, 244, 245, 246, 0, 247,
+ 783, 249, 250, 251, 252, 253, 254, 255, 256, 257,
+ 258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 272, 273, 274, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 0, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 0, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, 443, 444, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 459, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, 577, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 0,
+ 609, 610, 611, 612, 1554, 1555, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 176, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 177, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 178, 0, 0, 0, 0, 0, 0, 0, 0, 179,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 180, 0, 0, 0, 0, 0, 0,
+ 181, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 184, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 185, 186, 187, 188, 189, 190, 191,
+ 192, 193, 194, 0, 0, 0, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 205, 206, 207, 208,
+ 209, 210, 211, 212, 213, 214, 215, 0, 216, 217,
+ 218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
+ 228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
+ 238, 239, 240, 241, 242, 243, 244, 245, 246, 0,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 273, 274, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 300, 301, 302, 303, 0, 0,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 0, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 0,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, 414, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 0, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, 443, 444, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, 577, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 0, 609, 610, 611, 612, 174, 175, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 176, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 177, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 178, 0, 0, 0, 0, 0, 0, 0, 0,
+ 179, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 180, 0, 0, 0, 0, 0,
+ 0, 181, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 184, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 185, 186, 187, 188, 189, 190,
+ 191, 192, 193, 194, 0, 0, 0, 195, 196, 197,
+ 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
+ 208, 209, 210, 211, 212, 213, 214, 215, 0, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 0, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 300, 301, 302, 303, 0,
+ 0, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 315, 316, 317, 0, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 0, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, 414, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, 443, 444, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 1919,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 0, 609, 610, 611, 612, 174, 175, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 176, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 178, 0, 0, 0, 0, 0, 0, 0,
+ 0, 179, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 180, 0, 0, 0, 0,
+ 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2494, 186, 187, 188, 189,
+ 190, 191, 192, 193, 194, 0, 0, 0, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 0,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 0, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 300, 301, 302, 303,
+ 0, 0, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 315, 316, 317, 0, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 0, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 0, 609, 610, 611, 612, 174, 175, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 698,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 3052, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 177, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 178, 0, 0, 0, 0, 0, 0,
+ 0, 0, 3053, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 180, 0, 0, 0,
+ 0, 0, 0, 181, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 182, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 183, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 184, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 185, 186, 187, 3054,
+ 189, 190, 191, 192, 193, 194, 0, 0, 0, 195,
+ 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
+ 0, 216, 217, 218, 219, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
+ 245, 246, 0, 247, 248, 249, 250, 251, 252, 253,
+ 254, 255, 256, 257, 258, 259, 260, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
+ 274, 275, 0, 276, 277, 278, 279, 280, 281, 282,
+ 283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
+ 303, 0, 0, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 315, 316, 317, 0, 318, 319,
+ 320, 3055, 322, 323, 324, 325, 0, 327, 328, 329,
+ 330, 331, 0, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, 352, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 0, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
+ 0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 3056, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, 443, 444, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, 459, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 0,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, 532, 533, 534, 535, 0,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 3057, 605,
+ 606, 607, 608, 0, 609, 610, 611, 612, 174, 175,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 178, 0, 0, 0, 0, 0,
+ 0, 0, 0, 179, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 180, 0, 0,
+ 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 185, 186, 187,
+ 188, 189, 190, 191, 192, 193, 194, 0, 0, 0,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
+ 215, 0, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
+ 244, 245, 246, 0, 247, 248, 249, 250, 251, 252,
+ 253, 254, 255, 256, 257, 258, 259, 260, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ 273, 274, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 283, 284, 285, 286, 287, 288, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 300, 301,
+ 302, 303, 0, 0, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 3175, 314, 315, 316, 317, 0, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 0, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
+ 3176, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, 443, 444, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 0, 609, 610, 611, 612, 174,
+ 175, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 176, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 177, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 178, 0, 0, 0, 0,
+ 0, 0, 0, 0, 179, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 180, 0,
+ 0, 0, 0, 0, 0, 5666, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 194, 0, 0,
+ 0, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
+ 214, 215, 0, 216, 217, 218, 219, 220, 221, 222,
+ 223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
+ 233, 234, 235, 236, 237, 238, 239, 240, 241, 242,
+ 243, 244, 245, 246, 0, 247, 248, 249, 250, 251,
+ 252, 253, 254, 255, 256, 257, 258, 259, 260, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, 273, 274, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 283, 284, 285, 286, 287, 288, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 300,
+ 301, 302, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 315, 316, 317, 0,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 0, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 0, 609, 610, 611, 612,
+ 174, 175, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 178, 0, 0, 0,
+ 0, 0, 0, 0, 0, 2819, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
+ 0, 0, 0, 0, 0, 0, 181, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 185,
+ 186, 187, 2820, 189, 190, 191, 192, 193, 194, 0,
+ 0, 0, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 205, 206, 207, 208, 209, 210, 211, 212,
+ 213, 214, 215, 0, 216, 217, 218, 219, 220, 221,
+ 222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
+ 232, 233, 234, 235, 236, 237, 238, 239, 240, 241,
+ 242, 243, 244, 245, 246, 0, 247, 248, 249, 250,
+ 251, 252, 253, 254, 255, 256, 257, 258, 259, 260,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, 273, 274, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 283, 284, 285, 286, 287, 288, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 300, 301, 302, 303, 0, 0, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
+ 0, 318, 319, 320, 2821, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 0, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, 443,
+ 444, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, 577, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 0, 605, 606, 607, 608, 0, 609, 610, 611,
+ 612, 174, 175, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 698, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 176, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 177, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 178, 0, 0,
+ 0, 0, 0, 0, 0, 0, 3053, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 180, 0, 0, 0, 0, 0, 0, 181, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 183, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 184, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 186, 187, 3054, 189, 190, 191, 192, 193, 194,
+ 0, 0, 0, 195, 196, 197, 198, 199, 200, 201,
+ 202, 203, 204, 205, 206, 207, 208, 209, 210, 211,
+ 212, 213, 214, 215, 0, 216, 217, 218, 219, 220,
+ 221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
+ 231, 232, 233, 234, 235, 236, 237, 238, 239, 240,
+ 241, 242, 243, 244, 245, 246, 0, 247, 248, 249,
+ 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
+ 260, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 272, 273, 274, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 283, 284, 285, 286, 287, 288,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 300, 301, 302, 303, 0, 0, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 0, 318, 319, 320, 3055, 322, 323, 324, 325,
+ 0, 327, 328, 329, 330, 331, 0, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 0, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ 414, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 3056,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ 443, 444, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, 459, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 0, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, 577, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 3057, 605, 606, 607, 608, 0, 609, 610,
+ 611, 612, 174, 175, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 178, 0,
+ 0, 0, 0, 0, 0, 0, 0, 3407, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 180, 0, 0, 0, 0, 0, 0, 181, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 185, 186, 187, 0, 189, 190, 191, 192, 193,
+ 194, 0, 0, 0, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 217, 218, 219,
+ 220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
+ 230, 231, 232, 233, 234, 235, 236, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 0, 318, 319, 320, 3410, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 3411, 605, 606, 607, 608, 0, 609,
+ 610, 611, 612, 174, 175, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 6, 0, 0, 0, 0, 0, 0, 0,
+ 0, 902, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 176, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, -3623, -3623, -3623,
+ 177, 0, 0, 0, 0, 0, 0, 903, 0, 0,
+ 0, 14, 0, 0, 904, 0, 0, 0, 0, 178,
+ 0, 0, 0, 0, 0, 16, 0, 0, 905, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 906, 0, 0, 0, 0, 0, 0, 0, 907,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 21, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 180, 0, 0, 0, 0, 0, 0, 181,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 29, 0, 0, 0, 0,
+ 908, 909, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 184, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 40, 0, 0,
+ 0, 0, 185, 186, 187, 910, 189, 0, 191, 192,
+ 193, 194, 0, 0, 0, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 0, 206, 207, 208, 209,
+ 210, 211, 212, 213, 0, 911, 0, 0, 217, 218,
+ 219, 220, 221, 0, 0, 224, 225, 226, 227, 228,
+ 0, 0, 0, 232, 233, 234, 235, 236, 912, 238,
+ 239, 240, 241, 0, 0, 0, 0, 0, 0, 247,
+ 0, 249, 0, 251, 252, 0, 254, 255, 256, 257,
+ 258, 259, 0, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 272, 273, 0, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 0, 284, 285, 286,
+ 287, -3623, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 0, 0, 0, 303, 0, 913, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 0, 0, 0, 0, 0, 319, 320, 914, 322, 323,
+ 324, 0, 326, 327, 0, 329, 330, 0, 0, 332,
+ 0, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 0, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 0, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 0, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 915, 0, 0, 440,
+ 0, 442, 443, 0, 445, 446, 447, 448, 0, 450,
+ 451, 452, 453, 0, 0, 0, 0, 458, 459, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 0, 485, 0, 487, 488, 489, 0,
+ 491, 492, 0, 494, 495, 496, 497, 498, 499, 0,
+ 501, 502, 503, 504, 505, 506, 507, 0, 509, 510,
+ 511, 0, 513, 514, 515, 516, 0, 518, 519, 0,
+ 0, 522, 523, 0, 0, 526, 527, 528, 0, 530,
+ 0, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 0, 541, 542, 0, 544, 0, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 0, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 0, 577, 578, 0,
+ 580, 581, 582, 583, 174, 175, 586, 587, 0, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 0, 0, 606, 607, 0, 0,
+ 609, 0, 611, 612, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 6, 0, 0, 0, 0, 0, 0,
+ 0, 0, 902, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 176, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, -3624,
+ 0, 177, 0, 0, 0, 0, 0, 0, 903, 0,
+ 0, 0, 14, 0, 0, 904, 0, 0, 0, 0,
+ 178, 0, 0, 0, 0, 0, 16, 0, 0, 905,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 906, 0, 0, 0, 0, 0, 0, 0,
+ 907, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 21, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 180, 0, 0, 0, 0, 0, 0,
+ 181, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 182, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 183, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 29, 0, 0, 0,
+ 0, 908, 909, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 184, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, -3624, 0, 40, 0,
+ 0, 0, 0, 185, 186, 187, 910, 189, 0, 191,
+ 192, 193, 194, 0, 0, 0, 195, 196, 197, 198,
+ 199, 200, 201, 202, 203, 204, 0, 206, 207, 208,
+ 209, 210, 211, 212, 213, 0, 911, 0, 0, 217,
+ 218, 219, 220, 221, 0, 0, 224, 225, 226, 227,
+ 228, 0, 0, 0, 232, 233, 234, 235, 236, 912,
+ 238, 239, 240, 241, 0, 0, 0, 0, 0, 0,
+ 247, 0, 249, 0, 251, 252, 0, 254, 255, 256,
+ 257, 258, 259, 0, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 273, 0, 275, 0,
+ 276, 277, 278, 279, 280, 281, 282, 0, 284, 285,
+ 286, 287, -3624, 289, 290, 291, 292, 293, 294, 295,
+ 296, 297, 298, 299, 0, 0, 0, 303, 0, 913,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 0, 0, 0, 0, 0, 319, 320, 914, 322,
+ 323, 324, 0, 326, 327, 0, 329, 330, 0, 0,
+ 332, 0, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 0, 346, 347, 348, 349, 350, 351,
+ 352, 353, 354, 0, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, 384, 385, 386, 387, 388, 0, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, 414, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 0, 425, 426, 427, 428, 429, 430,
+ 431, 432, 0, 433, 434, 435, 436, 915, 0, 0,
+ 440, 0, 442, 443, 0, 445, 446, 447, 448, 0,
+ 450, 451, 452, 453, 0, 0, 0, 0, 458, 459,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, 474, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 0, 485, 0, 487, 488, 489,
+ 0, 491, 492, 0, 494, 495, 496, 497, 498, 499,
+ 0, 501, 502, 503, 504, 505, 506, 507, 0, 509,
+ 510, 511, 0, 513, 514, 515, 516, 0, 518, 519,
+ 0, 0, 522, 523, 0, 0, 526, 527, 528, 0,
+ 530, 0, 532, 533, 534, 535, 0, 536, 537, 538,
+ 539, 0, 541, 542, 0, 544, 0, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 0, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 0, 577, 578,
+ 0, 580, 581, 582, 583, 174, 175, 586, 587, 0,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 0, 0, 606, 607, 0,
+ 0, 609, 0, 611, 612, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 6, 0, 0, 0, 0, 0,
+ 0, 0, 0, 902, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 176, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 177, 0, 0, 0, 0, 0, 0, 903,
+ 0, 0, 0, 14, 0, 0, 904, 0, 0, 0,
+ 0, 178, 0, 0, 0, 0, 0, 16, 0, 0,
+ 905, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 906, 0, 0, 0, 0, 0, 0,
+ 0, 907, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 21, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 180, 0, 0, 0, 0, 0,
+ 0, 181, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 29, 0, 0,
+ 0, 0, 908, 909, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 184, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 40,
+ 0, 0, 0, 0, 185, 186, 187, 910, 189, 0,
+ 191, 192, 193, 194, 0, 0, 0, 195, 196, 197,
+ 198, 199, 200, 201, 202, 203, 204, 0, 206, 207,
+ 208, 209, 210, 211, 212, 213, 0, 911, 0, 0,
+ 217, 218, 219, 220, 221, 0, 0, 224, 225, 226,
+ 227, 228, 0, 0, 0, 232, 233, 234, 235, 236,
+ 912, 238, 239, 240, 241, 0, 0, 0, 0, 0,
+ 0, 247, 0, 249, 0, 251, 252, 0, 254, 255,
+ 256, 257, 258, 259, 0, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 273, 0, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 0, 284,
+ 285, 286, 287, 1538, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 0, 0, 0, 303, 0,
+ 913, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 0, 0, 0, 0, 0, 319, 320, 914,
+ 322, 323, 324, 0, 326, 327, 0, 329, 330, 0,
+ 0, 332, 0, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 0, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 0, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, 414, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 0, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 915, 0,
+ 0, 440, 0, 442, 443, 0, 445, 446, 447, 448,
+ 0, 450, 451, 452, 453, 0, 0, 0, 0, 458,
+ 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 0, 485, 0, 487, 488,
+ 489, 0, 491, 492, 0, 494, 495, 496, 497, 498,
+ 499, 0, 501, 502, 503, 504, 505, 506, 507, 0,
+ 509, 510, 511, 0, 513, 514, 515, 516, 0, 518,
+ 519, 0, 0, 522, 523, 0, 0, 526, 527, 528,
+ 0, 530, 0, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 0, 541, 542, 0, 544, 0, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 0, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 0, 577,
+ 578, 0, 580, 581, 582, 583, 174, 175, 586, 587,
+ 0, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 0, 0, 606, 607,
+ 0, 0, 609, 0, 611, 612, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 6, 0, 0, 0, 0,
+ 0, 0, 0, 0, 902, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 176, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 177, 0, 0, 0, 0, 0, 0,
+ 903, 0, 0, 0, 14, 0, 0, 904, 0, 0,
+ 0, 0, 178, 0, 0, 0, 0, 0, 16, 0,
+ 0, 905, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 906, 0, 0, 0, 0, 0,
+ 0, 0, 907, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 21, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 180, 0, 0, 0, 0,
+ 0, 0, 181, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 182, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 183, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 29, 0,
+ 0, 0, 0, 908, 909, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 184, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 40, 0, 0, 0, 0, 185, 186, 187, 910, 189,
+ 0, 191, 192, 193, 194, 0, 0, 0, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 0, 206,
+ 207, 208, 209, 210, 211, 212, 213, 0, 911, 0,
+ 0, 217, 218, 219, 220, 221, 0, 0, 224, 225,
+ 226, 227, 228, 0, 0, 0, 232, 233, 234, 235,
+ 236, 912, 238, 239, 240, 241, 0, 0, 0, 0,
+ 0, 0, 247, 0, 249, 0, 251, 252, 0, 254,
+ 255, 256, 257, 258, 259, 0, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 0,
+ 275, 0, 276, 277, 278, 279, 280, 281, 282, 0,
+ 284, 285, 286, 287, 3377, 289, 290, 291, 292, 293,
+ 294, 295, 296, 297, 298, 299, 0, 0, 0, 303,
+ 0, 913, 304, 305, 306, 307, 308, 309, 310, 311,
+ 312, 313, 314, 0, 0, 0, 0, 0, 319, 320,
+ 914, 322, 323, 324, 0, 326, 327, 0, 329, 330,
+ 0, 0, 332, 0, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 0, 346, 347, 348, 349,
+ 350, 351, 352, 353, 354, 0, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, 414, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 0, 425, 426, 427, 428,
+ 429, 430, 431, 432, 0, 433, 434, 435, 436, 915,
+ 0, 0, 440, 0, 442, 443, 0, 445, 446, 447,
+ 448, 0, 450, 451, 452, 453, 0, 0, 0, 0,
+ 458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 0, 485, 0, 487,
+ 488, 489, 0, 491, 492, 0, 494, 495, 496, 497,
+ 498, 499, 0, 501, 502, 503, 504, 505, 506, 507,
+ 0, 509, 510, 511, 0, 513, 514, 515, 516, 0,
+ 518, 519, 0, 0, 522, 523, 0, 0, 526, 527,
+ 528, 0, 530, 0, 532, 533, 534, 535, 0, 536,
+ 537, 538, 539, 0, 541, 542, 0, 544, 0, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 0,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 0,
+ 577, 578, 0, 580, 581, 582, 583, 174, 175, 586,
+ 587, 0, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 0, 0, 606,
+ 607, 0, 0, 609, 0, 611, 612, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 6, 0, 0, 0,
+ 0, 0, 0, 0, 0, 902, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 176, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 177, 0, 0, 0, 0, 0,
+ 0, 903, 0, 0, 0, 14, 0, 0, 904, 0,
+ 0, 0, 0, 178, 0, 0, 0, 0, 0, 16,
+ 0, 0, 905, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 906, 0, 0, 0, 0,
+ 0, 0, 0, 907, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 21, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 180, 0, 0, 0,
+ 0, 0, 0, 181, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 182, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 183, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 29,
+ 0, 0, 0, 0, 908, 909, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 184, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 40, 0, 0, 0, 0, 185, 186, 187, 910,
+ 189, 0, 191, 192, 193, 194, 0, 0, 0, 195,
+ 196, 197, 198, 199, 200, 201, 202, 203, 204, 0,
+ 206, 207, 208, 209, 210, 211, 212, 213, 0, 911,
+ 0, 0, 217, 218, 219, 220, 221, 0, 0, 224,
+ 225, 226, 227, 228, 0, 0, 0, 232, 233, 234,
+ 235, 236, 912, 238, 239, 240, 241, 0, 0, 0,
+ 0, 0, 0, 247, 0, 249, 0, 251, 252, 0,
+ 254, 255, 256, 257, 258, 259, 0, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
+ 0, 275, 0, 276, 277, 278, 279, 280, 281, 282,
+ 0, 284, 285, 286, 287, 3431, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 0, 0, 0,
+ 303, 0, 913, 304, 305, 306, 307, 308, 309, 310,
+ 311, 312, 313, 314, 0, 0, 0, 0, 0, 319,
+ 320, 914, 322, 323, 324, 0, 326, 327, 0, 329,
+ 330, 0, 0, 332, 0, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 0, 346, 347, 348,
+ 349, 350, 351, 352, 353, 354, 0, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
+ 0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 0, 425, 426, 427,
+ 428, 429, 430, 431, 432, 0, 433, 434, 435, 436,
+ 915, 0, 0, 440, 0, 442, 443, 0, 445, 446,
+ 447, 448, 0, 450, 451, 452, 453, 0, 0, 0,
+ 0, 458, 459, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, 474, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 0, 485, 0,
+ 487, 488, 489, 0, 491, 492, 0, 494, 495, 496,
+ 497, 498, 499, 0, 501, 502, 503, 504, 505, 506,
+ 507, 0, 509, 510, 511, 0, 513, 514, 515, 516,
+ 0, 518, 519, 0, 0, 522, 523, 0, 0, 526,
+ 527, 528, 0, 530, 0, 532, 533, 534, 535, 0,
+ 536, 537, 538, 539, 0, 541, 542, 0, 544, 0,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 0, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 0, 577, 578, 0, 580, 581, 582, 583, 174, 175,
+ 586, 587, 0, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 0, 0,
+ 606, 607, 0, 0, 609, 0, 611, 612, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 6, 0, 0,
+ 0, 0, 0, 0, 0, 0, 902, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 176, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 177, 0, 0, 0, 0,
+ 0, 0, 903, 0, 0, 0, 14, 0, 0, 904,
+ 0, 0, 0, 0, 178, 0, 0, 0, 0, 0,
+ 16, 0, 0, 905, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 906, 0, 0, 0,
+ 0, 0, 0, 0, 907, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 21, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 180, 0, 0,
+ 0, 0, 0, 0, 181, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 182, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 183, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 29, 0, 0, 0, 0, 908, 909, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 184, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 40, 0, 0, 0, 0, 185, 186, 187,
+ 910, 189, 0, 191, 192, 193, 194, 0, 0, 0,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 0, 206, 207, 208, 209, 210, 211, 212, 213, 0,
+ 911, 0, 0, 217, 218, 219, 220, 221, 0, 0,
+ 224, 225, 226, 227, 228, 0, 0, 0, 232, 233,
+ 234, 235, 236, 912, 238, 239, 240, 241, 0, 0,
+ 0, 0, 0, 0, 247, 0, 249, 0, 251, 252,
+ 0, 254, 255, 256, 257, 258, 259, 0, 261, 262,
+ 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
+ 273, 0, 275, 0, 276, 277, 278, 279, 280, 281,
+ 282, 0, 284, 285, 286, 287, 3893, 289, 290, 291,
+ 292, 293, 294, 295, 296, 297, 298, 299, 0, 0,
+ 0, 303, 0, 913, 304, 305, 306, 307, 308, 309,
+ 310, 311, 312, 313, 314, 0, 0, 0, 0, 0,
+ 319, 320, 914, 322, 323, 324, 0, 326, 327, 0,
+ 329, 330, 0, 0, 332, 0, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 0, 346, 347,
+ 348, 349, 350, 351, 352, 353, 354, 0, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
+ 388, 0, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, 414, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 0, 425, 426,
+ 427, 428, 429, 430, 431, 432, 0, 433, 434, 435,
+ 436, 915, 0, 0, 440, 0, 442, 443, 0, 445,
+ 446, 447, 448, 0, 450, 451, 452, 453, 0, 0,
+ 0, 0, 458, 459, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, 474, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 0, 485,
+ 0, 487, 488, 489, 0, 491, 492, 0, 494, 495,
+ 496, 497, 498, 499, 0, 501, 502, 503, 504, 505,
+ 506, 507, 0, 509, 510, 511, 0, 513, 514, 515,
+ 516, 0, 518, 519, 0, 0, 522, 523, 0, 0,
+ 526, 527, 528, 0, 530, 0, 532, 533, 534, 535,
+ 0, 536, 537, 538, 539, 0, 541, 542, 0, 544,
+ 0, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 0, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 0, 577, 578, 0, 580, 581, 582, 583, 174,
+ 175, 586, 587, 0, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 0,
+ 0, 606, 607, 0, 0, 609, 0, 611, 612, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 6, 0,
+ 0, 0, 0, 0, 0, 0, 0, 902, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 176, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 177, 0, 0, 0,
+ 0, 0, 0, 903, 0, 0, 0, 14, 0, 0,
+ 904, 0, 0, 0, 0, 178, 0, 0, 0, 0,
+ 0, 16, 0, 0, 905, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 906, 0, 0,
+ 0, 0, 0, 0, 0, 907, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 21, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 180, 0,
+ 0, 0, 0, 0, 0, 181, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 29, 0, 0, 0, 0, 908, 909, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 40, 0, 0, 0, 0, 185, 186,
+ 187, 910, 189, 0, 191, 192, 193, 194, 0, 0,
+ 0, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 0, 206, 207, 208, 209, 210, 211, 212, 213,
+ 0, 911, 0, 0, 217, 218, 219, 220, 221, 0,
+ 0, 224, 225, 226, 227, 228, 0, 0, 0, 232,
+ 233, 234, 235, 236, 912, 238, 239, 240, 241, 0,
+ 0, 0, 0, 0, 0, 247, 0, 249, 0, 251,
+ 252, 0, 254, 255, 256, 257, 258, 259, 0, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, 273, 0, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 0, 284, 285, 286, 287, 3899, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 0,
+ 0, 0, 303, 0, 913, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 0, 0, 0, 0,
+ 0, 319, 320, 914, 322, 323, 324, 0, 326, 327,
+ 0, 329, 330, 0, 0, 332, 0, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 0, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 0, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 0, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 915, 0, 0, 440, 0, 442, 443, 0,
+ 445, 446, 447, 448, 0, 450, 451, 452, 453, 0,
+ 0, 0, 0, 458, 459, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 0,
+ 485, 0, 487, 488, 489, 0, 491, 492, 0, 494,
+ 495, 496, 497, 498, 499, 0, 501, 502, 503, 504,
+ 505, 506, 507, 0, 509, 510, 511, 0, 513, 514,
+ 515, 516, 0, 518, 519, 0, 0, 522, 523, 0,
+ 0, 526, 527, 528, 0, 530, 0, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 0, 541, 542, 0,
+ 544, 0, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 0, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 0, 577, 578, 0, 580, 581, 582, 583,
+ 174, 175, 586, 587, 0, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 0, 0, 606, 607, 0, 0, 609, 0, 611, 612,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 6,
+ 0, 0, 0, 0, 0, 0, 0, 0, 902, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 176,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 177, 0, 0,
+ 0, 0, 0, 0, 903, 0, 0, 0, 14, 0,
+ 0, 904, 0, 0, 0, 0, 178, 0, 0, 0,
+ 0, 0, 16, 0, 0, 905, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 906, 0,
+ 0, 0, 0, 0, 0, 0, 907, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 21, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 180,
+ 0, 0, 0, 0, 0, 0, 181, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 182, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 183,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 29, 0, 0, 0, 0, 908, 909, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 40, 0, 0, 0, 0, 185,
+ 186, 187, 910, 189, 0, 191, 192, 193, 194, 0,
+ 0, 0, 195, 196, 197, 198, 199, 200, 201, 202,
+ 203, 204, 0, 206, 207, 208, 209, 210, 211, 212,
+ 213, 0, 911, 0, 0, 217, 218, 219, 220, 221,
+ 0, 0, 224, 225, 226, 227, 228, 0, 0, 0,
+ 232, 233, 234, 235, 236, 912, 238, 239, 240, 241,
+ 0, 0, 0, 0, 0, 0, 247, 0, 249, 0,
+ 251, 252, 0, 254, 255, 256, 257, 258, 259, 0,
+ 261, 262, 263, 264, 265, 266, 267, 268, 269, 270,
+ 271, 272, 273, 0, 275, 0, 276, 277, 278, 279,
+ 280, 281, 282, 0, 284, 285, 286, 287, 4198, 289,
+ 290, 291, 292, 293, 294, 295, 296, 297, 298, 299,
+ 0, 0, 0, 303, 0, 913, 304, 305, 306, 307,
+ 308, 309, 310, 311, 312, 313, 314, 0, 0, 0,
+ 0, 0, 319, 320, 914, 322, 323, 324, 0, 326,
+ 327, 0, 329, 330, 0, 0, 332, 0, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 0,
+ 346, 347, 348, 349, 350, 351, 352, 353, 354, 0,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
+ 386, 387, 388, 0, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 0,
+ 425, 426, 427, 428, 429, 430, 431, 432, 0, 433,
+ 434, 435, 436, 915, 0, 0, 440, 0, 442, 443,
+ 0, 445, 446, 447, 448, 0, 450, 451, 452, 453,
+ 0, 0, 0, 0, 458, 459, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ 474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 0, 485, 0, 487, 488, 489, 0, 491, 492, 0,
+ 494, 495, 496, 497, 498, 499, 0, 501, 502, 503,
+ 504, 505, 506, 507, 0, 509, 510, 511, 0, 513,
+ 514, 515, 516, 0, 518, 519, 0, 0, 522, 523,
+ 0, 0, 526, 527, 528, 0, 530, 0, 532, 533,
+ 534, 535, 0, 536, 537, 538, 539, 0, 541, 542,
+ 0, 544, 0, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 0, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 0, 577, 578, 0, 580, 581, 582,
+ 583, 174, 175, 586, 587, 0, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 0, 0, 606, 607, 0, 0, 609, 0, 611,
+ 612, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 6, 0, 0, 0, 0, 0, 0, 0, 0, 902,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 176, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 177, 0,
+ 0, 0, 0, 0, 0, 903, 0, 0, 0, 14,
+ 0, 0, 904, 0, 0, 0, 0, 178, 0, 0,
+ 0, 0, 0, 16, 0, 0, 905, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 906,
+ 0, 0, 0, 0, 0, 0, 0, 907, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 21,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 180, 0, 0, 0, 0, 0, 0, 181, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 183, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 29, 0, 0, 0, 0, 908, 909,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 184, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 40, 0, 0, 0, 0,
+ 185, 186, 187, 910, 189, 0, 191, 192, 193, 194,
+ 0, 0, 0, 195, 196, 197, 198, 199, 200, 201,
+ 202, 203, 204, 0, 206, 207, 208, 209, 210, 211,
+ 212, 213, 0, 911, 0, 0, 217, 218, 219, 220,
+ 221, 0, 0, 224, 225, 226, 227, 228, 0, 0,
+ 0, 232, 233, 234, 235, 236, 912, 238, 239, 240,
+ 241, 0, 0, 0, 0, 0, 0, 247, 0, 249,
+ 0, 251, 252, 0, 254, 255, 256, 257, 258, 259,
+ 0, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 272, 273, 0, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 0, 284, 285, 286, 287, 0,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 0, 0, 0, 303, 0, 913, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 0, 0,
+ 0, 0, 0, 319, 320, 914, 322, 323, 324, 0,
+ 326, 327, 0, 329, 330, 0, 0, 332, 0, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 0, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 0, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ 414, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 0, 425, 426, 427, 428, 429, 430, 431, 432, 0,
+ 433, 434, 435, 436, 915, 0, 0, 440, 0, 442,
+ 443, 0, 445, 446, 447, 448, 0, 450, 451, 452,
+ 453, 0, 0, 0, 0, 458, 459, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 0, 485, 0, 487, 488, 489, 0, 491, 492,
+ 0, 494, 495, 496, 497, 498, 499, 0, 501, 502,
+ 503, 504, 505, 506, 507, 0, 509, 510, 511, 0,
+ 513, 514, 515, 516, 0, 518, 519, 0, 0, 522,
+ 523, 0, 0, 526, 527, 528, 0, 530, 0, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 0, 541,
+ 542, 0, 544, 0, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 0, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 0, 577, 578, 0, 580, 581,
+ 582, 583, 174, 175, 586, 587, 0, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 0, 0, 606, 607, 0, 0, 609, 0,
+ 611, 612, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 6, 0, 0, 0, 0, 0, 0, 0, 0,
+ 902, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 176, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 177,
+ 0, 0, 0, 0, 0, 0, 903, 0, 0, 0,
+ 14, 0, 0, 904, 0, 0, 0, 0, 178, 0,
+ 0, 0, 0, 0, 16, 0, 0, 905, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 906, 0, 0, 0, 0, 0, 0, 0, 907, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 21, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 180, 0, 0, 0, 0, 0, 0, 181, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 182, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 183, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 29, 0, 0, 0, 0, 908,
+ 909, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 184, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 40, 0, 0, 0,
+ 0, 185, 186, 187, 910, 189, 0, 191, 192, 193,
+ 194, 0, 0, 0, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 0, 206, 207, 208, 209, 210,
+ 211, 212, 213, 0, 911, 0, 0, 217, 218, 219,
+ 220, 221, 0, 0, 224, 225, 226, 227, 228, 0,
+ 0, 0, 232, 233, 234, 235, 236, 912, 238, 239,
+ 240, 241, 0, 0, 0, 0, 0, 0, 247, 0,
+ 249, 0, 251, 252, 0, 254, 255, 256, 257, 258,
+ 259, 0, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 0, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 0, 284, 285, 286, 287,
+ 0, 289, 290, 291, 292, 293, 294, 295, 296, 297,
+ 298, 299, 0, 0, 0, 303, 0, 913, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 0,
+ 0, 0, 0, 0, 319, 320, 914, 322, 323, 324,
+ 0, 326, 327, 0, 329, 330, 0, 0, 332, 0,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 0, 346, 347, 348, 349, 350, 351, 352, 353,
+ 354, 0, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 414, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 0, 425, 426, 427, 428, 429, 430, 431, 432,
+ 0, 433, 434, 435, 436, 915, 0, 0, 440, 0,
+ 442, 443, 0, 445, 446, 447, 448, 0, 450, 451,
+ 452, 453, 0, 0, 0, 0, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 0, 485, 0, 487, 488, 489, 0, 491,
+ 492, 0, 494, 495, 496, 497, 498, 499, 0, 501,
+ 502, 503, 504, 505, 506, 507, 0, 509, 510, 511,
+ 0, 513, 514, 515, 516, 0, 518, 519, 0, 0,
+ 522, 523, 0, 0, 526, 527, 528, 0, 530, 0,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 0,
+ 541, 542, 0, 544, 0, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 0, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 0, 577, 578, 0, 580,
+ 581, 582, 583, 174, 175, 586, 1741, 0, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 0, 0, 606, 607, 0, 0, 609,
+ 0, 611, 612, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 6, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 176, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 177, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 14, 0, 0, 0, 0, 0, 0, 0, 178,
+ 0, 0, 0, 0, 0, 16, 0, 0, 905, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 21, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 180, 0, 0, 0, 0, 0, 0, 181,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 182, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 183, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 29, 0, 0, 0, 0,
+ 908, 909, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 184, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 40, 0, 0,
+ 0, 0, 185, 186, 187, 910, 189, 0, 191, 192,
+ 193, 194, 0, 0, 0, 195, 196, 197, 198, 199,
+ 200, 201, 202, 203, 204, 0, 206, 207, 208, 209,
+ 210, 211, 212, 213, 0, 911, 0, 0, 217, 218,
+ 219, 220, 221, 0, 0, 224, 225, 226, 227, 228,
+ 0, 0, 0, 232, 233, 234, 235, 236, 0, 238,
+ 239, 240, 241, 0, 0, 0, 0, 0, 0, 247,
+ 0, 249, 0, 251, 252, 0, 254, 255, 256, 257,
+ 258, 259, 0, 261, 262, 263, 264, 265, 266, 267,
+ 268, 269, 270, 271, 272, 273, 0, 275, 0, 276,
+ 277, 278, 279, 280, 281, 282, 0, 284, 285, 286,
+ 287, 0, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 0, 0, 0, 303, 0, 0, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 0, 0, 0, 0, 0, 319, 320, 914, 322, 323,
+ 324, 0, 326, 327, 0, 329, 330, 0, 0, 332,
+ 0, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 0, 346, 347, 348, 349, 350, 351, 352,
+ 353, 354, 0, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 0, 425, 426, 427, 428, 429, 430, 431,
+ 432, 0, 433, 434, 435, 436, 0, 0, 0, 440,
+ 0, 442, 443, 0, 445, 446, 447, 448, 0, 450,
+ 451, 452, 453, 0, 0, 0, 0, 458, 459, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, 474, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 0, 485, 0, 487, 488, 489, 0,
+ 491, 492, 0, 494, 495, 496, 497, 498, 499, 0,
+ 501, 502, 503, 504, 505, 506, 507, 0, 509, 510,
+ 511, 0, 513, 514, 515, 516, 0, 518, 519, 174,
+ 175, 522, 523, 0, 0, 526, 527, 528, 0, 530,
+ 0, 532, 533, 534, 535, 0, 536, 537, 538, 539,
+ 0, 541, 542, 0, 544, 0, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 0, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 0, 577, 578, 0,
+ 580, 581, 582, 583, 0, 0, 586, 587, 176, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 0, 0, 606, 607, 0, 0,
+ 609, 0, 611, 612, 0, 0, 177, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 178, 0, 0, 0, 0,
+ 0, 0, 0, 0, 905, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 180, 0,
+ 0, 0, 0, 0, 0, 181, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 182, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 183, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 184,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 1524, 0, 0, 0, 0, 0, 0, 185, 186,
+ 187, 910, 189, 0, 191, 192, 193, 194, 0, 0,
+ 0, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 0, 206, 207, 208, 209, 210, 211, 212, 213,
+ 0, 0, 0, 0, 217, 218, 219, 220, 221, 0,
+ 0, 224, 225, 226, 227, 228, 0, 0, 0, 232,
+ 233, 234, 235, 236, 0, 238, 239, 240, 241, 0,
+ 0, 0, 0, 0, 0, 247, 0, 249, 0, 251,
+ 252, 0, 254, 255, 256, 257, 258, 259, 0, 261,
+ 262, 263, 264, 265, 266, 267, 268, 269, 270, 271,
+ 272, 273, 0, 275, 0, 276, 277, 278, 279, 280,
+ 281, 282, 0, 284, 285, 286, 287, 0, 289, 290,
+ 291, 292, 293, 294, 295, 296, 297, 298, 299, 0,
+ 0, 0, 303, 0, 0, 304, 305, 306, 307, 308,
+ 309, 310, 311, 312, 313, 314, 0, 0, 0, 0,
+ 0, 319, 320, 914, 322, 323, 324, 0, 326, 327,
+ 0, 329, 330, 0, 0, 332, 0, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 0, 346,
+ 347, 348, 349, 350, 351, 352, 353, 354, 0, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
+ 387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 0, 425,
+ 426, 427, 428, 429, 430, 431, 432, 0, 433, 434,
+ 435, 436, 0, 0, 0, 440, 0, 442, 443, 0,
+ 445, 446, 447, 448, 0, 450, 451, 452, 453, 0,
+ 0, 0, 0, 458, 459, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 0,
+ 485, 0, 487, 488, 489, 0, 491, 492, 0, 494,
+ 495, 496, 497, 498, 499, 0, 501, 502, 503, 504,
+ 505, 506, 507, 0, 509, 510, 511, 0, 513, 514,
+ 515, 516, 0, 518, 519, 174, 175, 522, 523, 0,
+ 0, 526, 527, 528, 0, 530, 0, 532, 533, 534,
+ 535, 0, 536, 537, 538, 539, 0, 541, 542, 0,
+ 544, 0, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 0, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 0, 577, 578, 0, 580, 581, 582, 583,
+ 0, 0, 586, 587, 176, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 0, 0, 606, 607, 0, 0, 609, 0, 611, 612,
+ 0, 0, 177, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 178, 0, 0, 0, 0, 0, 0, 0, 0,
+ 905, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 180, 0, 0, 0, 0, 0,
+ 0, 181, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 182, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 183, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 184, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 1535, 0, 0,
+ 0, 0, 0, 0, 185, 186, 187, 910, 189, 0,
+ 191, 192, 193, 194, 0, 0, 0, 195, 196, 197,
+ 198, 199, 200, 201, 202, 203, 204, 0, 206, 207,
+ 208, 209, 210, 211, 212, 213, 0, 0, 0, 0,
+ 217, 218, 219, 220, 221, 0, 0, 224, 225, 226,
+ 227, 228, 0, 0, 0, 232, 233, 234, 235, 236,
+ 0, 238, 239, 240, 241, 0, 0, 0, 0, 0,
+ 0, 247, 0, 249, 0, 251, 252, 0, 254, 255,
+ 256, 257, 258, 259, 0, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 273, 0, 275,
+ 0, 276, 277, 278, 279, 280, 281, 282, 0, 284,
+ 285, 286, 287, 0, 289, 290, 291, 292, 293, 294,
+ 295, 296, 297, 298, 299, 0, 0, 0, 303, 0,
+ 0, 304, 305, 306, 307, 308, 309, 310, 311, 312,
+ 313, 314, 0, 0, 0, 0, 0, 319, 320, 914,
+ 322, 323, 324, 0, 326, 327, 0, 329, 330, 0,
+ 0, 332, 0, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 0, 346, 347, 348, 349, 350,
+ 351, 352, 353, 354, 0, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, 414, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 0, 425, 426, 427, 428, 429,
+ 430, 431, 432, 0, 433, 434, 435, 436, 0, 0,
+ 0, 440, 0, 442, 443, 0, 445, 446, 447, 448,
+ 0, 450, 451, 452, 453, 0, 0, 0, 0, 458,
+ 459, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, 474, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 0, 485, 0, 487, 488,
+ 489, 0, 491, 492, 0, 494, 495, 496, 497, 498,
+ 499, 0, 501, 502, 503, 504, 505, 506, 507, 0,
+ 509, 510, 511, 0, 513, 514, 515, 516, 0, 518,
+ 519, 174, 175, 522, 523, 0, 0, 526, 527, 528,
+ 0, 530, 0, 532, 533, 534, 535, 0, 536, 537,
+ 538, 539, 0, 541, 542, 0, 544, 0, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 0, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 0, 577,
+ 578, 0, 580, 581, 582, 583, 0, 0, 586, 587,
+ 176, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 0, 0, 606, 607,
+ 0, 0, 609, 0, 611, 612, 0, 0, 177, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 178, 0, 0,
+ 0, 0, 0, 0, 0, 0, 905, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 180, 0, 0, 0, 0, 0, 0, 181, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 182,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 183, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 184, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 185, 186, 187, 910, 189, 0, 191, 192, 193, 194,
+ 0, 0, 0, 195, 196, 197, 198, 199, 200, 201,
+ 202, 203, 204, 0, 206, 207, 208, 209, 210, 211,
+ 212, 213, 0, 0, 0, 0, 217, 218, 219, 220,
+ 221, 0, 0, 224, 225, 226, 227, 228, 0, 0,
+ 0, 232, 233, 234, 235, 236, 0, 238, 239, 240,
+ 241, 0, 0, 0, 0, 0, 0, 247, 0, 249,
+ 0, 251, 252, 0, 254, 255, 256, 257, 258, 259,
+ 0, 261, 262, 263, 264, 265, 266, 267, 268, 269,
+ 270, 271, 272, 273, 0, 275, 0, 276, 277, 278,
+ 279, 280, 281, 282, 0, 284, 285, 286, 287, 0,
+ 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
+ 299, 0, 0, 0, 303, 0, 0, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 0, 0,
+ 0, 0, 0, 319, 320, 914, 322, 323, 324, 0,
+ 326, 327, 0, 329, 330, 0, 0, 332, 0, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 0, 346, 347, 348, 349, 350, 351, 352, 353, 354,
+ 0, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
+ 385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ 414, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 0, 425, 426, 427, 428, 429, 430, 431, 432, 0,
+ 433, 434, 435, 436, 0, 0, 0, 440, 0, 442,
+ 443, 0, 445, 446, 447, 448, 0, 450, 451, 452,
+ 453, 0, 0, 0, 0, 458, 459, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 0, 485, 0, 487, 488, 489, 0, 491, 492,
+ 0, 494, 495, 496, 497, 498, 499, 0, 501, 502,
+ 503, 504, 505, 506, 507, 0, 509, 510, 511, 0,
+ 513, 514, 515, 516, 0, 518, 519, 0, 0, 522,
+ 523, 0, 0, 526, 527, 528, 0, 530, 0, 532,
+ 533, 534, 535, 0, 536, 537, 538, 539, 0, 541,
+ 542, 0, 544, 0, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 0, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 0, 577, 578, 0, 580, 581,
+ 582, 583, 0, 0, 586, 587, 0, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 174, 175, 606, 607, 0, 0, 609, 0,
+ 611, 612, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 3451, 3452,
+ 3453, 3454, 3455, 3456, 3457, 3458, 3459, 3460, 3461, 0,
+ 3462, 3463, 3464, 3465, 0, 0, 3466, 3467, 3468, 3469,
+ 3470, 3471, 3472, 3473, 3474, 3475, 3476, 0, 3477, 3478,
+ 3479, 3480, 3481, 3482, 3483, 3484, 3485, 3486, 3487, 0,
+ 3488, 176, 3489, 3490, 3491, 3492, 3493, 3494, 3495, 3496,
+ 3497, 3498, 3499, 3500, 3501, 3502, 3503, 3504, 3505, 3506,
+ 3507, 3508, 3509, 3510, 3511, 3512, 3513, 3514, 3515, 177,
+ 3516, 3517, 3518, 3519, 3520, 3521, 3522, 3523, 3524, 3525,
+ 0, 3526, 3527, 3528, 3529, 3530, 0, 0, 178, 3531,
+ 3532, 3533, 3534, 3535, 3536, 3537, 3538, 3539, 3540, 3541,
+ 3542, 3543, 3544, 3545, 3546, 3547, 3548, 3549, 3550, 3551,
+ 3552, 3553, 3554, 3555, 3556, 3557, 3558, 3559, 3560, 3561,
+ 3562, 3563, 3564, 3565, 3566, 3567, 3568, 0, 0, 0,
+ 3569, 3570, 3571, 3572, 3573, 3574, 3575, 0, 0, 0,
+ 3576, 180, 3577, 3578, 3579, 3580, 3581, 3582, 181, 3583,
+ 3584, 3585, 3586, 3587, 3588, 0, 3589, 3590, 3591, 3592,
+ 182, 3593, 3594, 3595, 3596, 3597, 3598, 3599, 3600, 3601,
+ 3602, 183, 3603, 3604, 3605, 3606, 3607, 3608, 3609, 3610,
+ 3611, 3612, 3613, 3614, 3615, 3616, 3617, 0, 3618, 3619,
+ 3620, 3621, 3622, 3623, 3624, 3625, 3626, 3627, 3628, 3629,
+ 3630, 3631, 3632, 3633, 3634, 3635, 3636, 3637, 3638, 3639,
+ 3640, 0, 3641, 3642, 0, 3643, 3644, 3645, 3646, 3647,
+ 3648, 3649, 3650, 3651, 3652, 3653, 3654, 3655, 3656, 3657,
+ 3658, 3659, 184, 3660, 3661, 3662, 3663, 0, 0, 0,
+ 3664, 3665, 3666, 3667, 3668, 3669, 3670, 3671, 3672, 3673,
+ 3674, 3675, 3676, 3677, 3678, 3679, 3680, 3681, 3682, 0,
+ 3683, 3684, 3685, 3686, 3687, 3688, 3689, 3690, 3691, 3692,
+ 3693, 185, 186, 187, 0, 189, 190, 191, 192, 193,
+ 194, 3694, 3695, 3696, 195, 196, 197, 198, 199, 200,
+ 201, 202, 203, 204, 205, 206, 207, 208, 209, 210,
+ 211, 212, 213, 214, 215, 0, 216, 0, 218, 0,
+ 0, 221, 222, 223, 224, 225, 226, 227, 228, 229,
+ 230, 231, 232, 233, 234, 0, 0, 237, 238, 239,
+ 240, 241, 242, 243, 244, 245, 246, 0, 247, 248,
+ 249, 250, 251, 252, 253, 254, 255, 256, 257, 258,
+ 259, 260, 261, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 3697, 3698, 273, 274, 275, 0, 276, 277,
+ 278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
+ 288, 289, 290, 291, 0, 293, 294, 295, 296, 297,
+ 298, 299, 300, 301, 302, 303, 0, 0, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 0, 315,
+ 316, 317, 0, 318, 319, 320, 0, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 0, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, 352, 0,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ 384, 385, 386, 387, 388, 0, 389, 390, 391, 392,
+ 393, 394, 395, 0, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, 0, 3699, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 0, 0, 0, 432,
+ 3700, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 0, 0,
+ 472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 0, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 0, 516, 517, 518, 519, 520, 3701,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ 532, 533, 534, 535, 0, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 0, 565, 566, 0, 568, 569, 3702,
+ 571, 572, 573, 574, 575, 576, 577, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 0, 3703, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 0, 605, 606, 607, 608, 0, 609,
+ 610, 611
+};
+
+static const yytype_int16 yycheck[] =
+{
+ 5, 165, 68, 44, 163, 916, 0, 0, 678, 679,
+ 1671, 1397, 0, 1171, 1906, 1173, 1174, 1722, 657, 1876,
+ 173, 26, 789, 1181, 1932, 30, 2086, 22, 2044, 657,
+ 35, 1456, 789, 38, 673, 0, 162, 1595, 1735, 678,
+ 1580, 3047, 759, 2694, 0, 673, 51, 1586, 3355, 2553,
+ 2096, 1931, 57, 678, 2015, 1229, 61, 52, 2848, 1365,
+ 678, 3273, 1368, 58, 3376, 744, 646, 746, 704, 3202,
+ 749, 750, 3243, 997, 68, 1135, 31, 902, 160, 904,
+ 3268, 906, 907, 3119, 4051, 1625, 3973, 4051, 913, 2564,
+ 1368, 1362, 678, 2859, 2860, 1616, 676, 646, 1533, 3948,
+ 3949, 1850, 678, 3274, 2475, 1405, 2876, 2627, 2878, 1502,
+ 678, 1405, 2562, 1356, 45, 3257, 966, 1655, 123, 1295,
+ 2879, 1208, 1792, 1793, 3496, 2591, 827, 676, 721, 3135,
+ 2664, 724, 4206, 2875, 2967, 1673, 2734, 2879, 1735, 1799,
+ 134, 134, 4216, 1230, 2063, 2176, 1337, 2034, 678, 4223,
+ 657, 156, 157, 1900, 173, 160, 173, 162, 173, 1819,
+ 4051, 4216, 3702, 4874, 173, 173, 673, 4572, 4223, 134,
+ 2655, 678, 123, 3697, 4679, 2654, 2655, 3327, 3702, 173,
+ 173, 1452, 3949, 1843, 1844, 173, 5035, 1708, 1709, 1710,
+ 1711, 1712, 1713, 1714, 1715, 1716, 1717, 1718, 1719, 1720,
+ 3025, 12, 4051, 1900, 3930, 15, 4529, 4529, 173, 4529,
+ 4486, 16, 17, 1693, 6, 7, 3496, 1067, 1068, 1069,
+ 15, 1701, 1702, 26, 1704, 1705, 1137, 1897, 42, 4530,
+ 1080, 4532, 31, 3319, 4535, 6, 7, 31, 42, 6,
+ 7, 31, 4141, 4142, 26, 51, 4145, 47, 4549, 6,
+ 7, 6, 7, 4152, 6, 7, 26, 1433, 31, 4158,
+ 67, 53, 783, 902, 26, 904, 127, 906, 907, 657,
+ 31, 6, 7, 47, 913, 4581, 42, 916, 28, 2187,
+ 3509, 42, 42, 26, 127, 673, 3119, 2772, 71, 5159,
+ 5160, 5126, 4377, 2772, 11, 12, 33, 47, 104, 26,
+ 89, 26, 42, 1900, 41, 1231, 3342, 33, 24, 25,
+ 26, 4669, 28, 50, 30, 41, 32, 24, 25, 26,
+ 26, 28, 771, 30, 50, 32, 47, 628, 99, 33,
+ 28, 33, 24, 25, 26, 770, 28, 41, 30, 41,
+ 32, 755, 33, 145, 53, 173, 50, 42, 50, 203,
+ 41, 53, 31, 42, 123, 88, 123, 203, 42, 50,
+ 47, 26, 14, 178, 242, 203, 299, 2817, 14, 5709,
+ 182, 123, 99, 3295, 99, 206, 65, 3842, 3843, 42,
+ 65, 244, 314, 158, 685, 5180, 3462, 254, 33, 136,
+ 804, 43, 44, 99, 268, 902, 41, 904, 3474, 906,
+ 907, 168, 143, 3683, 314, 50, 913, 1467, 143, 916,
+ 57, 33, 33, 26, 127, 128, 168, 232, 378, 41,
+ 41, 143, 172, 3703, 128, 42, 1861, 314, 50, 50,
+ 4420, 2557, 127, 318, 99, 168, 1496, 244, 305, 391,
+ 26, 281, 42, 254, 42, 99, 33, 63, 310, 391,
+ 33, 427, 5482, 295, 41, 107, 178, 1979, 41, 387,
+ 14, 107, 1861, 50, 267, 127, 294, 50, 99, 51,
+ 5327, 208, 40, 5813, 633, 317, 635, 636, 637, 638,
+ 639, 640, 208, 642, 643, 2545, 99, 369, 33, 43,
+ 44, 4835, 4454, 591, 305, 4876, 41, 435, 1137, 151,
+ 60, 67, 14, 314, 208, 50, 208, 116, 47, 3342,
+ 114, 299, 53, 672, 902, 816, 904, 208, 906, 907,
+ 646, 5306, 104, 197, 337, 913, 33, 53, 916, 314,
+ 2438, 43, 44, 54, 41, 4875, 122, 254, 239, 644,
+ 192, 258, 299, 50, 33, 312, 192, 201, 33, 1935,
+ 676, 572, 41, 107, 122, 1256, 41, 1950, 341, 75,
+ 312, 50, 4636, 208, 5069, 50, 119, 726, 727, 209,
+ 31, 697, 5442, 4563, 10, 4881, 433, 96, 315, 471,
+ 122, 4636, 31, 366, 141, 711, 208, 208, 305, 315,
+ 5891, 170, 1750, 328, 5895, 107, 764, 314, 4672, 152,
+ 232, 769, 53, 771, 145, 4454, 408, 1765, 299, 458,
+ 160, 315, 494, 315, 33, 386, 71, 4672, 919, 160,
+ 1337, 208, 50, 3699, 315, 208, 1100, 203, 196, 314,
+ 1137, 50, 1225, 201, 1227, 779, 155, 217, 192, 1318,
+ 645, 646, 1321, 787, 528, 33, 1325, 1326, 1327, 31,
+ 463, 314, 4539, 41, 2534, 4729, 403, 203, 1132, 201,
+ 1584, 57, 50, 208, 1421, 670, 4557, 67, 225, 203,
+ 315, 676, 251, 203, 4729, 71, 1600, 73, 244, 805,
+ 192, 779, 787, 323, 1744, 5542, 691, 846, 847, 2546,
+ 4214, 127, 697, 315, 315, 251, 2002, 5055, 629, 3233,
+ 182, 208, 364, 3237, 290, 710, 711, 311, 4557, 1796,
+ 686, 1798, 1562, 1563, 1801, 234, 671, 843, 3089, 208,
+ 236, 2682, 290, 208, 2002, 746, 1813, 178, 315, 1816,
+ 1790, 99, 315, 1820, 2034, 2861, 4635, 4044, 743, 292,
+ 2034, 3226, 374, 1444, 281, 1502, 287, 3226, 290, 1137,
+ 688, 2186, 601, 475, 759, 386, 838, 839, 840, 1846,
+ 1847, 1848, 6063, 4135, 4663, 4137, 287, 1468, 4667, 307,
+ 315, 776, 310, 299, 4146, 4674, 770, 2669, 432, 5564,
+ 1971, 232, 713, 675, 789, 153, 448, 2186, 450, 3825,
+ 721, 1982, 5822, 724, 4166, 580, 2354, 2355, 726, 33,
+ 805, 1440, 504, 688, 3954, 4177, 143, 41, 315, 814,
+ 577, 1735, 3818, 695, 169, 2723, 50, 281, 658, 779,
+ 208, 568, 827, 432, 666, 577, 315, 779, 5172, 834,
+ 315, 836, 506, 838, 839, 840, 841, 643, 843, 378,
+ 581, 178, 797, 384, 244, 787, 33, 780, 123, 782,
+ 782, 1552, 5647, 4133, 41, 4135, 684, 4137, 258, 287,
+ 33, 281, 299, 50, 639, 4330, 4146, 568, 41, 743,
+ 911, 33, 782, 1723, 229, 2535, 6216, 50, 540, 41,
+ 630, 528, 4162, 2763, 2792, 1465, 4166, 842, 50, 844,
+ 747, 50, 614, 168, 644, 782, 901, 4177, 903, 2379,
+ 2380, 54, 2382, 2383, 782, 281, 2082, 912, 658, 4871,
+ 915, 366, 779, 376, 593, 1841, 107, 779, 72, 782,
+ 1334, 782, 472, 928, 918, 918, 33, 315, 782, 5014,
+ 918, 681, 299, 1440, 41, 723, 782, 1573, 33, 782,
+ 755, 710, 3392, 50, 782, 341, 41, 730, 669, 763,
+ 1399, 782, 614, 918, 743, 50, 758, 1392, 5264, 763,
+ 4189, 4047, 768, 359, 33, 712, 769, 779, 779, 779,
+ 366, 763, 41, 787, 208, 782, 1900, 782, 1745, 779,
+ 779, 50, 669, 787, 779, 779, 1703, 769, 1745, 779,
+ 759, 4981, 3825, 5269, 786, 5271, 5831, 763, 780, 769,
+ 782, 192, 763, 763, 1070, 779, 779, 769, 3833, 5332,
+ 5332, 4978, 5332, 1649, 4978, 786, 477, 5375, 780, 786,
+ 782, 208, 4871, 763, 4873, 758, 769, 787, 3950, 786,
+ 717, 786, 2781, 5334, 786, 208, 1162, 780, 5908, 782,
+ 5910, 5911, 769, 780, 769, 1171, 208, 787, 1174, 629,
+ 1817, 786, 1440, 1179, 763, 4131, 4132, 742, 33, 785,
+ 1817, 643, 779, 769, 780, 547, 41, 1072, 763, 782,
+ 768, 769, 688, 780, 763, 50, 1070, 4153, 782, 763,
+ 782, 315, 1070, 4159, 1210, 5590, 5935, 4978, 780, 4815,
+ 2150, 782, 4168, 649, 4170, 4171, 4172, 314, 4174, 4175,
+ 763, 208, 1781, 787, 769, 5510, 4873, 1777, 4184, 4185,
+ 4186, 4187, 4188, 208, 766, 767, 768, 769, 770, 771,
+ 772, 773, 768, 769, 770, 771, 772, 773, 315, 4978,
+ 1135, 5512, 901, 1850, 6004, 6005, 696, 782, 1777, 208,
+ 2662, 2663, 315, 88, 593, 6015, 763, 35, 36, 37,
+ 505, 39, 1777, 315, 5865, 5866, 769, 1162, 780, 1777,
+ 2071, 782, 5502, 763, 732, 763, 1171, 704, 568, 1174,
+ 787, 5511, 1752, 692, 1179, 4008, 4009, 376, 5168, 4012,
+ 4013, 232, 335, 769, 4724, 4018, 4019, 787, 4728, 787,
+ 732, 1777, 560, 1950, 376, 782, 578, 780, 6068, 782,
+ 4724, 1777, 782, 1752, 4728, 1210, 782, 361, 315, 1777,
+ 369, 593, 4045, 1914, 768, 769, 770, 771, 772, 773,
+ 315, 33, 763, 1524, 281, 688, 143, 780, 376, 41,
+ 1271, 1399, 1358, 208, 1535, 780, 782, 782, 50, 208,
+ 704, 254, 1395, 1248, 1195, 1250, 315, 1777, 782, 787,
+ 1255, 1256, 782, 232, 1971, 767, 768, 769, 770, 771,
+ 772, 773, 333, 1422, 331, 1982, 1983, 1272, 156, 2127,
+ 1777, 1337, 232, 1952, 1953, 782, 1281, 614, 160, 743,
+ 1959, 1960, 1961, 3163, 704, 1236, 3033, 653, 393, 270,
+ 1295, 1296, 305, 782, 1225, 780, 1227, 1890, 5372, 2457,
+ 5374, 314, 577, 3160, 755, 4493, 143, 5297, 4496, 5299,
+ 3190, 1316, 763, 3200, 5304, 735, 2474, 5372, 5562, 5374,
+ 2478, 5311, 5312, 2623, 1917, 4475, 448, 178, 704, 2623,
+ 3981, 5321, 1337, 1338, 730, 494, 3033, 5327, 448, 1465,
+ 315, 2265, 371, 1337, 3995, 782, 4718, 1429, 703, 1337,
+ 787, 390, 506, 1358, 580, 4497, 33, 2531, 2783, 211,
+ 14, 4367, 33, 580, 1319, 1320, 1297, 743, 2038, 1949,
+ 41, 1376, 232, 50, 2434, 2435, 1395, 5627, 1395, 50,
+ 1395, 298, 2688, 2904, 2690, 2691, 1395, 1395, 369, 43,
+ 44, 178, 1397, 1398, 782, 178, 208, 53, 1392, 2699,
+ 2460, 1395, 1395, 1408, 2797, 2699, 3437, 1395, 2109, 2110,
+ 2688, 3330, 2690, 2691, 1419, 782, 1421, 2504, 409, 410,
+ 787, 2508, 40, 2510, 1429, 1430, 71, 1553, 1433, 173,
+ 1395, 723, 2071, 3967, 3968, 580, 3033, 2524, 4718, 1444,
+ 1741, 492, 5824, 1448, 3910, 1450, 5690, 510, 3006, 3007,
+ 2537, 2538, 2643, 107, 5176, 1460, 5802, 2996, 2649, 779,
+ 1465, 298, 1467, 1468, 101, 3373, 4064, 787, 71, 3129,
+ 73, 40, 2111, 1404, 3012, 3013, 3014, 3015, 3963, 3964,
+ 551, 1250, 3853, 2111, 3963, 3964, 1255, 143, 3028, 688,
+ 553, 1496, 614, 4499, 33, 787, 3867, 1502, 649, 528,
+ 3871, 3022, 41, 315, 614, 4264, 688, 2146, 613, 5759,
+ 31, 50, 2033, 494, 1264, 145, 33, 2997, 2146, 2999,
+ 2159, 1526, 4264, 358, 41, 1275, 593, 143, 1594, 755,
+ 160, 476, 492, 50, 2159, 72, 695, 208, 192, 127,
+ 688, 2159, 459, 193, 2183, 2184, 780, 1552, 1553, 33,
+ 462, 2727, 5542, 33, 4387, 2183, 2184, 41, 5548, 33,
+ 2163, 41, 633, 414, 2071, 5464, 50, 41, 1337, 33,
+ 50, 423, 976, 977, 978, 2818, 50, 41, 196, 770,
+ 771, 772, 773, 2159, 363, 566, 50, 2445, 2446, 126,
+ 472, 2159, 1586, 780, 338, 782, 1722, 4117, 4118, 448,
+ 1594, 658, 258, 657, 2111, 392, 1594, 780, 40, 782,
+ 755, 110, 5646, 33, 736, 654, 3365, 1021, 780, 673,
+ 782, 41, 459, 474, 678, 688, 1752, 196, 779, 2159,
+ 50, 414, 492, 287, 572, 10, 5050, 472, 315, 2146,
+ 669, 586, 298, 33, 315, 1650, 167, 704, 593, 1654,
+ 1419, 41, 2159, 632, 599, 1660, 1697, 33, 6040, 296,
+ 50, 1430, 307, 572, 2381, 41, 1671, 582, 71, 208,
+ 73, 235, 782, 780, 50, 4125, 2183, 2184, 590, 1448,
+ 659, 1450, 6028, 2071, 40, 780, 57, 1851, 225, 1683,
+ 1683, 208, 5682, 101, 19, 20, 99, 3367, 99, 99,
+ 1782, 1783, 73, 1785, 1786, 1787, 1788, 357, 3229, 641,
+ 145, 5701, 328, 782, 695, 1797, 28, 1722, 30, 1724,
+ 214, 2357, 713, 2111, 208, 716, 314, 2787, 208, 674,
+ 42, 5453, 226, 1815, 208, 1740, 5458, 5459, 167, 1744,
+ 1745, 335, 150, 577, 208, 33, 232, 1752, 1753, 10,
+ 5814, 5785, 127, 41, 384, 667, 293, 226, 2146, 258,
+ 3195, 378, 50, 366, 196, 614, 779, 2068, 468, 1774,
+ 5619, 2159, 688, 1899, 4916, 756, 315, 1782, 1783, 1784,
+ 1785, 1786, 1787, 1788, 1789, 1790, 1791, 281, 208, 568,
+ 735, 312, 1797, 1957, 1958, 2183, 2184, 5646, 315, 268,
+ 201, 5650, 1733, 459, 160, 780, 506, 782, 746, 1814,
+ 1815, 4847, 1817, 127, 1940, 2454, 434, 652, 208, 144,
+ 289, 4857, 4858, 1949, 740, 1951, 33, 753, 314, 2454,
+ 5244, 315, 208, 1838, 41, 315, 2454, 746, 3898, 5857,
+ 196, 315, 5860, 50, 782, 1850, 33, 5261, 902, 598,
+ 904, 315, 906, 907, 41, 787, 74, 3128, 173, 913,
+ 454, 2441, 916, 50, 1990, 434, 2167, 4637, 86, 225,
+ 457, 196, 787, 782, 2175, 763, 764, 765, 2454, 10,
+ 141, 1650, 2793, 312, 2185, 1654, 2454, 736, 296, 1820,
+ 404, 1660, 2441, 33, 1899, 315, 5084, 2808, 2599, 5748,
+ 3200, 41, 3060, 303, 304, 33, 3200, 3178, 197, 1914,
+ 50, 33, 2551, 41, 1919, 5637, 4682, 2043, 3076, 41,
+ 208, 595, 50, 2551, 2454, 315, 2643, 676, 50, 3087,
+ 3088, 5119, 2649, 782, 4943, 1940, 5785, 293, 2849, 315,
+ 598, 3366, 1947, 5830, 1949, 1950, 1951, 2664, 782, 5836,
+ 1955, 36, 37, 5802, 119, 2634, 3262, 542, 2637, 1890,
+ 4969, 661, 2641, 366, 2721, 33, 1971, 436, 780, 463,
+ 4341, 1740, 6036, 41, 6071, 4346, 4347, 1982, 1983, 294,
+ 33, 3041, 50, 386, 3262, 1990, 1917, 152, 41, 314,
+ 2583, 608, 281, 3386, 3387, 3887, 342, 50, 2601, 33,
+ 2670, 208, 314, 403, 458, 4021, 403, 41, 1412, 413,
+ 141, 3071, 723, 600, 4847, 1784, 50, 691, 676, 128,
+ 1789, 208, 1791, 6087, 4857, 4858, 5993, 315, 5992, 6047,
+ 386, 4141, 3889, 2858, 2859, 2860, 3997, 572, 2043, 5794,
+ 2797, 33, 3233, 454, 2551, 154, 3237, 2052, 4699, 41,
+ 364, 293, 461, 2058, 568, 4530, 528, 2062, 50, 154,
+ 4535, 386, 3368, 6127, 2781, 4540, 2454, 627, 208, 1838,
+ 5106, 745, 413, 5828, 421, 475, 787, 2082, 6175, 6176,
+ 208, 1850, 2685, 1137, 493, 489, 208, 704, 5937, 33,
+ 3368, 437, 2097, 33, 2099, 2734, 14, 41, 2103, 3370,
+ 5472, 41, 4753, 720, 2109, 2110, 50, 763, 315, 3033,
+ 50, 782, 766, 767, 768, 769, 770, 771, 772, 773,
+ 120, 2126, 2127, 683, 709, 43, 44, 292, 315, 33,
+ 5318, 226, 5303, 668, 448, 33, 450, 41, 5147, 495,
+ 208, 613, 727, 41, 386, 2150, 50, 601, 489, 2154,
+ 561, 4261, 50, 33, 2793, 208, 33, 671, 567, 2164,
+ 779, 41, 454, 2551, 41, 2170, 47, 55, 787, 2808,
+ 50, 460, 497, 50, 208, 315, 2181, 2182, 419, 6028,
+ 0, 2702, 2703, 117, 118, 426, 1955, 315, 5468, 107,
+ 47, 33, 5472, 315, 541, 33, 131, 669, 47, 41,
+ 647, 123, 1971, 41, 7, 127, 2786, 499, 50, 2848,
+ 2849, 746, 50, 1982, 1983, 144, 208, 506, 218, 2858,
+ 2859, 2860, 723, 2848, 2863, 106, 540, 2734, 3139, 51,
+ 2848, 47, 3082, 2227, 2227, 3146, 2875, 2786, 2863, 648,
+ 2879, 5553, 602, 782, 2880, 2863, 168, 315, 2412, 106,
+ 2875, 173, 5440, 495, 2879, 2891, 2892, 106, 705, 6123,
+ 2896, 708, 315, 151, 208, 782, 3, 196, 208, 6097,
+ 217, 205, 2848, 5106, 192, 3042, 568, 57, 779, 167,
+ 2848, 315, 104, 2052, 206, 3042, 2793, 2863, 735, 2058,
+ 106, 71, 6156, 73, 31, 2863, 743, 128, 782, 2875,
+ 614, 2808, 782, 2879, 208, 33, 763, 2875, 782, 2375,
+ 208, 2879, 2948, 41, 6142, 2441, 780, 5150, 2848, 3799,
+ 151, 3801, 50, 315, 47, 14, 2331, 33, 208, 2965,
+ 2335, 208, 2458, 2863, 281, 41, 573, 574, 47, 229,
+ 287, 2848, 2849, 2348, 50, 2875, 2734, 763, 282, 2879,
+ 238, 2858, 2859, 2860, 43, 44, 3895, 2126, 2127, 4834,
+ 4835, 251, 782, 145, 752, 33, 208, 141, 2875, 454,
+ 208, 315, 2879, 41, 127, 315, 127, 136, 160, 2982,
+ 6067, 2375, 50, 106, 413, 2154, 1440, 2375, 47, 5465,
+ 5180, 779, 782, 763, 53, 2164, 55, 106, 5474, 158,
+ 5476, 5477, 5478, 5479, 5480, 2793, 782, 2489, 5596, 4780,
+ 4781, 315, 2494, 650, 499, 704, 6103, 315, 107, 744,
+ 2808, 2503, 173, 4898, 177, 4900, 1003, 2509, 99, 2434,
+ 2435, 33, 2558, 3103, 3104, 315, 2441, 723, 315, 41,
+ 2445, 2446, 779, 6079, 6080, 1022, 1023, 206, 50, 30,
+ 787, 763, 153, 2458, 35, 2460, 768, 769, 2463, 2464,
+ 2848, 2849, 151, 5114, 3103, 3104, 779, 168, 782, 128,
+ 2858, 2859, 2860, 315, 787, 2863, 561, 315, 3103, 3104,
+ 208, 6117, 5694, 2488, 2489, 3103, 3104, 2875, 241, 2494,
+ 22, 2879, 57, 779, 782, 768, 769, 29, 2503, 31,
+ 3139, 667, 208, 192, 2509, 787, 71, 3146, 5641, 675,
+ 5643, 271, 4369, 33, 680, 311, 3233, 3103, 3104, 604,
+ 3237, 41, 282, 2454, 33, 713, 33, 3103, 3104, 717,
+ 50, 2536, 41, 3444, 41, 3103, 3104, 4498, 769, 31,
+ 208, 50, 33, 50, 779, 769, 2672, 2552, 4624, 780,
+ 41, 2633, 787, 2558, 2559, 2560, 780, 2639, 2640, 50,
+ 313, 341, 2331, 4579, 779, 328, 2335, 4643, 2523, 5757,
+ 2501, 154, 787, 3103, 3104, 782, 4652, 65, 769, 359,
+ 779, 2512, 4658, 2588, 510, 4601, 366, 315, 787, 780,
+ 2595, 782, 4668, 3196, 2599, 782, 3103, 3104, 533, 534,
+ 4676, 4677, 537, 538, 539, 33, 208, 57, 737, 315,
+ 779, 391, 4862, 41, 258, 5922, 5923, 4867, 787, 779,
+ 2625, 71, 50, 73, 2629, 2630, 2631, 787, 2633, 3386,
+ 3387, 178, 3139, 2638, 2639, 2640, 5769, 307, 2643, 3146,
+ 310, 779, 782, 779, 2649, 33, 4288, 315, 3365, 787,
+ 4292, 787, 2583, 41, 782, 577, 33, 33, 780, 2664,
+ 2786, 779, 50, 2668, 41, 41, 2597, 2672, 2673, 19,
+ 20, 4229, 4230, 50, 50, 50, 2445, 2446, 763, 764,
+ 765, 343, 5762, 5763, 299, 33, 33, 513, 208, 515,
+ 516, 3997, 950, 41, 41, 6132, 6133, 5172, 3301, 208,
+ 4258, 208, 50, 50, 530, 3879, 532, 113, 114, 115,
+ 3868, 4372, 3870, 315, 782, 4273, 2721, 208, 389, 3997,
+ 391, 417, 2727, 1777, 141, 1286, 4141, 4142, 3886, 782,
+ 4145, 1292, 1293, 3336, 128, 3338, 3339, 4152, 4784, 997,
+ 5873, 3344, 4282, 5876, 746, 5396, 780, 670, 3922, 3352,
+ 2876, 3139, 2878, 3356, 425, 3358, 1664, 1665, 3146, 5130,
+ 5131, 670, 3283, 3284, 191, 3286, 3287, 2536, 2773, 2700,
+ 2775, 19, 20, 3412, 4312, 3835, 2781, 2708, 281, 2784,
+ 208, 2786, 2787, 4799, 455, 4325, 33, 3412, 5865, 5866,
+ 782, 2560, 2797, 460, 41, 315, 3883, 767, 768, 625,
+ 626, 128, 780, 50, 231, 3444, 315, 780, 315, 782,
+ 19, 20, 5892, 145, 786, 1073, 5896, 33, 731, 732,
+ 208, 734, 33, 736, 315, 41, 4097, 145, 662, 33,
+ 41, 208, 208, 28, 50, 30, 3412, 41, 782, 50,
+ 145, 268, 782, 312, 3412, 101, 50, 147, 766, 767,
+ 768, 769, 770, 771, 772, 773, 127, 787, 158, 5334,
+ 208, 208, 2631, 780, 33, 782, 166, 734, 33, 2638,
+ 281, 2876, 41, 2878, 2643, 780, 41, 782, 782, 787,
+ 2649, 50, 3412, 120, 782, 50, 780, 315, 782, 33,
+ 33, 341, 657, 436, 150, 2664, 144, 41, 41, 4119,
+ 780, 4121, 4782, 780, 743, 3412, 50, 50, 47, 359,
+ 268, 779, 33, 33, 33, 114, 366, 588, 1176, 287,
+ 41, 41, 41, 4628, 5428, 33, 33, 315, 128, 50,
+ 50, 50, 2863, 41, 41, 144, 3002, 3444, 315, 315,
+ 782, 391, 50, 50, 782, 780, 151, 782, 196, 249,
+ 730, 622, 33, 780, 141, 782, 606, 81, 33, 386,
+ 41, 208, 101, 647, 19, 20, 41, 315, 315, 50,
+ 780, 398, 782, 3137, 2979, 50, 4942, 277, 53, 4995,
+ 4008, 4009, 779, 584, 4012, 4013, 475, 196, 5004, 779,
+ 4018, 4019, 208, 704, 6074, 6075, 101, 208, 254, 780,
+ 580, 782, 2996, 3008, 208, 33, 779, 1265, 3002, 779,
+ 4976, 150, 2781, 41, 3002, 2784, 1375, 2071, 735, 1378,
+ 1379, 779, 50, 147, 3412, 333, 18, 19, 20, 333,
+ 780, 3036, 782, 780, 158, 782, 3041, 3042, 333, 208,
+ 296, 4580, 166, 208, 780, 150, 782, 81, 40, 305,
+ 203, 299, 780, 780, 551, 782, 3444, 2111, 314, 88,
+ 780, 780, 782, 782, 208, 208, 3071, 287, 315, 193,
+ 203, 498, 328, 427, 780, 3842, 3843, 766, 767, 768,
+ 769, 770, 771, 772, 773, 3842, 3843, 208, 208, 208,
+ 145, 782, 2146, 4364, 3099, 283, 3101, 3091, 3091, 315,
+ 208, 208, 779, 3091, 315, 2159, 3270, 1365, 360, 788,
+ 1368, 315, 780, 147, 24, 254, 351, 3243, 28, 780,
+ 30, 782, 32, 351, 158, 249, 3091, 208, 3133, 2183,
+ 2184, 786, 166, 208, 3216, 3091, 779, 4798, 386, 779,
+ 3145, 568, 779, 515, 516, 779, 315, 3273, 3274, 254,
+ 315, 779, 40, 277, 780, 779, 782, 296, 530, 193,
+ 532, 3797, 50, 780, 15, 782, 305, 55, 160, 779,
+ 4595, 315, 315, 779, 779, 314, 3943, 386, 780, 779,
+ 208, 4339, 4340, 3309, 24, 25, 3943, 4361, 28, 328,
+ 30, 296, 32, 779, 315, 315, 315, 226, 737, 73,
+ 305, 779, 779, 4761, 196, 57, 81, 315, 315, 314,
+ 5996, 3216, 780, 779, 782, 249, 3221, 6223, 33, 71,
+ 4635, 73, 780, 328, 782, 780, 41, 782, 3233, 780,
+ 311, 782, 3237, 225, 315, 50, 1566, 1567, 3243, 268,
+ 315, 737, 780, 277, 782, 1575, 3251, 1505, 4663, 497,
+ 3967, 3968, 4667, 625, 626, 283, 779, 779, 4644, 4674,
+ 780, 779, 3193, 151, 780, 4651, 782, 3036, 3273, 3274,
+ 24, 780, 147, 780, 28, 1605, 30, 1607, 32, 167,
+ 730, 38, 780, 158, 782, 779, 6072, 315, 497, 780,
+ 213, 166, 1622, 1623, 1624, 4956, 780, 779, 782, 1629,
+ 1630, 293, 4460, 780, 3309, 782, 779, 1637, 196, 338,
+ 213, 533, 534, 128, 4700, 537, 538, 539, 193, 33,
+ 3325, 213, 780, 47, 782, 6111, 1584, 41, 203, 5034,
+ 779, 386, 5298, 780, 779, 782, 50, 787, 393, 779,
+ 779, 1599, 1600, 18, 19, 20, 779, 779, 5364, 5315,
+ 238, 213, 780, 408, 780, 40, 782, 779, 779, 6145,
+ 3365, 780, 5328, 782, 5330, 40, 3297, 3298, 3299, 3300,
+ 55, 3302, 3303, 4198, 249, 430, 3145, 780, 53, 782,
+ 3385, 3386, 3387, 780, 413, 782, 3391, 23, 6174, 779,
+ 26, 27, 780, 208, 386, 31, 4702, 780, 73, 782,
+ 2454, 779, 277, 780, 780, 88, 75, 436, 779, 3340,
+ 3341, 751, 3343, 127, 3345, 3346, 3347, 3348, 3349, 3350,
+ 3351, 5118, 3353, 779, 99, 4064, 3357, 4985, 780, 780,
+ 782, 782, 780, 780, 463, 780, 779, 782, 4041, 4042,
+ 4043, 22, 23, 24, 25, 26, 27, 28, 29, 30,
+ 31, 32, 3221, 779, 306, 307, 780, 126, 782, 780,
+ 4618, 782, 4065, 4066, 3233, 4068, 151, 780, 3237, 782,
+ 1728, 780, 779, 782, 55, 723, 145, 1735, 5139, 31,
+ 535, 4120, 167, 88, 5005, 160, 780, 33, 782, 341,
+ 779, 160, 4120, 548, 208, 41, 744, 2551, 23, 779,
+ 315, 26, 27, 495, 50, 779, 31, 359, 787, 779,
+ 565, 196, 119, 780, 366, 782, 123, 779, 1776, 33,
+ 127, 196, 5582, 779, 779, 779, 201, 41, 203, 15,
+ 780, 214, 782, 780, 779, 744, 50, 779, 779, 391,
+ 145, 122, 780, 226, 782, 152, 92, 93, 94, 95,
+ 225, 15, 779, 238, 33, 779, 225, 4064, 4133, 4198,
+ 779, 168, 41, 4330, 780, 4140, 173, 779, 4143, 780,
+ 780, 50, 782, 4330, 782, 4150, 780, 5434, 779, 22,
+ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
+ 779, 584, 138, 139, 140, 780, 3365, 782, 281, 206,
+ 780, 315, 782, 4239, 5620, 780, 289, 782, 780, 779,
+ 782, 780, 779, 4120, 128, 780, 203, 780, 293, 782,
+ 201, 226, 3391, 779, 779, 4264, 5518, 763, 780, 658,
+ 782, 355, 779, 662, 779, 690, 780, 780, 779, 4264,
+ 779, 324, 1900, 189, 190, 779, 128, 779, 779, 128,
+ 705, 779, 779, 81, 779, 203, 3820, 75, 782, 780,
+ 780, 780, 208, 779, 4300, 779, 779, 779, 779, 4272,
+ 779, 346, 780, 780, 779, 399, 4064, 401, 779, 122,
+ 2734, 779, 779, 779, 289, 292, 81, 779, 4264, 779,
+ 4293, 4198, 779, 779, 208, 22, 4264, 24, 25, 779,
+ 779, 28, 29, 30, 31, 779, 735, 253, 126, 290,
+ 5407, 386, 779, 779, 743, 384, 258, 782, 5626, 147,
+ 5417, 670, 460, 779, 5632, 5633, 688, 145, 127, 208,
+ 158, 688, 4120, 704, 4264, 676, 510, 429, 166, 2793,
+ 143, 782, 160, 422, 2002, 782, 2004, 782, 582, 360,
+ 782, 785, 147, 436, 2808, 127, 394, 4264, 201, 782,
+ 752, 782, 579, 158, 699, 193, 763, 491, 7, 315,
+ 316, 166, 5433, 40, 743, 3780, 463, 463, 24, 25,
+ 463, 779, 28, 50, 30, 5325, 32, 10, 55, 677,
+ 465, 782, 217, 31, 2848, 2849, 136, 296, 193, 217,
+ 151, 315, 65, 393, 2858, 2859, 2860, 225, 203, 2863,
+ 4198, 18, 19, 20, 408, 3, 3821, 541, 583, 743,
+ 495, 249, 403, 40, 787, 427, 311, 54, 47, 410,
+ 3835, 436, 3837, 40, 127, 782, 315, 3842, 3843, 787,
+ 3845, 120, 787, 3848, 3849, 182, 422, 290, 643, 277,
+ 704, 780, 333, 333, 249, 33, 333, 4682, 463, 141,
+ 506, 311, 561, 41, 588, 411, 73, 24, 25, 26,
+ 3952, 28, 50, 30, 128, 32, 4264, 5035, 730, 154,
+ 311, 779, 277, 177, 151, 786, 782, 106, 105, 47,
+ 5276, 5277, 99, 5279, 5555, 779, 3901, 787, 427, 5420,
+ 167, 3895, 3896, 780, 4425, 4426, 4427, 4428, 4429, 4430,
+ 4431, 4432, 4433, 4434, 3845, 4436, 4437, 4438, 4439, 4440,
+ 4441, 4442, 4443, 4444, 4445, 594, 106, 4448, 4449, 196,
+ 780, 336, 478, 2191, 782, 780, 3941, 2267, 3943, 780,
+ 2270, 3946, 3947, 787, 24, 25, 26, 3952, 28, 780,
+ 30, 648, 32, 160, 678, 4108, 2286, 780, 127, 127,
+ 403, 250, 3967, 3968, 780, 787, 384, 410, 780, 3974,
+ 577, 238, 779, 167, 191, 658, 700, 2307, 779, 196,
+ 5888, 136, 18, 19, 20, 660, 5144, 5373, 782, 196,
+ 287, 788, 677, 782, 201, 127, 203, 602, 544, 770,
+ 546, 73, 4938, 4939, 40, 4941, 552, 2265, 2266, 787,
+ 4946, 4052, 782, 4949, 231, 4536, 4952, 4953, 225, 127,
+ 4541, 688, 770, 360, 4960, 151, 4962, 4666, 5725, 490,
+ 208, 701, 451, 702, 127, 4971, 782, 73, 435, 644,
+ 688, 4666, 4617, 4682, 4619, 264, 127, 266, 4666, 3103,
+ 3104, 268, 735, 33, 4629, 780, 5577, 662, 277, 779,
+ 743, 41, 779, 99, 782, 154, 612, 3, 3837, 406,
+ 50, 782, 4647, 362, 293, 151, 217, 752, 363, 239,
+ 510, 370, 360, 510, 4659, 3139, 293, 510, 5793, 2347,
+ 4666, 4096, 3146, 510, 4099, 510, 385, 510, 4666, 763,
+ 4675, 782, 2360, 708, 782, 283, 395, 396, 397, 120,
+ 656, 19, 20, 676, 4108, 4108, 405, 24, 25, 47,
+ 4108, 28, 287, 30, 160, 32, 127, 596, 71, 4123,
+ 735, 743, 713, 673, 158, 716, 4666, 315, 743, 346,
+ 5526, 780, 5528, 5529, 725, 780, 780, 484, 128, 57,
+ 780, 780, 158, 96, 4833, 210, 779, 782, 137, 4666,
+ 196, 787, 65, 33, 251, 201, 109, 203, 439, 386,
+ 787, 41, 3941, 780, 664, 4682, 594, 3946, 3947, 386,
+ 50, 398, 125, 53, 391, 418, 779, 782, 4193, 225,
+ 6206, 595, 2450, 480, 4199, 5735, 480, 33, 3967, 3968,
+ 780, 283, 748, 782, 68, 41, 734, 703, 2466, 782,
+ 547, 206, 155, 759, 50, 22, 23, 24, 25, 26,
+ 27, 28, 29, 30, 31, 32, 563, 564, 208, 222,
+ 33, 568, 569, 570, 6091, 128, 19, 20, 41, 4842,
+ 4843, 4844, 4845, 203, 782, 4848, 4849, 50, 782, 779,
+ 4853, 4930, 33, 4856, 543, 474, 4859, 293, 287, 4862,
+ 41, 63, 146, 4866, 4867, 154, 555, 649, 97, 50,
+ 713, 42, 53, 716, 57, 4945, 4281, 780, 4666, 780,
+ 780, 498, 725, 5823, 702, 427, 780, 770, 495, 780,
+ 128, 234, 128, 780, 4682, 2553, 780, 769, 787, 636,
+ 217, 779, 31, 5964, 780, 780, 780, 780, 4313, 780,
+ 346, 378, 780, 780, 780, 122, 763, 780, 780, 4840,
+ 780, 4326, 145, 780, 782, 4330, 782, 5867, 4333, 81,
+ 782, 4852, 780, 2591, 2592, 315, 780, 4501, 208, 5250,
+ 780, 782, 780, 782, 780, 780, 780, 779, 591, 686,
+ 386, 568, 295, 411, 780, 779, 31, 779, 4363, 773,
+ 31, 782, 270, 779, 427, 6222, 655, 4372, 779, 5305,
+ 779, 779, 208, 281, 131, 128, 4381, 787, 127, 127,
+ 782, 782, 4313, 504, 4378, 4373, 128, 787, 782, 4515,
+ 3444, 787, 782, 782, 201, 147, 4999, 782, 5001, 787,
+ 5003, 780, 4333, 613, 693, 208, 158, 5046, 258, 4414,
+ 677, 5050, 780, 782, 166, 4420, 53, 782, 707, 4424,
+ 478, 5046, 100, 47, 782, 5050, 670, 208, 5046, 6090,
+ 2688, 365, 2690, 2691, 2692, 782, 127, 576, 158, 158,
+ 750, 193, 4447, 507, 72, 315, 549, 75, 439, 123,
+ 5971, 203, 557, 660, 779, 268, 268, 657, 268, 495,
+ 679, 680, 681, 682, 268, 314, 409, 410, 268, 203,
+ 5046, 779, 127, 763, 5050, 763, 5387, 763, 5046, 315,
+ 763, 4486, 5050, 290, 734, 299, 544, 270, 546, 763,
+ 4495, 4573, 576, 763, 552, 5174, 168, 249, 126, 5178,
+ 5179, 129, 4628, 763, 763, 763, 763, 763, 416, 5112,
+ 4515, 4637, 315, 18, 19, 20, 5046, 145, 763, 787,
+ 5050, 763, 430, 763, 432, 277, 763, 119, 763, 763,
+ 6191, 123, 160, 763, 315, 127, 34, 6077, 763, 5046,
+ 333, 5180, 763, 5050, 6205, 752, 782, 299, 763, 2807,
+ 6211, 763, 763, 782, 612, 5180, 464, 6218, 4563, 763,
+ 152, 763, 5180, 386, 287, 787, 287, 787, 4573, 477,
+ 393, 755, 392, 4578, 6095, 506, 168, 154, 786, 780,
+ 153, 173, 4513, 153, 787, 408, 4580, 780, 780, 217,
+ 780, 780, 213, 769, 99, 780, 787, 225, 656, 769,
+ 787, 65, 510, 410, 5180, 5244, 780, 430, 780, 4603,
+ 4603, 5250, 5180, 779, 206, 558, 559, 779, 782, 5244,
+ 528, 338, 5261, 4628, 660, 287, 697, 287, 241, 584,
+ 492, 128, 4637, 416, 262, 128, 5261, 787, 787, 779,
+ 145, 779, 232, 30, 769, 4414, 780, 430, 763, 432,
+ 5180, 782, 779, 763, 782, 4424, 4661, 779, 5046, 5570,
+ 733, 203, 5050, 545, 333, 293, 126, 203, 5244, 203,
+ 50, 287, 158, 5180, 158, 712, 5244, 408, 782, 780,
+ 408, 464, 31, 31, 31, 5261, 240, 283, 53, 779,
+ 748, 779, 4818, 5261, 477, 787, 779, 245, 606, 127,
+ 292, 759, 770, 780, 584, 613, 72, 143, 770, 75,
+ 215, 470, 535, 782, 5244, 623, 752, 787, 779, 779,
+ 786, 95, 351, 352, 155, 548, 779, 510, 4854, 637,
+ 155, 5261, 780, 780, 780, 780, 30, 5244, 787, 779,
+ 782, 782, 565, 5250, 206, 528, 780, 780, 5387, 780,
+ 780, 153, 780, 4758, 5261, 780, 384, 780, 3016, 388,
+ 126, 669, 779, 129, 672, 780, 65, 272, 273, 274,
+ 779, 5450, 779, 716, 763, 3033, 128, 5935, 31, 145,
+ 688, 31, 232, 782, 6170, 782, 780, 292, 313, 4948,
+ 232, 88, 5180, 4798, 160, 779, 704, 779, 427, 734,
+ 554, 408, 4807, 4797, 4797, 203, 779, 779, 299, 299,
+ 779, 719, 378, 4818, 53, 782, 4821, 780, 4823, 31,
+ 782, 446, 208, 606, 287, 53, 131, 439, 251, 502,
+ 613, 224, 129, 4838, 391, 4876, 576, 779, 779, 127,
+ 623, 346, 127, 348, 30, 65, 256, 3105, 145, 4854,
+ 780, 168, 504, 780, 637, 314, 5244, 780, 643, 225,
+ 782, 206, 5250, 368, 65, 780, 780, 690, 347, 4874,
+ 4875, 782, 782, 5261, 169, 217, 780, 314, 4883, 780,
+ 5387, 386, 705, 4814, 780, 6043, 669, 447, 393, 672,
+ 780, 173, 779, 754, 763, 167, 262, 782, 741, 250,
+ 418, 418, 217, 408, 53, 688, 713, 203, 5034, 716,
+ 415, 641, 780, 676, 641, 299, 299, 30, 170, 4850,
+ 4851, 779, 30, 593, 4929, 430, 217, 293, 384, 4860,
+ 217, 5570, 65, 217, 217, 159, 719, 4942, 4943, 4944,
+ 705, 159, 217, 4874, 705, 4940, 217, 592, 217, 4954,
+ 217, 4956, 217, 603, 4885, 203, 203, 386, 4963, 4964,
+ 4955, 485, 128, 439, 4969, 262, 594, 584, 203, 154,
+ 4965, 4976, 310, 602, 314, 391, 4981, 4972, 310, 4974,
+ 4975, 576, 487, 99, 281, 577, 237, 57, 779, 498,
+ 619, 4996, 497, 780, 780, 613, 293, 549, 780, 5387,
+ 780, 155, 780, 782, 3262, 780, 780, 71, 5647, 782,
+ 4064, 362, 780, 5018, 780, 65, 645, 406, 384, 370,
+ 780, 50, 5647, 787, 780, 780, 5665, 654, 5069, 5034,
+ 535, 782, 782, 780, 385, 779, 779, 53, 779, 31,
+ 779, 338, 787, 548, 395, 396, 397, 780, 378, 117,
+ 65, 65, 65, 779, 405, 779, 6214, 686, 446, 4990,
+ 30, 331, 741, 5570, 5069, 141, 4120, 160, 5073, 4838,
+ 225, 5647, 390, 741, 702, 669, 314, 5794, 422, 5647,
+ 317, 424, 587, 281, 295, 787, 763, 127, 593, 30,
+ 782, 780, 549, 780, 780, 445, 685, 779, 782, 780,
+ 419, 583, 160, 779, 160, 236, 53, 105, 203, 127,
+ 3368, 5828, 779, 779, 65, 780, 413, 5647, 779, 782,
+ 65, 780, 5127, 779, 782, 65, 780, 127, 31, 287,
+ 411, 127, 160, 782, 5139, 5140, 314, 287, 780, 782,
+ 5647, 584, 5147, 30, 4198, 461, 651, 780, 780, 780,
+ 649, 5156, 601, 658, 5159, 5160, 601, 779, 5665, 5164,
+ 440, 787, 367, 5168, 779, 779, 72, 299, 779, 576,
+ 6, 5176, 120, 287, 120, 4944, 5181, 5303, 5848, 787,
+ 281, 787, 5570, 787, 787, 690, 787, 787, 92, 93,
+ 94, 95, 543, 780, 4963, 73, 787, 287, 287, 787,
+ 705, 706, 787, 787, 555, 787, 787, 787, 787, 787,
+ 281, 787, 685, 718, 584, 72, 72, 5934, 160, 5740,
+ 5741, 50, 5743, 5744, 5745, 5746, 787, 780, 594, 696,
+ 711, 30, 782, 782, 138, 139, 140, 5242, 779, 18,
+ 780, 576, 218, 65, 65, 144, 779, 779, 99, 5290,
+ 99, 5292, 5183, 217, 428, 584, 584, 296, 649, 5647,
+ 779, 418, 418, 779, 5269, 430, 5271, 780, 5199, 780,
+ 782, 180, 779, 779, 160, 779, 48, 5665, 702, 160,
+ 741, 201, 339, 99, 296, 189, 190, 53, 154, 640,
+ 779, 5296, 5297, 5298, 5299, 787, 5291, 6208, 5303, 5304,
+ 697, 5306, 780, 589, 655, 779, 5311, 5312, 80, 779,
+ 5315, 203, 787, 659, 779, 5320, 5321, 426, 198, 737,
+ 127, 779, 5327, 5328, 779, 5330, 422, 780, 207, 101,
+ 173, 779, 338, 5338, 780, 779, 702, 251, 110, 585,
+ 5861, 780, 693, 5864, 779, 5509, 787, 644, 218, 253,
+ 782, 5872, 782, 480, 5875, 332, 707, 203, 704, 131,
+ 5365, 658, 203, 108, 112, 662, 780, 780, 780, 203,
+ 65, 780, 5377, 145, 296, 101, 5381, 203, 150, 203,
+ 143, 649, 116, 432, 30, 779, 5989, 258, 3091, 2571,
+ 782, 3359, 5003, 4999, 5001, 3212, 5631, 142, 4030, 5255,
+ 5662, 173, 5812, 6032, 757, 1746, 5073, 1417, 4463, 5242,
+ 3957, 708, 316, 5046, 5377, 5504, 5394, 5590, 4679, 1734,
+ 3910, 2592, 3437, 3381, 2069, 820, 4198, 2182, 5433, 5500,
+ 2183, 5499, 2184, 5226, 179, 4562, 4051, 5442, 735, 5319,
+ 5123, 5446, 4322, 4326, 4758, 2420, 5855, 5420, 5453, 5454,
+ 5966, 6095, 6056, 5458, 5459, 5748, 5418, 1405, 4937, 2699,
+ 232, 4557, 5653, 4981, 236, 5168, 4563, 5293, 4832, 6080,
+ 5924, 5512, 818, 5934, 5828, 5817, 5817, 5817, 5817, 4261,
+ 4141, 3739, 254, 4214, 4189, 5937, 258, 259, 5848, 4626,
+ 3783, 5496, 5066, 4289, 4292, 4284, 6101, 5502, 88, 88,
+ 6074, 5638, 6075, 5880, 3204, 5499, 5511, 411, 5892, 5896,
+ 5539, 4651, 5517, 5289, 3944, 5287, 4562, 289, 4978, 1511,
+ 1426, 3779, 1929, 3192, 296, 297, 5706, 3187, 5846, 2727,
+ 5543, 2085, 3036, 2560, 2817, 3391, 4126, 5542, 134, 1392,
+ 2996, 763, 3134, 5548, 1339, 5550, 1379, 4600, 3266, 5590,
+ 5555, 4313, 3045, 2944, 1159, 2947, 1668, 3014, 3013, 5564,
+ 3820, 1724, 3729, 1590, 1569, 4701, 6033, 5816, 5694, 6208,
+ 5575, 5576, 6133, 6132, 478, 1337, 4902, 1983, 1600, 1337,
+ 1978, 353, 4366, 5820, 5274, 5590, 4807, 5821, 1575, 3847,
+ 1973, 1337, 3806, 2678, 4495, 3253, 5365, 4494, 3804, 1337,
+ 1337, 5118, 5725, 4784, 950, 5646, 5611, 1999, 5555, 5650,
+ 5114, 4702, 4666, 3269, 3262, 5135, 769, 5622, 2672, 4272,
+ 966, 393, 5627, 1400, 970, 4501, 106, 2773, 4682, 88,
+ 5635, 2148, 5637, 688, 1370, 4123, 2810, 4378, 4813, 1249,
+ 544, 3294, 546, 4365, 4363, 6090, 5651, 993, 552, 5433,
+ 834, 997, 3910, 5658, 835, 2097, 1002, 679, 1806, 2532,
+ 679, 2533, 3126, 1395, 436, 2586, 5496, 5793, 679, 441,
+ 5150, 1918, 1516, 4129, 6093, 4907, 6138, 5682, 5283, 6211,
+ 452, 453, 6218, 2552, 2807, 5454, 5139, 5692, 954, 5694,
+ 2863, 3103, 678, 2188, 3104, 5700, 5701, 5702, 2466, 678,
+ 3105, 6208, 3100, 5698, 3854, 2164, 1174, 3096, 612, 3095,
+ 676, 1746, 1504, 1140, 1504, 2721, 5721, 1949, 4040, 3041,
+ 4515, 1067, 1068, 1069, 1070, 4606, 3207, 1073, 4052, 717,
+ 112, 5361, 88, 88, 1080, 1282, 481, 88, 918, 3997,
+ 4886, 4120, 5868, 3438, 5785, 5665, -1, -1, 2185, 5263,
+ -1, -1, 656, -1, 5759, -1, -1, -1, -1, 5764,
+ -1, 5802, -1, -1, -1, 5770, 511, 512, -1, 514,
+ 515, 516, 517, 518, -1, 520, 521, 522, 523, 524,
+ 525, 526, 527, -1, 529, 530, 531, 532, 5793, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 5809, -1, 5811, -1, -1, -1,
+ -1, 5816, -1, -1, -1, 5820, 5821, -1, -1, -1,
+ 6208, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 1176, -1, -1, -1, -1, 607, -1, -1, -1, -1,
+ -1, 5846, -1, -1, 748, 617, -1, -1, -1, 5780,
+ 5855, -1, -1, -1, -1, 759, 628, -1, 5924, -1,
+ 5986, -1, 634, 5868, -1, -1, -1, 6031, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 625, 626, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 665, -1, 5900, 5937, 669, -1, -1,
+ -1, -1, -1, 5908, -1, 5910, 5911, -1, -1, -1,
+ -1, -1, -1, -1, -1, 1261, -1, -1, -1, 1265,
+ -1, -1, -1, 5692, -1, -1, 698, -1, 6054, -1,
+ 5924, 5862, 5863, 5702, 5939, -1, 5924, -1, -1, -1,
+ -1, -1, -1, 5874, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 5964,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 5986, -1, -1, -1, -1, -1, 6028, -1, -1,
+ -1, -1, 5046, -1, -1, -1, -1, -1, -1, 6004,
+ 6005, -1, -1, 6008, -1, -1, -1, -1, -1, -1,
+ 6015, -1, -1, -1, -1, -1, -1, -1, -1, 1365,
+ -1, -1, 1368, -1, 6029, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 6079, 6080,
+ -1, -1, 5811, -1, 5975, -1, -1, 5978, -1, 6054,
+ -1, -1, -1, -1, -1, 6219, -1, -1, -1, -1,
+ -1, -1, -1, 6068, -1, -1, -1, -1, -1, 6195,
+ -1, -1, -1, -1, 6200, -1, 6117, -1, 6083, -1,
+ -1, -1, -1, -1, -1, 6090, -1, -1, -1, 1435,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 5180, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 1505,
+ -1, -1, -1, -1, -1, -1, -1, -1, 1514, -1,
+ 1516, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 6191, -1, -1, -1,
+ 6195, -1, -1, -1, -1, 6200, 5250, -1, -1, -1,
+ 6205, -1, -1, -1, -1, -1, 6211, -1, -1, -1,
+ -1, -1, -1, 6218, -1, -1, 1562, 1563, -1, -1,
+ -1, -1, 1568, -1, -1, -1, 1572, 1573, 1574, -1,
+ -1, -1, -1, -1, -1, -1, 1582, 1583, 1584, -1,
+ -1, -1, 1588, -1, -1, -1, 1592, 1593, 1594, -1,
+ 1596, 1597, 1598, 1599, 1600, -1, -1, -1, -1, -1,
+ 1606, -1, 1608, -1, -1, 1611, 1612, 1613, 1614, -1,
+ 1616, -1, 1618, 1619, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 1632, 1633, 1634, 1635,
+ 1636, -1, 1638, 1639, 1640, 1641, 1642, 1643, -1, 1645,
+ 1646, -1, 1648, 1649, -1, 1651, 1652, -1, -1, 1655,
+ 1656, -1, 1658, 1659, -1, 1661, -1, 1663, -1, -1,
+ -1, 1667, 1668, 1669, -1, -1, 1672, 1673, 1674, 1675,
+ -1, 1677, -1, 5387, -1, -1, -1, -1, 1684, -1,
+ -1, -1, -1, -1, 1690, 1691, 1692, 1693, -1, -1,
+ -1, -1, -1, -1, -1, 1701, 1702, -1, 1704, 1705,
+ -1, -1, 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715,
+ 1716, 1717, 1718, 1719, 1720, -1, -1, 1723, -1, -1,
+ -1, -1, 1728, -1, -1, -1, -1, -1, -1, 1735,
+ -1, -1, -1, -1, -1, -1, 6, 7, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 18, 19,
+ 20, -1, 1758, -1, -1, -1, 6, 7, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 18, -1,
+ 1776, -1, -1, -1, -1, -1, 46, -1, 48, 49,
+ -1, -1, -1, -1, 4702, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 70, -1, 72, 53, -1, -1, -1, -1, 78, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
+ -1, 81, -1, -1, -1, -1, -1, -1, -1, -1,
+ 110, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 4772, -1, 5570, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 1874, 119,
+ 1876, -1, -1, 123, -1, 145, -1, 127, 18, 19,
+ 20, -1, -1, -1, -1, -1, 136, 137, -1, -1,
+ -1, -1, -1, 143, 1900, -1, -1, 147, -1, -1,
+ -1, -1, 152, 173, 154, 1911, -1, -1, 158, -1,
+ -1, -1, -1, -1, -1, -1, 166, -1, 168, -1,
+ -1, -1, -1, 173, -1, -1, -1, -1, -1, -1,
+ -1, 71, -1, 73, 204, -1, 206, -1, -1, -1,
+ -1, -1, -1, 193, -1, 215, -1, 217, -1, -1,
+ -1, 5665, -1, 203, -1, -1, 206, -1, -1, 99,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 240, -1, -1, -1, -1, -1, 226, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 1996, -1, -1, -1, -1, 245, 2002, -1, 2004, 249,
+ -1, -1, 272, 273, 274, 145, -1, -1, 258, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 2024, -1,
+ -1, -1, 292, -1, -1, -1, -1, 277, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 292, -1, -1, -1, -1, -1, 298, 299,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 312, -1, 314, -1, -1, -1, 338, -1,
+ -1, -1, -1, -1, -1, 215, 346, -1, 348, -1,
+ -1, -1, 11, -1, 13, -1, -1, -1, -1, 18,
+ 19, 20, -1, -1, -1, -1, -1, -1, 368, -1,
+ -1, -1, -1, -1, -1, 375, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 386, -1, -1, -1,
+ -1, -1, -1, 393, -1, -1, -1, -1, -1, -1,
+ -1, -1, 272, 273, 274, -1, -1, -1, 408, -1,
+ -1, -1, 71, 2149, 73, 415, -1, -1, -1, 419,
+ 420, -1, 292, -1, -1, -1, 426, -1, -1, -1,
+ 430, -1, -1, -1, -1, -1, -1, -1, 438, -1,
+ 99, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 2191, 2192, -1, -1, 459,
+ -1, -1, -1, -1, 2200, 2201, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 346, -1, 348, 459,
+ -1, -1, -1, 483, -1, -1, 145, 487, -1, -1,
+ -1, -1, -1, -1, -1, -1, 366, 497, 368, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 167, -1,
+ -1, -1, -1, -1, -1, -1, 386, -1, 2254, -1,
+ -1, -1, -1, 393, -1, -1, -1, -1, -1, 2265,
+ 2266, -1, -1, -1, -1, 535, -1, -1, 408, -1,
+ -1, -1, -1, -1, -1, 415, -1, -1, 548, -1,
+ 550, -1, -1, -1, -1, -1, 215, -1, -1, -1,
+ 430, -1, 2298, 2299, 2300, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 587, -1, -1,
+ -1, -1, -1, 593, -1, -1, -1, 577, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 6, 7, -1,
+ -1, 2347, -1, 272, 273, 274, -1, 487, 618, 18,
+ -1, 2357, -1, -1, 2360, -1, -1, 497, -1, 629,
+ 630, 631, -1, 292, -1, -1, -1, -1, -1, 2375,
+ -1, -1, -1, 2379, 2380, -1, 2382, 2383, -1, -1,
+ -1, 651, -1, -1, 53, 2391, -1, 2393, 658, -1,
+ -1, -1, -1, -1, -1, 535, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 548, -1,
+ -1, -1, 81, -1, -1, -1, -1, 346, 2424, 348,
+ 690, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 705, 706, 366, -1, 368,
+ -1, -1, -1, -1, 2450, -1, -1, 587, 718, -1,
+ 119, -1, 722, 593, 123, -1, 2462, 386, 127, -1,
+ 2466, -1, -1, -1, 393, -1, -1, 136, 137, 2475,
+ -1, -1, -1, -1, -1, -1, -1, -1, 147, 408,
+ 2486, -1, -1, 152, -1, 154, 415, -1, -1, 158,
+ -1, -1, -1, -1, 6208, -1, 2502, 166, -1, 168,
+ 750, 430, -1, -1, 173, -1, -1, -1, -1, -1,
+ 5428, 651, -1, 763, -1, -1, 786, -1, 658, -1,
+ -1, -1, -1, -1, 193, -1, -1, -1, -1, -1,
+ 780, -1, 782, 2539, 203, 785, 786, 206, -1, -1,
+ 2546, -1, -1, -1, -1, -1, -1, 2553, -1, -1,
+ 690, -1, -1, -1, -1, -1, -1, 226, 487, -1,
+ -1, -1, -1, -1, -1, 705, 706, -1, 497, -1,
+ -1, -1, -1, -1, -1, -1, 245, -1, 718, -1,
+ 249, -1, -1, -1, -1, 2591, 2592, -1, -1, 258,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 535, -1, 277, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 548,
+ -1, -1, -1, 292, -1, -1, -1, -1, -1, -1,
+ 299, -1, -1, -1, -1, -1, 2642, -1, -1, -1,
+ -1, -1, 782, 312, -1, 314, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 587, -1,
+ -1, -1, -1, -1, 593, -1, -1, -1, -1, 2675,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 2688, -1, 2690, 2691, 2692, -1, 2694, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 651, -1, -1, -1, -1, 2733, -1, 658,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 690, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 705, 706, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 718,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 2807, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 2864, -1,
+ -1, -1, 2868, -1, -1, 2871, -1, -1, -1, -1,
+ -1, -1, -1, -1, 2880, -1, -1, -1, -1, -1,
+ -1, -1, -1, 2889, -1, 2891, 2892, -1, 2894, 2895,
+ 2896, 2897, -1, 2899, -1, 2901, 2902, -1, 2904, -1,
+ -1, -1, -1, -1, -1, -1, 2912, 2913, 577, -1,
+ -1, 2917, 2918, 2919, -1, -1, -1, -1, -1, -1,
+ -1, 2927, 2928, 2929, -1, 2931, -1, 2933, -1, 2935,
+ -1, 2937, -1, 2939, -1, -1, -1, -1, 2944, 2945,
+ -1, 2947, 2948, 2949, -1, -1, -1, 2953, -1, -1,
+ 2956, -1, -1, -1, -1, -1, -1, -1, -1, 2965,
+ -1, -1, 2968, -1, 2970, 2971, 2972, -1, -1, 2975,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 2997, 5, 2999, 7, -1, 3002, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 3012, 3013, 3014, 3015,
+ 3016, 3017, -1, -1, -1, -1, 3022, -1, -1, -1,
+ -1, -1, -1, -1, -1, 659, -1, 3033, -1, -1,
+ -1, -1, -1, -1, -1, 48, 49, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 66, -1, 68, -1, 70, -1, 72,
+ -1, -1, -1, -1, 3070, -1, -1, 80, -1, -1,
+ 704, -1, -1, -1, -1, -1, 3082, -1, -1, -1,
+ -1, 750, -1, 3089, -1, -1, -1, -1, 101, -1,
+ 103, 104, 19, 20, 763, -1, -1, 110, -1, 3105,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 780, -1, 782, 127, -1, 785, 786, 131, -1,
+ 47, -1, 49, -1, -1, -1, -1, -1, 141, -1,
+ 57, -1, 3138, -1, -1, -1, -1, 150, -1, -1,
+ -1, -1, -1, -1, 71, -1, -1, -1, 161, -1,
+ -1, -1, 79, 80, 3160, -1, -1, -1, 171, -1,
+ 173, -1, 89, -1, 177, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 103, 104, -1, -1,
+ -1, -1, -1, -1, 818, -1, -1, -1, -1, -1,
+ -1, 204, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 216, 217, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 227, 228, -1, -1, 145, -1,
+ -1, -1, -1, 3229, -1, -1, 239, 240, 241, -1,
+ 243, -1, 159, -1, -1, 248, -1, -1, -1, -1,
+ -1, 254, -1, -1, 3250, 258, 259, 260, -1, -1,
+ -1, -1, -1, -1, -1, -1, 3262, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 294, -1, 296, -1, 298, -1, 214, -1, -1,
+ -1, -1, 305, -1, -1, -1, -1, -1, -1, 226,
+ 313, 314, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 328, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 966, -1, -1, -1, 970, 350, 351, -1,
+ 353, -1, -1, -1, -1, -1, -1, 360, -1, -1,
+ -1, -1, -1, -1, 281, 368, -1, -1, -1, 993,
+ -1, -1, 3368, -1, -1, -1, -1, -1, 1002, -1,
+ -1, -1, -1, -1, 3380, 388, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 324, -1, 412,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 422,
+ -1, -1, -1, -1, -1, -1, -1, 344, -1, -1,
+ -1, -1, -1, -1, -1, -1, 353, -1, 441, 3435,
+ -1, -1, -1, 1067, 1068, 1069, 1070, -1, -1, 366,
+ -1, 3447, -1, 456, 3450, -1, 1080, -1, -1, -1,
+ 377, -1, -1, -1, 467, -1, -1, 470, -1, -1,
+ 473, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 400, -1, 488, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 429, 430, -1, -1, 433, -1, 435, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 462, 463, -1, -1, -1,
+ -1, 468, 469, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 485, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 506,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 602,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 528, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 631, -1,
+ -1, -1, 635, -1, -1, -1, -1, 1261, -1, -1,
+ -1, -1, 645, -1, -1, -1, -1, -1, -1, -1,
+ 653, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 665, -1, -1, 582, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 597, -1, -1, 686, -1, -1, 689, -1, -1, 606,
+ -1, -1, 609, 610, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 624, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 722,
+ -1, -1, -1, -1, -1, -1, -1, -1, 731, 3725,
+ 3726, -1, -1, -1, 3730, -1, -1, -1, -1, -1,
+ -1, -1, -1, 3739, 661, -1, -1, -1, -1, -1,
+ -1, -1, 669, -1, 757, -1, 3752, -1, 3754, -1,
+ 3756, -1, 3758, -1, -1, -1, -1, -1, -1, -1,
+ -1, 688, -1, 690, -1, -1, 779, 3773, -1, -1,
+ -1, -1, -1, 3779, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 3792, 3793, -1, -1,
+ -1, 3797, -1, 3799, -1, 3801, -1, -1, -1, -1,
+ 3806, 1435, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 740, -1, -1, -1, -1, -1, -1,
+ 747, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 3847, -1, -1, -1, -1, -1, 3853, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 3867, -1, -1, -1, 3871, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 1514, -1, 1516, 3889, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 3910, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 1562, 1563,
+ -1, -1, -1, -1, 1568, -1, -1, -1, 1572, 1573,
+ 1574, -1, -1, -1, -1, -1, -1, -1, 1582, 1583,
+ -1, -1, -1, -1, 1588, -1, -1, -1, 1592, 1593,
+ 1594, -1, 1596, 1597, 1598, 3971, -1, -1, -1, -1,
+ -1, -1, 1606, -1, 1608, 3981, -1, 1611, 1612, 1613,
+ 1614, -1, 1616, -1, 1618, 1619, -1, -1, -1, 3995,
+ -1, 3997, 3998, -1, -1, -1, -1, -1, 1632, 1633,
+ 1634, 1635, 1636, -1, 1638, 1639, 1640, 1641, 1642, 1643,
+ -1, 1645, 1646, -1, 1648, 1649, -1, 1651, 1652, -1,
+ -1, 1655, 1656, -1, 1658, 1659, -1, 1661, -1, 1663,
+ -1, -1, -1, 1667, 1668, 1669, -1, -1, 1672, 1673,
+ 1674, 1675, -1, 1677, -1, -1, -1, -1, -1, -1,
+ 1684, -1, -1, -1, -1, -1, 1690, 1691, 1692, 1693,
+ -1, -1, -1, -1, -1, -1, -1, 1701, 1702, -1,
+ 1704, 1705, -1, -1, 1708, 1709, 1710, 1711, 1712, 1713,
+ 1714, 1715, 1716, 1717, 1718, 1719, 1720, -1, -1, 1723,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 1758, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 4236, 4237, 5, 4239, -1, -1, -1, -1, -1, -1,
+ 1874, -1, 1876, -1, -1, -1, 4252, 4253, 4254, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 4276, 4277, -1, -1, -1, 48, 49, 1911, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 66, 4300, 68, -1, 70, -1, 72,
+ -1, -1, -1, -1, -1, -1, 4312, 80, -1, -1,
+ -1, -1, -1, -1, -1, 4321, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 101, -1,
+ 103, 104, -1, -1, -1, 4341, -1, 110, -1, -1,
+ 4346, 4347, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 127, -1, -1, -1, 131, 4365,
+ -1, -1, 1996, 4369, -1, -1, -1, -1, 141, -1,
+ -1, -1, -1, -1, -1, -1, -1, 150, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 161, -1,
+ 2024, -1, -1, -1, -1, -1, -1, -1, 171, -1,
+ 173, -1, -1, -1, 177, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 204, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 216, 217, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 227, 228, -1, -1, -1, -1,
+ -1, -1, -1, 18, 19, 20, 239, 240, 241, -1,
+ 243, -1, -1, -1, -1, 248, -1, -1, -1, -1,
+ -1, 254, -1, -1, -1, 258, 259, 260, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 2149, 71, -1, 73, -1,
+ -1, 294, -1, 296, -1, 298, -1, -1, -1, -1,
+ -1, -1, 305, -1, -1, -1, -1, -1, -1, -1,
+ 313, 314, -1, -1, 99, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 328, -1, -1, 2192, -1,
+ -1, -1, -1, -1, 4570, 4571, 2200, 2201, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 350, 351, -1,
+ 353, -1, -1, -1, -1, -1, -1, 360, -1, -1,
+ 145, -1, -1, -1, -1, 368, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 659, -1, -1, -1, -1, 388, -1, -1, -1, -1,
+ 2254, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 412,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 422,
+ -1, -1, -1, -1, -1, 704, -1, -1, -1, -1,
+ 215, -1, -1, -1, 2298, 2299, 2300, -1, 441, 56,
+ 57, -1, -1, -1, 61, 62, -1, -1, -1, -1,
+ -1, -1, -1, 456, 71, -1, -1, -1, -1, -1,
+ -1, -1, -1, 4699, 467, -1, 4702, 470, -1, -1,
+ 473, -1, -1, -1, -1, -1, -1, -1, -1, 96,
+ -1, -1, -1, -1, -1, 488, -1, 272, 273, 274,
+ -1, -1, 109, 2357, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 292, 125, -1,
+ 127, 2375, -1, -1, -1, 2379, 2380, 4753, 2382, 2383,
+ -1, -1, -1, -1, -1, -1, -1, 2391, -1, 2393,
+ -1, -1, -1, -1, -1, -1, 4772, -1, 155, 818,
+ -1, -1, -1, -1, 4780, 4781, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 174, 175, 176,
+ 2424, 346, -1, 348, -1, -1, -1, 184, 185, 186,
+ -1, -1, -1, -1, -1, -1, -1, 4813, -1, -1,
+ -1, 366, -1, 368, -1, 202, 2450, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 2462, 602,
+ -1, 386, -1, -1, -1, -1, -1, -1, 393, -1,
+ -1, 2475, -1, -1, -1, -1, -1, 234, -1, -1,
+ -1, -1, 2486, 408, -1, -1, -1, -1, 631, -1,
+ 415, -1, 635, -1, -1, -1, -1, -1, 2502, -1,
+ -1, -1, 645, -1, 261, 430, -1, -1, -1, -1,
+ 653, -1, -1, -1, -1, -1, 4892, -1, 4894, -1,
+ -1, -1, 665, -1, -1, -1, -1, 284, 285, 286,
+ -1, -1, -1, -1, -1, 2539, -1, -1, -1, -1,
+ -1, -1, 2546, 686, -1, -1, 689, 966, -1, 306,
+ 307, 970, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 487, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 497, -1, 993, -1, -1, -1, -1, 722,
+ -1, -1, -1, 1002, -1, -1, -1, -1, 731, -1,
+ -1, -1, -1, -1, -1, -1, -1, 354, -1, 356,
+ 357, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 535, -1, -1, -1, 757, -1, 373, -1, -1, -1,
+ -1, -1, -1, 548, -1, -1, -1, -1, -1, 5005,
+ -1, -1, -1, -1, -1, -1, 779, -1, 2642, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 1067, 1068,
+ 1069, 1070, 409, 410, -1, -1, -1, -1, -1, -1,
+ -1, 1080, 587, -1, -1, -1, -1, -1, 593, -1,
+ -1, 2675, -1, -1, -1, 5051, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 2694, -1, -1, -1, -1, -1, -1, -1, 455, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 5091, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 651, -1, -1, 2733,
+ -1, -1, -1, 658, -1, -1, -1, -1, 5114, 496,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 5130, 5131, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 690, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 705, 706, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 718, -1, -1, -1, -1, -1, -1,
+ -1, 558, 559, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 574, 575, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 1261, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 616,
+ 2864, -1, -1, -1, 2868, -1, -1, 2871, -1, -1,
+ -1, -1, -1, -1, -1, -1, 2880, -1, -1, -1,
+ -1, -1, -1, -1, -1, 2889, -1, 2891, 2892, -1,
+ 2894, 2895, 2896, 2897, -1, 2899, -1, 2901, 2902, -1,
+ 2904, -1, -1, -1, -1, -1, -1, -1, 2912, 2913,
+ -1, -1, -1, 2917, 2918, 2919, -1, -1, -1, -1,
+ -1, -1, -1, 2927, 2928, 2929, -1, 2931, -1, 2933,
+ -1, 2935, -1, 2937, -1, 2939, -1, -1, -1, -1,
+ 2944, 2945, -1, 2947, 2948, 2949, -1, -1, -1, 2953,
+ -1, -1, 2956, 710, -1, -1, 713, -1, -1, 716,
+ -1, 2965, -1, -1, 2968, -1, 2970, 2971, 2972, -1,
+ -1, 2975, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 739, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 2997, -1, 2999, -1, -1, 3002, -1,
+ -1, -1, 759, -1, -1, -1, -1, -1, 3012, 3013,
+ 3014, 3015, -1, 3017, -1, -1, 1435, -1, 3022, -1,
+ 5396, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 5420, -1, -1, -1, -1, -1,
+ -1, -1, 5428, -1, -1, -1, -1, -1, 5434, -1,
+ -1, -1, -1, -1, -1, -1, 3070, -1, -1, -1,
+ -1, -1, -1, 5449, -1, -1, -1, -1, 3082, -1,
+ -1, -1, -1, -1, -1, 3089, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 1514, -1, 1516, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 3138, -1, -1, -1, -1, -1,
+ -1, -1, -1, 1562, 1563, -1, -1, -1, -1, 1568,
+ -1, -1, -1, 1572, 1573, 1574, 3160, -1, -1, -1,
+ -1, -1, -1, 1582, 1583, -1, -1, -1, -1, 1588,
+ -1, -1, -1, 1592, 1593, 1594, -1, 1596, 1597, 1598,
+ -1, -1, -1, -1, -1, -1, -1, 1606, -1, 1608,
+ -1, -1, 1611, 1612, 1613, 1614, -1, 1616, -1, 1618,
+ 1619, 5577, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 1632, 1633, 1634, 1635, 1636, -1, 1638,
+ 1639, 1640, 1641, 1642, 1643, 3229, 1645, 1646, -1, 1648,
+ 1649, -1, 1651, 1652, -1, -1, 1655, 1656, -1, 1658,
+ 1659, -1, 1661, -1, 1663, -1, 3250, -1, 1667, 1668,
+ 1669, -1, -1, 1672, 1673, 1674, 1675, -1, 1677, -1,
+ -1, -1, -1, -1, -1, 1684, -1, -1, -1, -1,
+ -1, 1690, 1691, 1692, 1693, -1, -1, -1, -1, -1,
+ -1, -1, 1701, 1702, -1, 1704, 1705, -1, -1, 1708,
+ 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, 1718,
+ 1719, 1720, -1, -1, 1723, -1, -1, -1, 18, 19,
+ 20, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 657, -1, -1, -1, -1, -1,
+ -1, 5707, -1, -1, -1, -1, 46, -1, 48, 1758,
+ 673, -1, -1, -1, -1, -1, 679, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 70, -1, -1, -1, -1, -1, -1, -1, 78, -1,
+ -1, -1, -1, -1, -1, -1, 3380, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 110, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 5794, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 3435, -1, -1, -1, 145, -1, -1, -1, -1,
+ -1, -1, -1, 3447, -1, -1, 3450, -1, -1, -1,
+ -1, -1, 5828, -1, -1, 1874, -1, 1876, -1, -1,
+ -1, -1, -1, 173, 5840, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 1911, -1, -1, -1, 206, -1, -1, -1,
+ -1, -1, -1, -1, -1, 215, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 240, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 5924, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 272, 273, 274, -1, -1, -1, -1, 902,
+ -1, 904, -1, 906, 907, -1, -1, 1996, -1, -1,
+ 913, -1, 292, 916, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 5971, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 2024, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 338, -1,
+ -1, -1, -1, -1, -1, -1, 346, -1, 348, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 368, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 386, -1, -1, -1,
+ -1, -1, -1, 393, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 408, -1,
+ -1, -1, -1, -1, -1, 415, -1, -1, -1, 419,
+ -1, -1, -1, -1, -1, 6091, 426, -1, -1, 6095,
+ 430, 3725, 3726, -1, -1, -1, 3730, -1, -1, -1,
+ 2149, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 3752, 459,
+ 3754, -1, 3756, -1, 3758, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 3773,
+ -1, -1, -1, 2192, -1, -1, -1, 487, -1, -1,
+ -1, 2200, 2201, -1, -1, -1, -1, 497, 3792, 3793,
+ -1, -1, -1, 3797, -1, 3799, -1, 3801, -1, -1,
+ -1, -1, 3806, -1, 1137, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 535, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 2254, -1, -1, 548, -1,
+ 550, -1, -1, -1, -1, -1, 6222, -1, -1, 3853,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 3867, -1, -1, -1, 3871, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 587, -1, 2298,
+ 2299, 2300, -1, 593, -1, 3889, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 1264, -1, -1, -1, -1, -1, -1, 2357, -1,
+ -1, 651, -1, -1, -1, -1, -1, -1, 658, -1,
+ -1, -1, -1, -1, -1, -1, 2375, -1, -1, -1,
+ 2379, 2380, -1, 2382, 2383, -1, -1, 3971, -1, -1,
+ -1, -1, 2391, -1, 2393, -1, -1, 3981, -1, -1,
+ 690, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 3995, -1, -1, 3998, 705, 706, -1, -1, -1,
+ -1, -1, -1, -1, -1, 2424, -1, -1, 718, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 2450, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 2462, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 2475, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 2486, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 2502, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 1440, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 2539, -1, -1, -1, -1, -1, -1, 2546, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 2642, -1, -1, -1, -1, -1, -1,
+ -1, -1, 4236, 4237, -1, 4239, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 659, 4252, 4253,
+ 4254, -1, -1, -1, -1, -1, 2675, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 4276, 4277, -1, 2694, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 4300, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 4312, -1,
+ -1, -1, -1, -1, 2733, -1, -1, 4321, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 4341, -1, -1,
+ -1, -1, 4346, 4347, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 4365, -1, -1, -1, 4369, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 818, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 2864, -1, -1, -1, 2868,
+ -1, -1, 2871, -1, -1, -1, -1, -1, -1, -1,
+ -1, 2880, -1, -1, -1, -1, -1, -1, -1, -1,
+ 2889, -1, 2891, 2892, -1, 2894, 2895, 2896, 2897, -1,
+ 2899, -1, 2901, 2902, -1, 2904, -1, -1, -1, -1,
+ -1, -1, -1, 2912, 2913, -1, -1, -1, 2917, 2918,
+ 2919, -1, -1, -1, -1, -1, -1, -1, 2927, 2928,
+ 2929, -1, 2931, -1, 2933, -1, 2935, -1, 2937, -1,
+ 2939, -1, -1, -1, -1, 2944, 2945, -1, 2947, 2948,
+ 2949, -1, -1, -1, 2953, -1, -1, 2956, -1, -1,
+ -1, -1, -1, -1, -1, -1, 2965, -1, -1, 2968,
+ -1, 2970, 2971, 2972, -1, -1, 2975, -1, 970, -1,
+ -1, -1, -1, -1, -1, -1, 4570, 4571, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 2997, -1,
+ 2999, 993, -1, 3002, -1, -1, -1, -1, -1, -1,
+ 1002, -1, -1, 3012, 3013, 3014, 3015, -1, 3017, -1,
+ -1, -1, -1, 3022, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 3070, -1, -1, -1, -1, -1, -1, 1070, -1,
+ -1, -1, -1, 3082, -1, -1, -1, -1, -1, 5,
+ 3089, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 4699, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 48, 49, -1, -1, -1, -1, -1, 3138,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 66, -1, -1, -1, 70, -1, 72, -1, 2071, -1,
+ -1, 3160, -1, -1, 80, -1, -1, -1, -1, 4753,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 101, -1, 103, 104, -1,
+ -1, -1, -1, -1, 110, -1, 4780, 4781, 2111, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 131, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 4813,
+ 3229, -1, -1, 2146, 150, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 161, 2159, -1, -1, -1,
+ -1, 3250, -1, -1, -1, 171, -1, 173, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 1261,
+ 2183, 2184, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 204, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 216, 217, -1, -1, -1, -1, -1, -1, 4892, -1,
+ 4894, 227, 228, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 239, 240, -1, -1, 243, -1, -1,
+ -1, -1, 248, -1, -1, -1, -1, -1, 254, -1,
+ -1, -1, 258, 259, 260, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 294, -1,
+ 296, 3380, 298, -1, -1, -1, -1, -1, -1, 305,
+ -1, -1, -1, -1, -1, -1, -1, -1, 314, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 328, -1, -1, -1, -1, -1, -1, -1,
+ -1, 5005, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 350, -1, 3435, 353, -1, -1,
+ -1, -1, -1, 1435, 360, -1, -1, -1, 3447, -1,
+ -1, 3450, 368, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 5051, -1, -1,
+ -1, -1, 388, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 412, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 422, 5091, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 1514, -1, 1516, 441, -1, -1, -1, -1,
+ 5114, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 456, 2454, -1, -1, -1, -1, 5130, 5131, -1, -1,
+ -1, 467, -1, -1, 470, -1, -1, 473, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 488, -1, -1, -1, 1568, -1, -1, -1,
+ 1572, -1, 1574, -1, -1, -1, -1, -1, -1, -1,
+ 1582, 1583, -1, -1, -1, -1, 1588, -1, -1, -1,
+ 1592, 1593, 1594, -1, 1596, 1597, 1598, -1, -1, -1,
+ -1, -1, -1, -1, 1606, -1, 1608, -1, -1, 1611,
+ 1612, 1613, 1614, -1, -1, -1, 1618, 1619, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 2551, -1,
+ 1632, 1633, 1634, 1635, 1636, -1, 1638, 1639, 1640, 1641,
+ 1642, -1, -1, 1645, 1646, -1, 1648, 1649, -1, 1651,
+ 1652, -1, -1, -1, 1656, -1, 1658, 1659, -1, 1661,
+ -1, 1663, -1, 2586, -1, 1667, 1668, 1669, -1, -1,
+ 1672, -1, 1674, 1675, -1, 1677, 602, -1, -1, -1,
+ -1, -1, 1684, -1, -1, -1, -1, -1, 1690, 1691,
+ 1692, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 631, -1, -1, -1, 635,
+ -1, -1, -1, -1, -1, -1, 3725, 3726, -1, 645,
+ -1, 3730, -1, -1, -1, -1, -1, 653, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 665,
+ -1, -1, -1, 3752, -1, 3754, -1, 3756, -1, 3758,
+ -1, -1, -1, -1, -1, -1, 1758, -1, -1, -1,
+ 686, -1, -1, 689, 3773, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 3792, 3793, -1, -1, -1, 3797, -1,
+ 3799, -1, 3801, -1, -1, -1, 722, 3806, -1, -1,
+ -1, -1, 5396, -1, -1, 731, -1, -1, -1, -1,
+ -1, 2734, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 5420, -1, -1, -1,
+ -1, 757, -1, -1, -1, -1, -1, -1, -1, -1,
+ 5434, -1, -1, -1, 3853, -1, -1, -1, -1, -1,
+ -1, -1, -1, 779, -1, 5449, -1, -1, 3867, -1,
+ -1, -1, 3871, -1, -1, -1, -1, -1, -1, -1,
+ 2793, -1, 1874, -1, 1876, -1, -1, -1, -1, -1,
+ 3889, -1, -1, -1, -1, 2808, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 1911,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 2848, 2849, -1, -1, -1,
+ -1, -1, -1, -1, -1, 2858, 2859, 2860, -1, -1,
+ 2863, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 2875, -1, -1, -1, 2879, -1, -1, -1,
+ -1, -1, 3971, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 3981, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 5577, -1, -1, 3995, -1, -1, 3998,
+ -1, -1, -1, -1, 1996, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 2024, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 5707, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 2149, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 2192, -1, -1, -1, -1, -1, -1, -1, 2200, 2201,
+ 5794, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 3139, -1, -1, -1,
+ -1, -1, -1, 3146, -1, -1, -1, 4236, 4237, -1,
+ 4239, -1, -1, -1, 5828, -1, -1, -1, -1, -1,
+ -1, -1, -1, 4252, 4253, 4254, 5840, -1, -1, -1,
+ -1, -1, 2254, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 4276, 4277, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 4300, -1, -1, -1, -1, 2298, 2299, 2300, -1,
+ -1, -1, -1, 4312, -1, -1, -1, -1, -1, -1,
+ -1, -1, 4321, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 5924, -1, 4341, -1, -1, -1, -1, 4346, 4347, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 4365, -1, -1, -1,
+ 4369, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 2375, -1, -1, -1, 5971, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 2391,
+ -1, 2393, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 2424, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 2450, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 2462, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 2475, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 2486, -1, -1, -1, -1, 3412,
+ -1, -1, -1, -1, -1, -1, -1, 6091, -1, -1,
+ 2502, 6095, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 3444, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 2539, -1, -1,
+ -1, -1, -1, -1, 2546, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 4570, 4571, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 6222, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 2642, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 2675, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 4699, -1, 2694, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 2733, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 4753, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 4780, 4781, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 4813, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 2864, -1, -1, -1, 2868, -1, -1, 2871,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 4892, -1, 4894, -1, 2889, -1, -1,
+ -1, -1, 2894, 2895, 2896, 2897, -1, 2899, -1, 2901,
+ 2902, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 2912, 2913, -1, -1, -1, 2917, 2918, 2919, -1, -1,
+ -1, -1, -1, -1, -1, 2927, 2928, 2929, -1, 2931,
+ -1, 2933, -1, 2935, -1, 2937, -1, 2939, -1, -1,
+ -1, -1, 2944, 2945, -1, 2947, -1, 2949, -1, -1,
+ -1, 2953, -1, -1, 2956, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 2968, -1, 2970, 2971,
+ 2972, -1, -1, 2975, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 5005, -1, -1, -1,
+ 3002, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 3013, 3014, -1, -1, 3017, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 3948, 3949, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 5051, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 3070, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 5091, -1, -1, -1, -1, 3089, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 5114, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 5130, 5131, -1, -1, -1, -1, -1, 4051, -1,
+ -1, -1, -1, -1, -1, -1, 3138, -1, -1, -1,
+ -1, 4064, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 3160, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 4120, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 3250, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 4198, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 4264, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 3380, -1,
+ -1, -1, -1, -1, -1, -1, -1, 5396, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 5420, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 5434, -1, -1, -1, -1,
+ -1, -1, -1, 3435, -1, -1, -1, -1, -1, -1,
+ 5449, -1, -1, -1, -1, 3447, -1, -1, 3450, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 4454, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 5577, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 4557, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 5707, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 3725, 3726, -1, -1, -1, 3730, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 4666, -1, -1, -1, -1, -1, -1,
+ 3752, -1, 3754, -1, 3756, -1, 3758, -1, -1, 4682,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 3773, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 5794, -1, -1, -1, -1,
+ 3792, 3793, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 3806, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 5828,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 5840, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 3853, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 3867, -1, -1, -1, 3871,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 3889, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 5924, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 4871, -1,
+ 4873, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 5971, -1, -1, -1, -1, -1, -1, 3971,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 3981,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 3995, -1, -1, 3998, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 4978, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 6091, -1, -1, -1, 6095, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 5046, -1, -1, -1, 5050, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 6222, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 4236, 4237, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 4252, 4253, 4254, -1, -1, -1, -1, 5180, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 4276, 4277, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 4321,
+ -1, 5244, -1, -1, -1, -1, -1, 5250, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 5261, 4341,
+ -1, -1, -1, -1, 4346, 4347, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 4365, -1, -1, -1, 4369, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 5387, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 4570, 4571,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 5570, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 5619, 4699, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 5646, 5647, -1, -1, 5650, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 5665, -1, -1, -1, -1, -1, -1, -1,
+ -1, 4753, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 4780, 4781,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 4813, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 5748, -1, -1, -1, -1,
+ -1, -1, -1, 5756, -1, -1, -1, -1, -1, 5762,
+ 5763, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 5785, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 5802,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 4892, -1, 4894, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 5880, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 5892,
+ -1, -1, -1, 5896, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 5937, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 5051,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 5996, 5997, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 5091,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 6028, -1, -1, -1, -1,
+ -1, -1, 5114, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 5130, 5131,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 6072,
+ -1, 6074, 6075, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 6111, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 6145, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 6174, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 6208, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 5396, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 5434, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 5449, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 5707, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 3,
+ -1, -1, -1, -1, 8, 9, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 19, 20, -1, 22, 23,
+ 24, 25, 26, 27, 28, 29, 30, 31, 32, -1,
+ -1, -1, -1, -1, -1, -1, 40, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 57, 58, 59, 60, -1, 5840, -1,
+ -1, -1, -1, -1, 68, 69, -1, 71, -1, -1,
+ -1, -1, -1, -1, 78, 79, -1, -1, 82, 83,
+ 84, 85, -1, 87, 88, -1, 90, 91, -1, -1,
+ -1, -1, -1, -1, -1, 99, -1, -1, 102, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 116, -1, -1, -1, 120, 121, 122, -1,
+ 124, -1, -1, -1, -1, -1, -1, -1, 132, 133,
+ 134, 135, -1, -1, -1, -1, -1, 141, -1, -1,
+ 144, -1, 5924, -1, -1, -1, 150, -1, -1, 153,
+ -1, -1, -1, -1, -1, -1, -1, -1, 162, -1,
+ 164, -1, 166, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 180, 181, -1, 183,
+ -1, -1, -1, 187, 188, -1, -1, -1, 192, -1,
+ -1, 195, 196, -1, 198, 199, 200, 201, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, 219, 220, 221, -1, 223,
+ -1, -1, -1, -1, -1, -1, 230, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 241, -1, -1,
+ -1, -1, -1, -1, -1, 249, 250, -1, -1, -1,
+ 254, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 268, -1, -1, -1, -1, -1,
+ -1, 275, 276, -1, 278, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 290, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 300, 301, 302, -1,
+ -1, 305, -1, -1, 308, 309, -1, -1, -1, 6091,
+ 314, -1, -1, -1, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, -1, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ -1, 385, 386, 387, 388, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, -1,
+ 6222, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, -1, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ -1, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, 629, 630, 631, 632, 633,
+ 634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
+ 644, 645, 646, 647, 648, 649, 650, 651, 652, 653,
+ 654, 655, 656, 657, 658, 659, 660, 661, 662, 663,
+ 664, 665, 666, 667, 668, 669, 670, 671, 672, 673,
+ 674, 675, 676, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, 686, 687, 688, 689, 690, 691, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, 712, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, 722, 723,
+ 724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
+ 734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, 750, 751, 752, 753,
+ 754, -1, 756, 757, 758, 759, -1, -1, -1, -1,
+ -1, -1, -1, -1, 768, 769, -1, -1, 3, -1,
+ 774, -1, -1, 8, 9, 779, -1, -1, -1, 783,
+ 784, -1, -1, 787, 19, 20, -1, 22, 23, 24,
+ 25, 26, 27, 28, 29, 30, 31, 32, -1, -1,
+ -1, -1, -1, -1, -1, 40, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 57, 58, 59, 60, -1, -1, -1, 64,
+ -1, -1, -1, 68, 69, -1, 71, -1, -1, -1,
+ -1, -1, -1, 78, 79, -1, -1, 82, 83, 84,
+ 85, -1, 87, 88, -1, 90, 91, -1, -1, -1,
+ -1, -1, -1, -1, 99, -1, -1, 102, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 116, -1, -1, -1, 120, 121, 122, -1, 124,
+ -1, -1, -1, -1, -1, -1, -1, 132, 133, 134,
+ 135, -1, -1, -1, -1, -1, 141, -1, -1, 144,
+ -1, -1, -1, -1, -1, 150, -1, -1, 153, -1,
+ -1, -1, -1, -1, -1, -1, -1, 162, 163, 164,
+ -1, 166, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 180, 181, -1, 183, -1,
+ -1, -1, 187, 188, -1, -1, -1, 192, -1, -1,
+ 195, 196, -1, 198, 199, 200, 201, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, 219, 220, 221, -1, 223, -1,
+ -1, -1, -1, -1, -1, 230, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 241, -1, -1, -1,
+ -1, -1, -1, -1, 249, 250, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 268, -1, -1, -1, -1, -1, -1,
+ 275, 276, -1, 278, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, 288, -1, 290, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 300, 301, 302, -1, -1,
+ -1, -1, -1, 308, 309, -1, -1, -1, -1, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, -1, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
+ -1, 756, 757, 758, 759, -1, -1, -1, -1, -1,
+ -1, -1, -1, 768, 769, -1, -1, 3, -1, 774,
+ -1, -1, 8, 9, 779, -1, -1, -1, 783, 784,
+ -1, -1, 787, 19, 20, -1, 22, 23, 24, 25,
+ 26, 27, 28, 29, 30, 31, 32, -1, -1, -1,
+ -1, -1, -1, -1, 40, -1, -1, -1, -1, -1,
+ -1, 47, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 57, 58, 59, 60, -1, -1, -1, -1, -1,
+ -1, -1, 68, 69, -1, 71, -1, -1, -1, -1,
+ -1, -1, 78, 79, -1, -1, 82, 83, 84, 85,
+ -1, 87, 88, -1, 90, 91, -1, -1, -1, -1,
+ -1, -1, -1, 99, -1, -1, 102, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 116, -1, -1, -1, 120, 121, 122, -1, 124, -1,
+ -1, -1, -1, -1, -1, -1, 132, 133, 134, 135,
+ -1, -1, -1, -1, -1, 141, -1, -1, 144, -1,
+ -1, -1, -1, -1, 150, -1, -1, 153, -1, -1,
+ -1, -1, -1, -1, -1, -1, 162, -1, 164, -1,
+ 166, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 180, 181, -1, 183, -1, -1,
+ -1, 187, 188, -1, -1, -1, 192, -1, -1, 195,
+ 196, -1, 198, 199, 200, 201, -1, 203, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, 219, 220, 221, -1, 223, -1, -1,
+ -1, -1, -1, -1, 230, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 241, -1, -1, -1, -1,
+ -1, -1, -1, 249, 250, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 268, -1, -1, -1, -1, -1, -1, 275,
+ 276, -1, 278, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 290, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 300, 301, 302, -1, -1, -1,
+ -1, -1, 308, 309, -1, -1, -1, -1, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, -1, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, -1, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, -1, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, -1, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, 660, 661, 662, 663, 664, 665,
+ 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, -1,
+ 756, 757, 758, 759, -1, -1, -1, -1, -1, -1,
+ -1, -1, 768, 769, -1, -1, 3, -1, 774, -1,
+ -1, 8, 9, 779, -1, -1, -1, 783, 784, -1,
+ -1, 787, 19, 20, -1, 22, 23, 24, 25, 26,
+ 27, 28, 29, 30, 31, 32, -1, -1, -1, -1,
+ -1, -1, -1, 40, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 57, 58, 59, 60, -1, -1, -1, -1, -1, -1,
+ -1, 68, 69, -1, 71, -1, -1, -1, -1, -1,
+ -1, 78, 79, -1, -1, 82, 83, 84, 85, -1,
+ 87, 88, -1, 90, 91, -1, -1, -1, -1, -1,
+ -1, -1, 99, -1, -1, 102, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, 120, 121, 122, -1, 124, -1, -1,
+ -1, -1, -1, -1, -1, 132, 133, 134, 135, -1,
+ -1, -1, -1, -1, 141, -1, -1, 144, -1, -1,
+ -1, -1, -1, 150, -1, -1, 153, -1, -1, -1,
+ -1, -1, -1, -1, -1, 162, -1, 164, -1, 166,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 180, 181, -1, 183, -1, -1, -1,
+ 187, 188, -1, -1, -1, 192, -1, -1, 195, 196,
+ -1, 198, 199, 200, 201, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, 219, 220, 221, -1, 223, -1, -1, -1,
+ -1, -1, -1, 230, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 241, -1, -1, -1, -1, -1,
+ -1, -1, 249, 250, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 268, -1, -1, -1, -1, -1, -1, 275, 276,
+ -1, 278, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 290, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 300, 301, 302, -1, -1, -1, -1,
+ -1, 308, 309, -1, 311, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, -1, 756,
+ 757, 758, 759, -1, -1, -1, -1, -1, -1, -1,
+ -1, 768, 769, -1, -1, 3, -1, 774, -1, -1,
+ 8, 9, 779, -1, -1, -1, 783, 784, -1, -1,
+ 787, 19, 20, -1, 22, 23, 24, 25, 26, 27,
+ 28, 29, 30, 31, 32, -1, -1, -1, -1, -1,
+ -1, -1, 40, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 57,
+ 58, 59, 60, -1, -1, -1, -1, -1, -1, -1,
+ 68, 69, -1, 71, -1, -1, -1, -1, -1, -1,
+ 78, 79, -1, -1, 82, 83, 84, 85, -1, 87,
+ 88, -1, 90, 91, -1, -1, -1, -1, -1, -1,
+ -1, 99, -1, -1, 102, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, 120, 121, 122, -1, 124, -1, -1, -1,
+ -1, -1, -1, -1, 132, 133, 134, 135, -1, -1,
+ -1, -1, -1, 141, -1, 143, 144, -1, -1, -1,
+ -1, -1, 150, -1, -1, 153, -1, -1, -1, -1,
+ -1, -1, -1, -1, 162, -1, 164, -1, 166, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 180, 181, -1, 183, -1, -1, -1, 187,
+ 188, -1, -1, -1, 192, -1, -1, 195, 196, -1,
+ 198, 199, 200, 201, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 218, 219, 220, 221, -1, 223, -1, -1, -1, -1,
+ -1, -1, 230, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 241, -1, -1, -1, -1, -1, -1,
+ -1, 249, 250, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 268, -1, -1, -1, -1, -1, -1, 275, 276, -1,
+ 278, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 290, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 300, 301, 302, -1, -1, -1, -1, -1,
+ 308, 309, -1, -1, -1, -1, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, -1, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, -1, 385, 386, 387,
+ 388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, -1, -1, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, -1, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, -1, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, -1,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, 629, 630, 631, 632, 633, 634, 635, 636, 637,
+ 638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
+ 648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
+ 658, 659, 660, 661, 662, 663, 664, 665, 666, 667,
+ 668, 669, 670, 671, 672, 673, 674, 675, 676, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, 686, 687,
+ 688, 689, 690, 691, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, 722, 723, 724, 725, 726, 727,
+ 728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, 750, 751, 752, 753, 754, -1, 756, 757,
+ 758, 759, -1, -1, -1, -1, -1, -1, -1, -1,
+ 768, 769, -1, -1, 3, -1, 774, -1, -1, 8,
+ 9, 779, -1, -1, -1, 783, 784, -1, -1, 787,
+ 19, 20, -1, 22, 23, 24, 25, 26, 27, 28,
+ 29, 30, 31, 32, -1, -1, -1, -1, -1, -1,
+ -1, 40, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 57, 58,
+ 59, 60, -1, -1, -1, -1, -1, -1, -1, 68,
+ 69, -1, 71, -1, -1, -1, -1, -1, -1, 78,
+ 79, -1, -1, 82, 83, 84, 85, -1, 87, 88,
+ -1, 90, 91, -1, -1, -1, -1, -1, -1, -1,
+ 99, -1, -1, 102, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, 120, 121, 122, -1, 124, -1, -1, -1, 128,
+ -1, -1, -1, 132, 133, 134, 135, -1, -1, -1,
+ -1, -1, 141, -1, -1, 144, -1, -1, -1, -1,
+ -1, 150, -1, -1, 153, -1, -1, -1, -1, -1,
+ -1, -1, -1, 162, -1, 164, -1, 166, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 180, 181, -1, 183, -1, -1, -1, 187, 188,
+ -1, -1, -1, 192, -1, -1, 195, 196, -1, 198,
+ 199, 200, 201, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ 219, 220, 221, -1, 223, -1, -1, -1, -1, -1,
+ -1, 230, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 241, -1, -1, -1, -1, -1, -1, -1,
+ 249, 250, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 268,
+ -1, -1, -1, -1, -1, -1, 275, 276, -1, 278,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 290, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 300, 301, 302, -1, -1, -1, -1, -1, 308,
+ 309, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, 750, 751, 752, 753, 754, -1, 756, 757, 758,
+ 759, -1, -1, -1, -1, -1, -1, -1, -1, 768,
+ 769, -1, -1, 3, -1, 774, -1, -1, 8, 9,
+ 779, -1, -1, -1, 783, 784, -1, -1, 787, 19,
+ 20, -1, 22, 23, 24, 25, 26, 27, 28, 29,
+ 30, 31, 32, -1, -1, -1, -1, -1, -1, -1,
+ 40, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 57, 58, 59,
+ 60, -1, -1, -1, -1, -1, -1, -1, 68, 69,
+ -1, 71, -1, -1, -1, -1, -1, -1, 78, 79,
+ -1, -1, 82, 83, 84, 85, -1, 87, 88, -1,
+ 90, 91, -1, -1, -1, -1, -1, -1, -1, 99,
+ -1, -1, 102, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
+ 120, 121, 122, -1, 124, -1, -1, -1, 128, -1,
+ -1, -1, 132, 133, 134, 135, -1, -1, -1, -1,
+ -1, 141, -1, -1, 144, -1, -1, -1, -1, -1,
+ 150, -1, -1, 153, -1, -1, -1, -1, -1, -1,
+ -1, -1, 162, -1, 164, -1, 166, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 180, 181, -1, 183, -1, -1, -1, 187, 188, -1,
+ -1, -1, 192, -1, -1, 195, 196, -1, 198, 199,
+ 200, 201, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, 219,
+ 220, 221, -1, 223, -1, -1, -1, -1, -1, -1,
+ 230, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 241, -1, -1, -1, -1, -1, -1, -1, 249,
+ 250, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 268, -1,
+ -1, -1, -1, -1, -1, 275, 276, -1, 278, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 290, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 300, 301, 302, -1, -1, -1, -1, -1, 308, 309,
+ -1, -1, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, -1, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, -1, 385, 386, 387, 388, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, -1,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, -1, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
+ 630, 631, 632, 633, 634, 635, 636, 637, 638, 639,
+ 640, 641, 642, 643, 644, 645, 646, 647, 648, 649,
+ 650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
+ 660, 661, 662, 663, 664, 665, 666, 667, 668, 669,
+ 670, 671, 672, 673, 674, 675, 676, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, 686, 687, 688, 689,
+ 690, 691, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, 722, 723, 724, 725, 726, 727, 728, 729,
+ 730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ 750, 751, 752, 753, 754, -1, 756, 757, 758, 759,
+ -1, -1, -1, -1, -1, -1, -1, -1, 768, 769,
+ -1, -1, 3, -1, 774, -1, -1, 8, 9, 779,
+ -1, -1, -1, 783, 784, -1, -1, 787, 19, 20,
+ -1, 22, 23, 24, 25, 26, 27, 28, 29, 30,
+ 31, 32, -1, -1, -1, -1, -1, -1, -1, 40,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 57, 58, 59, 60,
+ -1, -1, -1, -1, -1, -1, -1, 68, 69, -1,
+ 71, -1, -1, -1, -1, -1, -1, 78, 79, -1,
+ -1, 82, 83, 84, 85, -1, 87, 88, -1, 90,
+ 91, -1, -1, -1, -1, -1, -1, -1, 99, -1,
+ -1, 102, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, 120,
+ 121, 122, -1, 124, -1, -1, -1, 128, -1, -1,
+ -1, 132, 133, 134, 135, -1, -1, -1, -1, -1,
+ 141, -1, -1, 144, -1, -1, -1, -1, -1, 150,
+ -1, -1, 153, -1, -1, -1, -1, -1, -1, -1,
+ -1, 162, -1, 164, -1, 166, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 180,
+ 181, -1, 183, -1, -1, -1, 187, 188, -1, -1,
+ -1, 192, -1, -1, 195, 196, -1, 198, 199, 200,
+ 201, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, 219, 220,
+ 221, -1, 223, -1, -1, -1, -1, -1, -1, 230,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 241, -1, -1, -1, -1, -1, -1, -1, 249, 250,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 268, -1, -1,
+ -1, -1, -1, -1, 275, 276, -1, 278, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 290,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 300,
+ 301, 302, -1, -1, -1, -1, -1, 308, 309, -1,
+ -1, -1, -1, -1, -1, -1, -1, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, -1, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, -1, 385, 386, 387, 388, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, -1, -1, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, -1, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, -1, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 634, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 649, 650,
+ 651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
+ 661, 662, 663, 664, 665, 666, 667, 668, 669, 670,
+ 671, 672, 673, 674, 675, 676, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, 686, 687, 688, 689, 690,
+ 691, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, 722, 723, 724, 725, 726, 727, 728, 729, 730,
+ 731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, 750,
+ 751, 752, 753, 754, -1, 756, 757, 758, 759, -1,
+ -1, -1, -1, -1, -1, -1, -1, 768, 769, -1,
+ -1, 3, -1, 774, -1, -1, 8, 9, 779, -1,
+ -1, -1, 783, 784, -1, -1, 787, 19, 20, -1,
+ 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
+ 32, -1, -1, -1, -1, -1, -1, -1, 40, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 57, 58, 59, 60, -1,
+ -1, -1, -1, -1, -1, -1, 68, 69, -1, 71,
+ -1, -1, -1, -1, -1, -1, 78, 79, -1, -1,
+ 82, 83, 84, 85, -1, 87, 88, -1, 90, 91,
+ -1, -1, -1, -1, -1, -1, -1, 99, -1, -1,
+ 102, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 116, -1, -1, -1, 120, 121,
+ 122, -1, 124, -1, -1, -1, -1, -1, -1, -1,
+ 132, 133, 134, 135, -1, -1, -1, -1, -1, 141,
+ -1, 143, 144, -1, -1, -1, -1, -1, 150, -1,
+ -1, 153, -1, -1, -1, -1, -1, -1, -1, -1,
+ 162, -1, 164, -1, 166, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 180, 181,
+ -1, 183, -1, -1, -1, 187, 188, -1, -1, -1,
+ 192, -1, -1, 195, 196, -1, 198, 199, 200, 201,
+ -1, -1, -1, -1, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 218, 219, 220, 221,
+ -1, 223, -1, -1, -1, -1, -1, -1, 230, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 241,
+ -1, -1, -1, -1, -1, -1, -1, 249, 250, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 268, -1, -1, -1,
+ -1, -1, -1, 275, 276, -1, 278, 279, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 290, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 300, 301,
+ 302, -1, -1, -1, -1, -1, 308, 309, -1, -1,
+ -1, -1, -1, -1, -1, -1, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ -1, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, -1, 385, 386, 387, 388, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, -1, -1, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, -1, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, -1, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ -1, 533, 534, 535, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, -1, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
+ 612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
+ 622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
+ 632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
+ 642, 643, 644, 645, 646, 647, 648, 649, 650, 651,
+ 652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
+ 662, 663, 664, 665, 666, 667, 668, 669, 670, 671,
+ 672, 673, 674, 675, 676, 677, 678, 679, 680, -1,
+ 682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
+ 692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
+ 702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
+ 712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
+ 722, 723, 724, 725, 726, 727, 728, 729, 730, 731,
+ 732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
+ 742, 743, 744, 745, 746, 747, 748, 749, 750, 751,
+ 752, 753, 754, -1, 756, 757, 758, 759, -1, -1,
+ -1, -1, -1, -1, -1, -1, 768, 769, -1, -1,
+ 3, -1, 774, -1, -1, 8, 9, 779, -1, -1,
+ -1, 783, 784, -1, -1, 787, 19, 20, -1, 22,
+ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
+ -1, -1, -1, -1, -1, -1, -1, 40, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 57, 58, 59, 60, -1, -1,
+ -1, -1, -1, -1, -1, 68, 69, -1, 71, -1,
+ -1, -1, -1, -1, -1, 78, 79, -1, -1, 82,
+ 83, 84, 85, -1, 87, 88, -1, 90, 91, -1,
+ -1, -1, -1, -1, -1, -1, 99, -1, -1, 102,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, 120, 121, 122,
+ -1, 124, -1, -1, -1, -1, -1, -1, -1, 132,
+ 133, 134, 135, -1, -1, -1, -1, -1, 141, -1,
+ -1, 144, -1, -1, -1, -1, -1, 150, -1, -1,
+ 153, -1, -1, -1, -1, -1, -1, -1, -1, 162,
+ -1, 164, -1, 166, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 180, 181, -1,
+ 183, -1, -1, -1, 187, 188, -1, -1, -1, 192,
+ -1, -1, 195, 196, -1, 198, 199, 200, 201, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, 219, 220, 221, -1,
+ 223, -1, -1, -1, -1, -1, -1, 230, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 241, -1,
+ -1, -1, -1, -1, -1, -1, 249, 250, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 268, -1, -1, -1, -1,
+ -1, -1, 275, 276, -1, 278, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 290, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 300, 301, 302,
+ -1, -1, -1, -1, -1, 308, 309, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, -1, 756, 757, 758, 759, -1, -1, -1,
+ -1, -1, -1, -1, -1, 768, 769, -1, -1, 3,
+ -1, 774, -1, -1, 8, 9, 779, -1, -1, -1,
+ 783, 784, -1, -1, 787, 19, 20, -1, 22, 23,
+ 24, 25, 26, 27, 28, 29, 30, 31, 32, -1,
+ -1, -1, -1, -1, -1, -1, 40, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 57, 58, 59, 60, -1, -1, -1,
+ -1, -1, -1, -1, 68, 69, -1, 71, -1, -1,
+ -1, -1, -1, -1, 78, 79, -1, -1, 82, 83,
+ 84, 85, -1, 87, 88, -1, 90, 91, -1, -1,
+ -1, -1, -1, -1, -1, 99, -1, -1, 102, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 116, -1, -1, -1, 120, 121, 122, -1,
+ 124, -1, -1, -1, -1, -1, -1, -1, 132, 133,
+ 134, 135, -1, -1, -1, -1, -1, 141, -1, -1,
+ 144, -1, -1, -1, -1, -1, 150, -1, -1, 153,
+ -1, -1, -1, -1, -1, -1, -1, -1, 162, -1,
+ 164, -1, 166, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 180, 181, -1, 183,
+ -1, -1, -1, 187, 188, -1, -1, -1, 192, -1,
+ -1, 195, 196, -1, 198, 199, 200, 201, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, 219, 220, 221, -1, 223,
+ -1, -1, -1, -1, -1, -1, 230, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 241, -1, -1,
+ -1, -1, -1, -1, -1, 249, 250, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 268, -1, -1, -1, -1, -1,
+ -1, 275, 276, -1, 278, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 290, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 300, 301, 302, -1,
+ -1, -1, -1, -1, 308, 309, -1, -1, -1, -1,
+ -1, -1, -1, -1, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, -1, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ -1, 385, 386, 387, 388, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, -1,
+ -1, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, -1, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ -1, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, 629, 630, 631, 632, 633,
+ 634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
+ 644, 645, 646, 647, 648, 649, 650, 651, 652, 653,
+ 654, 655, 656, 657, 658, 659, 660, 661, 662, 663,
+ 664, 665, 666, 667, 668, 669, 670, 671, 672, 673,
+ 674, 675, 676, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, 686, 687, 688, 689, 690, 691, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, 712, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, 722, 723,
+ 724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
+ 734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, 750, 751, 752, 753,
+ 754, -1, 756, 757, 758, 759, -1, -1, -1, -1,
+ -1, -1, -1, -1, 768, 769, -1, -1, 3, -1,
+ 774, -1, -1, 8, 9, 779, -1, -1, -1, 783,
+ 784, -1, -1, 787, 19, 20, -1, 22, 23, 24,
+ 25, 26, 27, 28, 29, 30, 31, 32, -1, -1,
+ -1, -1, -1, -1, -1, 40, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 57, 58, 59, 60, -1, -1, -1, -1,
+ -1, -1, -1, 68, 69, -1, 71, -1, -1, -1,
+ -1, -1, -1, 78, 79, -1, -1, 82, 83, 84,
+ 85, -1, 87, 88, -1, 90, 91, -1, -1, -1,
+ -1, -1, -1, -1, 99, -1, -1, 102, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 116, -1, -1, -1, 120, 121, 122, -1, 124,
+ -1, -1, -1, -1, -1, -1, -1, 132, 133, 134,
+ 135, -1, -1, -1, -1, -1, 141, -1, -1, 144,
+ -1, -1, -1, -1, -1, 150, -1, -1, 153, -1,
+ -1, -1, -1, -1, -1, -1, -1, 162, -1, 164,
+ -1, 166, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 180, 181, -1, 183, -1,
+ -1, -1, 187, 188, -1, -1, -1, 192, -1, -1,
+ 195, 196, -1, 198, 199, 200, 201, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, 219, 220, 221, -1, 223, -1,
+ -1, -1, -1, -1, -1, 230, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 241, -1, -1, -1,
+ -1, -1, -1, -1, 249, 250, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 268, -1, -1, -1, -1, -1, -1,
+ 275, 276, -1, 278, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 290, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 300, 301, 302, -1, -1,
+ -1, -1, -1, 308, 309, -1, -1, -1, -1, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, -1, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
+ -1, 756, 757, 758, 759, -1, -1, -1, -1, -1,
+ -1, -1, -1, 768, 769, -1, -1, 3, -1, 774,
+ -1, -1, 8, 9, 779, -1, -1, -1, 783, 784,
+ -1, -1, 787, 19, 20, -1, 22, 23, 24, 25,
+ 26, 27, 28, 29, 30, 31, 32, -1, -1, -1,
+ -1, -1, -1, -1, 40, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 57, 58, 59, 60, -1, -1, -1, -1, -1,
+ -1, -1, 68, 69, -1, 71, -1, -1, -1, -1,
+ -1, -1, 78, 79, -1, -1, 82, 83, 84, 85,
+ -1, 87, 88, -1, 90, 91, -1, -1, -1, -1,
+ -1, -1, -1, 99, -1, -1, 102, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 116, -1, -1, -1, 120, 121, 122, -1, 124, -1,
+ -1, -1, -1, -1, -1, -1, 132, 133, 134, 135,
+ -1, -1, -1, -1, -1, 141, -1, -1, 144, -1,
+ -1, -1, -1, -1, 150, -1, -1, 153, -1, -1,
+ -1, -1, -1, -1, -1, -1, 162, -1, 164, -1,
+ 166, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 180, 181, -1, 183, -1, -1,
+ -1, 187, 188, -1, -1, -1, 192, -1, -1, 195,
+ 196, -1, 198, 199, 200, 201, -1, -1, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, 219, 220, 221, -1, 223, -1, -1,
+ -1, -1, -1, -1, 230, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 241, -1, -1, -1, -1,
+ -1, -1, -1, 249, 250, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 268, -1, -1, -1, -1, -1, -1, 275,
+ 276, -1, 278, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 290, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 300, 301, 302, -1, -1, -1,
+ -1, -1, 308, 309, -1, -1, -1, -1, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, -1, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, -1, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, -1, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, -1, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, 660, 661, 662, 663, 664, 665,
+ 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, -1,
+ 756, 757, 758, 759, -1, -1, -1, -1, -1, -1,
+ -1, -1, 768, 769, -1, -1, 3, -1, 774, -1,
+ -1, 8, 9, 779, -1, -1, -1, 783, 784, -1,
+ -1, 787, 19, 20, -1, 22, 23, 24, 25, 26,
+ 27, 28, 29, 30, 31, 32, -1, -1, -1, -1,
+ -1, -1, -1, 40, -1, -1, -1, -1, -1, -1,
+ 47, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 57, 58, 59, 60, -1, -1, -1, -1, -1, -1,
+ -1, 68, 69, -1, 71, -1, -1, -1, -1, -1,
+ -1, 78, 79, -1, -1, 82, 83, 84, 85, -1,
+ 87, 88, -1, 90, 91, -1, -1, -1, -1, -1,
+ -1, -1, 99, -1, -1, 102, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, 120, 121, 122, -1, 124, -1, -1,
+ -1, -1, -1, -1, -1, 132, 133, 134, 135, -1,
+ -1, -1, -1, -1, 141, -1, -1, 144, -1, -1,
+ -1, -1, -1, 150, -1, -1, 153, -1, -1, -1,
+ -1, -1, -1, -1, -1, 162, -1, 164, -1, 166,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 180, 181, -1, 183, -1, -1, -1,
+ 187, 188, -1, -1, -1, 192, -1, -1, 195, -1,
+ -1, 198, 199, 200, 201, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, 219, 220, 221, -1, 223, -1, -1, -1,
+ -1, -1, -1, 230, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 241, -1, -1, -1, -1, -1,
+ -1, -1, 249, 250, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 268, -1, -1, -1, -1, -1, -1, 275, 276,
+ -1, 278, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 290, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 300, 301, 302, -1, -1, -1, -1,
+ -1, 308, 309, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, -1, 756,
+ 757, 758, 759, -1, -1, -1, -1, -1, -1, -1,
+ -1, 768, 769, -1, -1, 3, -1, 774, -1, -1,
+ 8, 9, 779, -1, -1, -1, 783, 784, -1, -1,
+ 787, 19, 20, -1, 22, 23, 24, 25, 26, 27,
+ 28, 29, 30, 31, 32, -1, -1, -1, -1, -1,
+ -1, -1, 40, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 57,
+ 58, 59, 60, -1, -1, -1, -1, -1, -1, -1,
+ 68, 69, -1, 71, -1, -1, -1, -1, -1, -1,
+ 78, 79, -1, -1, 82, 83, 84, 85, -1, 87,
+ 88, -1, 90, 91, -1, -1, -1, -1, -1, -1,
+ -1, 99, -1, -1, 102, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, 120, 121, 122, -1, 124, -1, -1, -1,
+ -1, -1, -1, -1, 132, 133, 134, 135, -1, -1,
+ -1, -1, -1, 141, -1, -1, 144, -1, -1, -1,
+ -1, -1, 150, -1, -1, 153, -1, -1, -1, -1,
+ -1, -1, -1, -1, 162, -1, 164, -1, 166, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 180, 181, -1, 183, -1, -1, -1, 187,
+ 188, -1, -1, -1, 192, -1, -1, 195, 196, -1,
+ 198, 199, 200, 201, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 218, 219, 220, 221, -1, 223, -1, -1, -1, -1,
+ -1, -1, 230, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 241, -1, -1, -1, -1, -1, -1,
+ -1, 249, 250, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 268, -1, -1, -1, -1, -1, -1, 275, 276, -1,
+ 278, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 290, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 300, 301, 302, -1, -1, -1, -1, -1,
+ 308, 309, -1, -1, -1, -1, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ 328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, -1, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, -1, 385, 386, 387,
+ 388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, -1, -1, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, -1, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, -1, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, -1,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, 629, 630, 631, 632, 633, 634, 635, 636, 637,
+ 638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
+ 648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
+ 658, 659, 660, 661, 662, 663, 664, 665, 666, 667,
+ 668, 669, 670, 671, 672, 673, 674, 675, 676, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, 686, 687,
+ 688, 689, 690, 691, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, 722, 723, 724, 725, 726, 727,
+ 728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, 750, 751, 752, 753, 754, -1, 756, 757,
+ 758, 759, -1, -1, -1, -1, -1, -1, -1, -1,
+ 768, 769, -1, -1, 3, -1, 774, -1, -1, 8,
+ 9, 779, -1, -1, -1, 783, 784, -1, -1, 787,
+ 19, 20, -1, 22, 23, 24, 25, 26, 27, 28,
+ 29, 30, 31, 32, -1, -1, -1, -1, -1, -1,
+ -1, 40, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 57, 58,
+ 59, 60, -1, -1, -1, -1, -1, -1, -1, 68,
+ 69, -1, 71, -1, -1, -1, -1, -1, -1, 78,
+ 79, -1, -1, 82, 83, 84, 85, -1, 87, 88,
+ -1, 90, 91, -1, -1, -1, -1, -1, -1, -1,
+ 99, -1, -1, 102, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, 120, 121, 122, -1, 124, -1, -1, -1, -1,
+ -1, -1, -1, 132, 133, 134, 135, -1, -1, -1,
+ -1, -1, 141, -1, -1, 144, -1, -1, -1, -1,
+ -1, 150, -1, -1, 153, -1, -1, -1, -1, -1,
+ -1, -1, -1, 162, -1, 164, -1, 166, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 180, 181, -1, 183, -1, -1, -1, 187, 188,
+ -1, -1, -1, 192, -1, -1, 195, 196, -1, 198,
+ 199, 200, 201, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ 219, 220, 221, -1, 223, -1, -1, -1, -1, -1,
+ -1, 230, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 241, -1, -1, -1, -1, -1, -1, -1,
+ 249, 250, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 268,
+ -1, -1, -1, -1, -1, -1, 275, 276, -1, 278,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 290, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 300, 301, 302, -1, -1, -1, -1, -1, 308,
+ 309, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, 328,
+ 329, 330, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, 750, 751, 752, 753, 754, -1, 756, 757, 758,
+ 759, -1, -1, -1, -1, -1, -1, -1, -1, 768,
+ 769, -1, -1, 3, -1, 774, -1, -1, 8, 9,
+ 779, -1, -1, -1, 783, 784, -1, -1, 787, 19,
+ 20, -1, 22, 23, 24, 25, 26, 27, 28, 29,
+ 30, 31, 32, -1, -1, -1, -1, -1, -1, -1,
+ 40, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 57, 58, 59,
+ 60, -1, -1, -1, -1, -1, -1, -1, 68, 69,
+ -1, 71, -1, -1, -1, -1, -1, -1, 78, 79,
+ -1, -1, 82, 83, 84, 85, -1, 87, 88, -1,
+ 90, 91, -1, -1, -1, -1, -1, -1, -1, 99,
+ -1, -1, 102, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
+ 120, 121, 122, -1, 124, -1, -1, -1, -1, -1,
+ -1, -1, 132, 133, 134, 135, -1, -1, -1, -1,
+ -1, 141, -1, -1, 144, -1, -1, -1, -1, -1,
+ 150, -1, -1, 153, -1, -1, -1, -1, -1, -1,
+ -1, -1, 162, -1, 164, -1, 166, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 180, 181, 182, 183, -1, -1, -1, 187, 188, -1,
+ -1, -1, 192, -1, -1, 195, -1, -1, 198, 199,
+ 200, 201, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, 219,
+ 220, 221, -1, 223, -1, -1, -1, -1, -1, -1,
+ 230, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 241, -1, -1, -1, -1, -1, -1, -1, 249,
+ 250, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 268, -1,
+ -1, -1, -1, -1, -1, 275, 276, -1, 278, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 290, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 300, 301, 302, -1, -1, -1, -1, -1, 308, 309,
+ -1, -1, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, 328, 329,
+ 330, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, -1, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, -1, 385, 386, 387, 388, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, -1,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, -1, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
+ 630, 631, 632, 633, 634, 635, 636, 637, 638, 639,
+ 640, 641, 642, 643, 644, 645, 646, 647, 648, 649,
+ 650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
+ 660, 661, 662, 663, 664, 665, 666, 667, 668, 669,
+ 670, 671, 672, 673, 674, 675, 676, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, 686, 687, 688, 689,
+ 690, 691, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, 722, 723, 724, 725, 726, 727, 728, 729,
+ 730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ 750, 751, 752, 753, 754, -1, 756, 757, 758, 759,
+ -1, -1, -1, -1, -1, -1, -1, -1, 768, 769,
+ -1, -1, 3, -1, 774, -1, -1, 8, 9, 779,
+ -1, -1, -1, 783, 784, -1, -1, 787, 19, 20,
+ -1, 22, 23, 24, 25, 26, 27, 28, 29, 30,
+ 31, 32, -1, -1, -1, -1, -1, -1, -1, 40,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 57, 58, 59, 60,
+ -1, -1, -1, -1, -1, -1, -1, 68, 69, -1,
+ 71, -1, -1, -1, -1, -1, -1, 78, 79, -1,
+ -1, 82, 83, 84, 85, -1, 87, 88, -1, 90,
+ 91, -1, -1, -1, -1, -1, -1, -1, 99, -1,
+ -1, 102, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, 120,
+ 121, 122, -1, 124, -1, -1, -1, -1, -1, -1,
+ -1, 132, 133, 134, 135, -1, -1, -1, -1, -1,
+ 141, -1, -1, 144, -1, -1, -1, -1, -1, 150,
+ -1, -1, 153, -1, -1, -1, -1, -1, -1, -1,
+ -1, 162, -1, 164, -1, 166, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 180,
+ 181, -1, 183, -1, -1, -1, 187, 188, -1, -1,
+ -1, 192, -1, -1, 195, -1, -1, 198, 199, 200,
+ 201, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, 219, 220,
+ 221, -1, 223, -1, -1, -1, -1, -1, -1, 230,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 241, -1, -1, -1, -1, -1, -1, -1, 249, 250,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 268, -1, -1,
+ -1, -1, -1, -1, 275, 276, -1, 278, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 290,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 300,
+ 301, 302, -1, -1, -1, -1, -1, 308, 309, -1,
+ -1, -1, -1, -1, -1, -1, -1, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, 328, 329, 330,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, -1, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, -1, 385, 386, 387, 388, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, -1, -1, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, -1, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, -1, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 634, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 649, 650,
+ 651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
+ 661, 662, 663, 664, 665, 666, 667, 668, 669, 670,
+ 671, 672, 673, 674, 675, 676, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, 686, 687, 688, 689, 690,
+ 691, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, 722, 723, 724, 725, 726, 727, 728, 729, 730,
+ 731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, 750,
+ 751, 752, 753, 754, -1, 756, 757, 758, 759, -1,
+ -1, -1, -1, -1, -1, -1, -1, 768, 769, -1,
+ -1, 3, -1, 774, -1, -1, 8, 9, 779, -1,
+ -1, -1, 783, 784, -1, -1, 787, 19, 20, -1,
+ 22, 23, 24, 25, 26, 27, 28, 29, 30, 31,
+ 32, -1, -1, -1, -1, -1, -1, -1, 40, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 57, 58, 59, 60, -1,
+ -1, -1, -1, -1, -1, -1, 68, 69, -1, 71,
+ -1, -1, -1, -1, -1, -1, 78, 79, -1, -1,
+ 82, 83, 84, 85, -1, 87, 88, -1, 90, 91,
+ -1, -1, -1, -1, -1, -1, -1, 99, -1, -1,
+ 102, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 116, -1, -1, -1, 120, 121,
+ 122, -1, 124, -1, -1, -1, -1, -1, -1, -1,
+ 132, 133, 134, 135, -1, -1, -1, -1, -1, 141,
+ -1, -1, 144, -1, -1, -1, -1, -1, 150, -1,
+ -1, 153, -1, -1, -1, -1, -1, -1, -1, -1,
+ 162, -1, 164, -1, 166, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 180, 181,
+ -1, 183, -1, -1, -1, 187, 188, -1, -1, -1,
+ 192, -1, -1, 195, -1, -1, 198, 199, 200, 201,
+ -1, -1, -1, -1, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 218, 219, 220, 221,
+ -1, 223, -1, -1, -1, -1, -1, -1, 230, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 241,
+ -1, -1, -1, -1, -1, -1, -1, 249, 250, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 268, -1, -1, -1,
+ -1, -1, -1, 275, 276, -1, 278, 279, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 290, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 300, 301,
+ 302, -1, -1, -1, -1, -1, 308, 309, -1, -1,
+ -1, -1, -1, -1, -1, -1, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, 328, 329, 330, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ -1, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, -1, 385, 386, 387, 388, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, -1, -1, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, -1, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, -1, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ -1, 533, 534, 535, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, -1, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
+ 612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
+ 622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
+ 632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
+ 642, 643, 644, 645, 646, 647, 648, 649, 650, 651,
+ 652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
+ 662, 663, 664, 665, 666, 667, 668, 669, 670, 671,
+ 672, 673, 674, 675, 676, 677, 678, 679, 680, -1,
+ 682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
+ 692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
+ 702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
+ 712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
+ 722, 723, 724, 725, 726, 727, 728, 729, 730, 731,
+ 732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
+ 742, 743, 744, 745, 746, 747, 748, 749, 750, 751,
+ 752, 753, 754, -1, 756, 757, 758, 759, -1, -1,
+ -1, -1, -1, -1, -1, -1, 768, 769, -1, -1,
+ 3, -1, 774, -1, -1, 8, 9, 779, -1, -1,
+ -1, 783, 784, -1, -1, 787, 19, 20, -1, 22,
+ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
+ -1, -1, -1, -1, -1, -1, -1, 40, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 57, 58, 59, 60, -1, -1,
+ -1, -1, -1, -1, -1, 68, 69, -1, 71, -1,
+ -1, -1, -1, -1, -1, 78, 79, -1, -1, 82,
+ 83, 84, 85, -1, 87, 88, -1, 90, 91, -1,
+ -1, -1, -1, -1, -1, -1, 99, -1, -1, 102,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, 120, 121, 122,
+ -1, 124, -1, -1, -1, -1, -1, -1, -1, 132,
+ 133, 134, 135, -1, -1, -1, -1, -1, 141, -1,
+ -1, 144, -1, -1, -1, -1, -1, 150, -1, -1,
+ 153, -1, -1, -1, -1, -1, -1, -1, -1, 162,
+ -1, 164, -1, 166, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 180, 181, -1,
+ 183, -1, -1, -1, 187, 188, -1, -1, -1, 192,
+ -1, -1, 195, -1, -1, 198, 199, 200, 201, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, 219, 220, 221, -1,
+ 223, -1, -1, -1, -1, -1, -1, 230, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 241, -1,
+ -1, -1, -1, -1, -1, -1, 249, 250, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 268, -1, -1, -1, -1,
+ -1, -1, 275, 276, -1, 278, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 290, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 300, 301, 302,
+ -1, -1, -1, -1, -1, 308, 309, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, -1, 756, 757, 758, 759, -1, -1, -1,
+ -1, -1, -1, -1, -1, 768, 769, -1, -1, 3,
+ -1, 774, -1, -1, 8, 9, 779, -1, -1, -1,
+ 783, 784, -1, -1, 787, 19, 20, -1, 22, 23,
+ 24, 25, 26, 27, 28, 29, 30, 31, 32, -1,
+ -1, -1, -1, -1, -1, -1, 40, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 57, 58, 59, 60, -1, -1, -1,
+ -1, -1, -1, -1, 68, 69, -1, 71, -1, -1,
+ -1, -1, -1, -1, 78, 79, -1, -1, 82, 83,
+ 84, 85, -1, 87, 88, -1, 90, 91, -1, -1,
+ -1, -1, -1, -1, -1, 99, -1, -1, 102, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 116, -1, -1, -1, 120, 121, 122, -1,
+ 124, -1, -1, -1, -1, -1, -1, -1, 132, 133,
+ 134, 135, -1, -1, -1, -1, -1, 141, -1, -1,
+ 144, -1, -1, -1, -1, -1, 150, -1, -1, 153,
+ -1, -1, -1, -1, -1, -1, -1, -1, 162, -1,
+ 164, -1, 166, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 180, 181, -1, 183,
+ -1, -1, -1, 187, 188, -1, -1, -1, 192, -1,
+ -1, 195, -1, -1, 198, 199, 200, 201, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, 219, 220, 221, -1, 223,
+ -1, -1, -1, -1, -1, -1, 230, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 241, -1, -1,
+ -1, -1, -1, -1, -1, 249, 250, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 268, -1, -1, -1, -1, -1,
+ -1, 275, 276, -1, 278, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 290, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 300, 301, 302, -1,
+ -1, -1, -1, -1, 308, 309, -1, -1, -1, -1,
+ -1, -1, -1, -1, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, -1, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ -1, 385, 386, 387, 388, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, -1,
+ -1, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, -1, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ -1, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, 629, 630, 631, 632, 633,
+ 634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
+ 644, 645, 646, 647, 648, 649, 650, 651, 652, 653,
+ 654, 655, 656, 657, 658, 659, 660, 661, 662, 663,
+ 664, 665, 666, 667, 668, 669, 670, 671, 672, 673,
+ 674, 675, 676, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, 686, 687, 688, 689, 690, 691, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, 712, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, 722, 723,
+ 724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
+ 734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, 750, 751, 752, 753,
+ 754, -1, 756, 757, 758, 759, -1, -1, -1, -1,
+ -1, -1, -1, -1, 768, 769, -1, -1, 3, -1,
+ 774, -1, -1, 8, 9, 779, -1, -1, -1, 783,
+ 784, -1, -1, 787, 19, 20, -1, 22, 23, 24,
+ 25, 26, 27, 28, 29, 30, 31, 32, -1, -1,
+ -1, -1, -1, -1, -1, 40, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 57, 58, 59, 60, -1, -1, -1, -1,
+ -1, -1, -1, 68, 69, -1, 71, -1, -1, -1,
+ -1, -1, -1, 78, 79, -1, -1, 82, 83, 84,
+ 85, -1, 87, 88, -1, 90, 91, -1, -1, -1,
+ -1, -1, -1, -1, 99, -1, -1, 102, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 116, -1, -1, -1, 120, 121, 122, -1, 124,
+ -1, -1, -1, -1, -1, -1, -1, 132, 133, 134,
+ 135, -1, -1, -1, -1, -1, 141, -1, -1, 144,
+ -1, -1, -1, -1, -1, 150, -1, -1, 153, -1,
+ -1, -1, -1, -1, -1, -1, -1, 162, -1, 164,
+ -1, 166, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 180, 181, -1, 183, -1,
+ -1, -1, 187, 188, -1, -1, -1, 192, -1, -1,
+ 195, -1, -1, 198, 199, 200, 201, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, 219, 220, 221, -1, 223, -1,
+ -1, -1, -1, -1, -1, 230, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 241, -1, -1, -1,
+ -1, -1, -1, -1, 249, 250, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 268, -1, -1, -1, -1, -1, -1,
+ 275, 276, -1, 278, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 290, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 300, 301, 302, -1, -1,
+ -1, -1, -1, 308, 309, -1, -1, -1, -1, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, -1, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
+ -1, 756, 757, 758, 759, -1, -1, -1, -1, -1,
+ -1, -1, -1, 768, 769, -1, -1, 3, -1, 774,
+ -1, -1, 8, 9, 779, -1, -1, -1, 783, 784,
+ -1, -1, 787, 19, 20, -1, 22, 23, 24, 25,
+ 26, 27, 28, 29, 30, 31, 32, -1, -1, -1,
+ -1, -1, -1, -1, 40, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 57, 58, 59, 60, -1, -1, -1, -1, -1,
+ -1, -1, 68, 69, -1, 71, -1, -1, -1, -1,
+ -1, -1, 78, 79, -1, -1, 82, 83, 84, 85,
+ -1, 87, 88, -1, 90, 91, -1, -1, -1, -1,
+ -1, -1, -1, 99, -1, -1, 102, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 116, -1, -1, -1, 120, 121, 122, -1, 124, -1,
+ -1, -1, -1, -1, -1, -1, 132, 133, 134, 135,
+ -1, -1, -1, -1, -1, 141, -1, -1, 144, -1,
+ -1, -1, -1, -1, 150, -1, -1, 153, -1, -1,
+ -1, -1, -1, -1, -1, -1, 162, -1, 164, -1,
+ 166, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 180, 181, -1, 183, -1, -1,
+ -1, 187, 188, -1, -1, -1, 192, -1, -1, 195,
+ -1, -1, 198, 199, 200, 201, -1, -1, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, 219, 220, 221, -1, 223, -1, -1,
+ -1, -1, -1, -1, 230, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 241, -1, -1, -1, -1,
+ -1, -1, -1, 249, 250, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 268, -1, -1, -1, -1, -1, -1, 275,
+ 276, -1, 278, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 290, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 300, 301, 302, -1, -1, -1,
+ -1, -1, 308, 309, -1, -1, -1, -1, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, -1, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, -1, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, -1, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, -1, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, 660, 661, 662, 663, 664, 665,
+ 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, -1,
+ 756, 757, 758, 759, -1, -1, -1, -1, -1, -1,
+ -1, -1, 768, 769, -1, -1, 3, -1, 774, -1,
+ -1, 8, 9, 779, -1, -1, -1, 783, 784, -1,
+ -1, 787, 19, 20, -1, 22, 23, 24, 25, 26,
+ 27, 28, 29, 30, 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, 58, 59, 60, -1, -1, -1, -1, -1, -1,
+ -1, 68, 69, -1, 71, -1, -1, -1, -1, -1,
+ -1, 78, 79, -1, -1, 82, 83, 84, 85, -1,
+ 87, 88, -1, 90, 91, -1, -1, -1, -1, -1,
+ -1, -1, 99, -1, -1, 102, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, 120, 121, 122, -1, 124, -1, -1,
+ -1, -1, -1, -1, -1, 132, 133, 134, 135, -1,
+ -1, -1, -1, -1, 141, -1, -1, 144, -1, -1,
+ -1, -1, -1, 150, -1, -1, 153, -1, -1, -1,
+ -1, -1, -1, -1, -1, 162, -1, 164, -1, 166,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 180, 181, -1, 183, -1, -1, -1,
+ 187, 188, -1, -1, -1, 192, -1, -1, 195, -1,
+ -1, 198, 199, 200, 201, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, 219, 220, 221, -1, 223, -1, -1, -1,
+ -1, -1, -1, 230, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 241, -1, -1, -1, -1, -1,
+ -1, -1, 249, 250, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 268, -1, -1, -1, -1, -1, -1, 275, 276,
+ -1, 278, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 290, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 300, 301, 302, -1, -1, -1, -1,
+ -1, 308, 309, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, -1, 756,
+ 757, 758, 759, -1, -1, -1, -1, -1, -1, -1,
+ -1, 768, 769, -1, -1, 3, -1, -1, -1, -1,
+ 8, -1, 779, -1, -1, -1, -1, 784, -1, -1,
+ 787, 19, 20, -1, 22, 23, 24, 25, 26, 27,
+ 28, 29, 30, 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, -1, -1, -1, -1, -1, -1,
+ 88, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, -1, -1, 122, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 135, -1, -1,
+ -1, -1, -1, -1, -1, -1, 144, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 188, -1, -1, -1, -1, -1, -1, 195, -1, -1,
+ -1, -1, -1, 201, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 218, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 290, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ -1, -1, -1, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, -1, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, -1, 385, 386, 387,
+ 388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, -1, -1, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, -1, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, -1, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, -1,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, 629, 630, 631, 632, 633, 634, 635, 636, 637,
+ 638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
+ 648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
+ 658, 659, 660, 661, 662, 663, 664, 665, 666, 667,
+ 668, 669, 670, 671, 672, 673, 674, 675, 676, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, 686, 687,
+ 688, 689, 690, 691, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, 722, 723, 724, 725, 726, 727,
+ 728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, 750, 751, 752, 753, 754, 3, 756, 757,
+ 758, 759, 8, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 19, 20, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 787,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 88, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 116, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 135,
+ -1, -1, -1, -1, -1, -1, -1, -1, 144, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 188, -1, -1, -1, -1, -1, -1, 195,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, -1, -1, -1, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, -1, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, -1, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, -1, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, -1, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, 660, 661, 662, 663, 664, 665,
+ 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, 3,
+ 756, 757, 758, 759, 8, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 19, 20, -1, -1, -1,
+ -1, -1, -1, -1, 780, -1, -1, -1, -1, -1,
+ -1, 787, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 135, -1, -1, -1, -1, -1, -1, -1, -1,
+ 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 188, -1, -1, -1, -1, -1,
+ -1, 195, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, -1, -1, -1, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, -1, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ -1, 385, 386, 387, 388, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, -1,
+ -1, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, -1, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ -1, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, 629, 630, 631, 632, 633,
+ 634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
+ 644, 645, 646, 647, 648, 649, 650, 651, 652, 653,
+ 654, 655, 656, 657, 658, 659, 660, 661, 662, 663,
+ 664, 665, 666, 667, 668, 669, 670, 671, 672, 673,
+ 674, 675, 676, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, 686, 687, 688, 689, 690, 691, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, 712, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, 722, 723,
+ 724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
+ 734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, 750, 751, 752, 753,
+ 754, 8, 756, 757, 758, 759, -1, -1, -1, -1,
+ -1, -1, 19, 20, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 787, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, -1, -1, -1, 144, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 188, -1, -1, -1, -1, -1, -1, 195, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, -1, -1, -1, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, 8, 756,
+ 757, 758, 759, -1, -1, -1, -1, -1, -1, 19,
+ 20, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 779, -1, -1, -1, -1, -1, -1, -1,
+ 787, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 135, -1, -1, -1, -1,
+ -1, -1, -1, -1, 144, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, -1, -1,
+ -1, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, -1, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, -1, 385, 386, 387, 388, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, -1,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, -1, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
+ 630, 631, 632, 633, 634, 635, 636, 637, 638, 639,
+ 640, 641, 642, 643, 644, 645, 646, 647, 648, 649,
+ 650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
+ 660, 661, 662, 663, 664, 665, 666, 667, 668, 669,
+ 670, 671, 672, 673, 674, 675, 676, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, 686, 687, 688, 689,
+ 690, 691, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, 722, 723, 724, 725, 726, 727, 728, 729,
+ 730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ 750, 751, 752, 753, 754, 8, 756, 757, 758, 759,
+ -1, -1, -1, -1, -1, -1, 19, 20, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 787, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 135, -1, -1, -1, -1, -1, -1, -1,
+ -1, 144, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 188, -1, -1, -1, -1,
+ -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, -1, -1, -1, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, -1, 756, 757, 758, 759, 19, 20, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 787, -1, -1, -1, -1, -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, -1, -1, -1, 88, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 116, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 129, -1, -1,
+ -1, -1, -1, 135, -1, -1, -1, -1, -1, -1,
+ -1, -1, 144, 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, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 188, -1, -1, -1,
+ -1, -1, -1, 195, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 218, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 262, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 279, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, -1, -1, -1, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ -1, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, -1, 385, 386, 387, 388, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, -1, -1, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, -1, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, -1, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ -1, 533, 534, 535, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, -1, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
+ 612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
+ 622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
+ 632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
+ 642, 643, 644, 645, 646, 647, 648, 649, 650, 651,
+ 652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
+ 662, 663, 664, 665, 666, 667, 668, 669, 670, 671,
+ 672, 673, 674, 675, 676, 677, 678, 679, 680, -1,
+ 682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
+ 692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
+ 702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
+ 712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
+ 722, 723, 724, 725, 726, 727, 728, 729, 730, 731,
+ 732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
+ 742, 743, 744, 745, 746, 747, 748, 749, 750, 751,
+ 752, 753, 754, -1, 756, 757, 758, 759, 19, 20,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 787, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 135, -1, -1, -1, -1, -1,
+ -1, -1, -1, 144, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 188, -1, -1,
+ -1, -1, -1, -1, 195, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 254, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 305, -1, -1, -1, -1, -1,
+ -1, -1, -1, 314, -1, -1, -1, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, -1, -1, -1,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, -1, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, -1, 385, 386, 387, 388, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, -1, -1, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, -1, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, -1, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 634, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 649, 650,
+ 651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
+ 661, 662, 663, 664, 665, 666, 667, 668, 669, 670,
+ 671, 672, 673, 674, 675, 676, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, 686, 687, 688, 689, 690,
+ 691, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, 722, 723, 724, 725, 726, 727, 728, 729, 730,
+ 731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, 750,
+ 751, 752, 753, 754, -1, 756, 757, 758, 759, 19,
+ 20, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 779, -1,
+ -1, -1, -1, -1, -1, -1, 787, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 111, -1, -1, -1, -1, 116, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 135, -1, -1, -1, -1,
+ -1, -1, -1, -1, 144, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, -1, -1,
+ -1, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, -1, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, -1, 385, 386, 387, 388, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, -1,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, -1, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
+ 630, 631, 632, 633, 634, 635, 636, 637, 638, 639,
+ 640, 641, 642, 643, 644, 645, 646, 647, 648, 649,
+ 650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
+ 660, 661, 662, 663, 664, 665, 666, 667, 668, 669,
+ 670, 671, 672, 673, 674, 675, 676, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, 686, 687, 688, 689,
+ 690, 691, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, 722, 723, 724, 725, 726, 727, 728, 729,
+ 730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ 750, 751, 752, 753, 754, -1, 756, 757, 758, 759,
+ 19, 20, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 779,
+ -1, -1, -1, -1, 784, -1, -1, 787, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, -1, -1, -1, 144, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
+ -1, -1, -1, -1, -1, -1, 195, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, -1,
+ -1, -1, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, 750, 751, 752, 753, 754, -1, 756, 757, 758,
+ 759, 19, 20, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 779, -1, -1, -1, -1, 784, -1, -1, 787, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 135, -1, -1,
+ -1, -1, -1, -1, -1, -1, 144, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 188, -1, -1, -1, -1, -1, -1, 195, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 218, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ -1, -1, -1, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, -1, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, -1, 385, 386, 387,
+ 388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, -1, -1, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, -1, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, -1, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, -1,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, 629, 630, 631, 632, 633, 634, 635, 636, 637,
+ 638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
+ 648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
+ 658, 659, 660, 661, 662, 663, 664, 665, 666, 667,
+ 668, 669, 670, 671, 672, 673, 674, 675, 676, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, 686, 687,
+ 688, 689, 690, 691, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, 722, 723, 724, 725, 726, 727,
+ 728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, 750, 751, 752, 753, 754, -1, 756, 757,
+ 758, 759, 19, 20, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 779, -1, -1, -1, -1, -1, -1, -1, 787,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, -1, -1, -1, 144, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 188, -1, -1, -1, -1, -1, -1, 195, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, -1, -1, -1, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, -1, 756,
+ 757, 758, 759, 19, 20, -1, -1, -1, -1, -1,
+ -1, -1, -1, 770, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 787, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 88, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 116, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 135,
+ -1, -1, -1, -1, -1, -1, -1, -1, 144, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 188, -1, -1, -1, -1, -1, -1, 195,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, -1, -1, -1, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, -1, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, -1, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, -1, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, -1, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, 660, 661, 662, 663, 664, 665,
+ 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, -1,
+ 756, 757, 758, 759, 19, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 779, -1, -1, -1, -1, -1, -1,
+ -1, 787, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 116, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 135, -1, -1, -1, -1, -1, 141, -1, -1, 144,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 188, -1, -1, -1, -1, -1, -1,
+ 195, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, -1, -1, -1, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, -1, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
+ -1, 756, 757, 758, 759, 19, 20, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 787, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 135, -1, -1, -1, -1, -1, -1, -1, -1,
+ 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 188, -1, -1, -1, -1, -1,
+ -1, 195, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, -1, -1, -1, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, -1, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ -1, 385, 386, 387, 388, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, -1,
+ -1, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, -1, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ -1, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, 629, 630, 631, 632, 633,
+ 634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
+ 644, 645, 646, 647, 648, 649, 650, 651, 652, 653,
+ 654, 655, 656, 657, 658, 659, 660, 661, 662, 663,
+ 664, 665, 666, 667, 668, 669, 670, 671, 672, 673,
+ 674, 675, 676, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, 686, 687, 688, 689, 690, 691, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, 712, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, 722, 723,
+ 724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
+ 734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, 750, 751, 752, 753,
+ 754, -1, 756, 757, 758, 759, 19, 20, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 787, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 135, -1, -1, -1, -1, -1, -1, -1,
+ -1, 144, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 188, -1, -1, -1, -1,
+ -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, -1, -1, -1, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, -1, 756, 757, 758, 759, 19, 20, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 787, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 116, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 135, -1, -1, -1, -1, -1, -1,
+ -1, -1, 144, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 188, -1, -1, -1,
+ -1, -1, -1, 195, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 218, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 279, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, -1, -1, -1, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ -1, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, -1, 385, 386, 387, 388, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, -1, -1, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, -1, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, -1, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ -1, 533, 534, 535, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, -1, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
+ 612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
+ 622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
+ 632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
+ 642, 643, 644, 645, 646, 647, 648, 649, 650, 651,
+ 652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
+ 662, 663, 664, 665, 666, 667, 668, 669, 670, 671,
+ 672, 673, 674, 675, 676, 677, 678, 679, 680, -1,
+ 682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
+ 692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
+ 702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
+ 712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
+ 722, 723, 724, 725, 726, 727, 728, 729, 730, 731,
+ 732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
+ 742, 743, 744, 745, 746, 747, 748, 749, 750, 751,
+ 752, 753, 754, -1, 756, 757, 758, 759, 19, 20,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 787, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 68, -1, -1,
+ -1, -1, -1, -1, -1, -1, 77, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, -1,
+ -1, -1, 123, -1, -1, -1, 127, -1, -1, 130,
+ -1, -1, -1, -1, 135, -1, -1, -1, -1, -1,
+ 141, -1, -1, 144, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 157, -1, -1, -1,
+ -1, -1, -1, -1, 165, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 177, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 188, -1, -1,
+ -1, -1, -1, -1, 195, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 241, -1, -1, -1, -1, 246, 247, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 313, -1, -1, -1, -1, 318, 319, 320,
+ 321, 322, -1, 324, 325, 326, 327, -1, -1, -1,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ -1, 342, 343, 344, 345, 346, 347, 348, 349, -1,
+ 351, -1, -1, 354, 355, 356, 357, 358, -1, -1,
+ 361, 362, 363, 364, 365, -1, -1, -1, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, -1, -1,
+ -1, -1, -1, -1, 385, -1, 387, -1, 389, 390,
+ -1, 392, 393, 394, 395, 396, 397, -1, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, -1, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, -1, 423, 424, 425, 426, -1, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, -1, -1,
+ -1, 442, -1, 444, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, -1, -1, -1, -1, -1,
+ 461, 462, 463, 464, 465, 466, -1, 468, 469, -1,
+ 471, 472, -1, -1, 475, -1, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, -1, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, -1, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, -1, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, -1, -1, 585, -1, 587, 588, -1, 590,
+ 591, 592, 593, -1, 595, 596, 597, 598, -1, -1,
+ -1, -1, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, -1, 630,
+ -1, 632, 633, 634, -1, 636, 637, -1, 639, 640,
+ 641, 642, 643, 644, -1, 646, 647, 648, 649, 650,
+ 651, 652, -1, 654, 655, 656, -1, 658, 659, 660,
+ 661, -1, 663, 664, -1, -1, 667, 668, -1, -1,
+ 671, 672, 673, -1, 675, -1, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, -1, 687, 688, -1, 690,
+ -1, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, -1, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, -1, 723, 724, -1, 726, 727, 728, 729, -1,
+ -1, 732, 733, -1, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, -1,
+ -1, 752, 753, -1, -1, 756, -1, 758, 759, 19,
+ 20, 21, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 31, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 782, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 85, -1, -1, 88, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 135, -1, -1, -1, -1,
+ -1, -1, -1, -1, 144, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, -1, -1,
+ -1, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, -1, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, -1, 385, 386, 387, 388, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, -1,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, -1, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
+ 630, 631, 632, 633, 634, 635, 636, 637, 638, 639,
+ 640, 641, 642, 643, 644, 645, 646, 647, 648, 649,
+ 650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
+ 660, 661, 662, 663, 664, 665, 666, 667, 668, 669,
+ 670, 671, 672, 673, 674, 675, 676, -1, 678, 679,
+ 680, -1, 682, 683, 684, 685, 686, 687, 688, 689,
+ 690, 691, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, 722, 723, 724, 725, 726, 727, 728, 729,
+ 730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ 750, 751, 752, 753, 754, -1, 756, 757, 758, 759,
+ 19, 20, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 779,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, -1, -1, -1, 144, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
+ -1, -1, -1, -1, -1, -1, 195, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, -1,
+ -1, -1, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, 750, 751, 752, 753, 754, 3, 756, 757, 758,
+ 759, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 19, 20, -1, -1, -1, -1, -1, -1,
+ 779, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -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, -1, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 99, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, -1, -1, -1, 144, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 188, -1, -1, -1, -1, -1, -1, 195, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, -1, -1, -1, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, 3, 756,
+ 757, 758, 759, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 19, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -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,
+ -1, -1, -1, 88, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 99, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 116, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 135, -1, -1, -1, -1, -1, -1, -1, -1, 144,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 188, -1, -1, -1, -1, -1, -1,
+ 195, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, -1, -1, -1, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
+ 3, 756, 757, 758, 759, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 19, 20, 21, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 31, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 135, -1, -1, -1, -1, -1, -1, -1,
+ -1, 144, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 188, -1, -1, -1, -1,
+ -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, -1, -1, -1, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, 3, 756, 757, 758, 759, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 19, 20,
+ 21, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 31, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 135, -1, -1, -1, -1, -1,
+ -1, -1, -1, 144, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 188, -1, -1,
+ -1, -1, -1, -1, 195, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, -1, -1, -1,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, -1, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, -1, 385, 386, 387, 388, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, -1, -1, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, -1, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, -1, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 634, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 649, 650,
+ 651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
+ 661, 662, 663, 664, 665, 666, 667, 668, 669, 670,
+ 671, 672, 673, 674, 675, 676, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, 686, 687, 688, 689, 690,
+ 691, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, 722, 723, 724, 725, 726, 727, 728, 729, 730,
+ 731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, 750,
+ 751, 752, 753, 754, 3, 756, 757, 758, 759, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 19, 20, 21, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 31, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, -1, -1, -1, 144, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
+ -1, -1, -1, -1, -1, -1, 195, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, -1,
+ -1, -1, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, 750, 751, 752, 753, 754, 3, 756, 757, 758,
+ 759, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 19, 20, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 74, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, -1, -1, -1, 144, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 188, -1, -1, -1, -1, -1, -1, 195, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, -1, -1, -1, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, 3, 756,
+ 757, 758, 759, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 19, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 116, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 135, -1, -1, -1, -1, -1, -1, -1, -1, 144,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 188, -1, -1, -1, -1, -1, -1,
+ 195, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, -1, -1, -1, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, -1, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
+ -1, 756, 757, 758, 759, 8, 9, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 19, 20, -1, -1,
+ -1, -1, -1, -1, -1, 28, -1, 30, -1, 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, -1,
+ -1, -1, -1, -1, -1, 88, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 135, -1, -1, -1, -1, -1, -1, -1,
+ -1, 144, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 188, -1, -1, -1, -1,
+ -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 251, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, -1, -1, -1, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, -1, 756, 757, 758, 759, 8, 9, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 19, 20,
+ -1, -1, -1, -1, -1, -1, -1, 28, -1, 30,
+ -1, 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, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 135, -1, -1, -1, -1, -1,
+ -1, -1, -1, 144, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 188, -1, -1,
+ -1, -1, -1, -1, 195, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 251, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, -1, -1, -1,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, -1, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, -1, 385, 386, 387, 388, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, -1, -1, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, -1, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, -1, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 634, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 649, 650,
+ 651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
+ 661, 662, 663, 664, 665, 666, 667, 668, 669, 670,
+ 671, 672, 673, 674, 675, 676, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, 686, 687, 688, 689, 690,
+ 691, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, 722, 723, 724, 725, 726, 727, 728, 729, 730,
+ 731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, 750,
+ 751, 752, 753, 754, -1, 756, 757, 758, 759, 8,
+ 9, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 19, 20, -1, -1, -1, -1, -1, -1, -1, 28,
+ -1, 30, -1, 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, -1, -1, -1, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, -1, -1, -1, 144, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
+ -1, -1, -1, -1, -1, -1, 195, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 251, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, -1,
+ -1, -1, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, 750, 751, 752, 753, 754, -1, 756, 757, 758,
+ 759, 8, 9, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 19, 20, -1, -1, -1, -1, -1, -1,
+ -1, 28, -1, 30, -1, 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, -1, -1, -1, -1, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, -1, -1, -1, 144, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 188, -1, -1, -1, -1, -1, -1, 195, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, -1, -1, -1, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, -1, 756,
+ 757, 758, 759, 19, 20, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 88, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 116, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 135,
+ -1, -1, -1, -1, -1, -1, -1, -1, 144, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 188, -1, -1, -1, -1, -1, -1, 195,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, -1, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, -1, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, -1, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, -1, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, 660, 661, 662, 663, 664, 665,
+ 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, -1,
+ 756, 757, 758, 759, 19, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, 770, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 116, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 135, -1, -1, -1, -1, -1, -1, -1, -1, 144,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 188, -1, -1, -1, -1, -1, -1,
+ 195, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, -1, -1, -1, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, -1, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
+ -1, 756, 757, 758, 759, 19, 20, -1, -1, -1,
+ -1, -1, -1, -1, -1, 770, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 135, -1, -1, -1, -1, -1, -1, -1, -1,
+ 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 188, -1, -1, -1, -1, -1,
+ -1, 195, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, -1, -1, -1, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, -1, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ -1, 385, 386, 387, 388, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, -1,
+ -1, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, -1, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ -1, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, 629, 630, 631, 632, 633,
+ 634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
+ 644, 645, 646, 647, 648, 649, 650, 651, 652, 653,
+ 654, 655, 656, 657, 658, 659, 660, 661, 662, 663,
+ 664, 665, 666, 667, 668, 669, 670, 671, 672, 673,
+ 674, 675, 676, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, 686, 687, 688, 689, 690, 691, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, 712, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, 722, 723,
+ 724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
+ 734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, 750, 751, 752, 753,
+ 754, -1, 756, 757, 758, 759, 19, 20, -1, -1,
+ -1, -1, -1, -1, -1, -1, 770, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 135, -1, -1, -1, -1, -1, -1, -1,
+ -1, 144, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 188, -1, -1, -1, -1,
+ -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, -1, -1, -1, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, -1, 756, 757, 758, 759, 19, 20, -1,
+ -1, -1, -1, -1, -1, -1, -1, 770, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 116, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 135, -1, -1, -1, -1, -1, -1,
+ -1, -1, 144, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 188, -1, -1, -1,
+ -1, -1, -1, 195, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 218, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 279, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, -1, -1, -1, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ -1, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, -1, 385, 386, 387, 388, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, -1, -1, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, -1, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, -1, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ -1, 533, 534, 535, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, -1, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
+ 612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
+ 622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
+ 632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
+ 642, 643, 644, 645, 646, 647, 648, 649, 650, 651,
+ 652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
+ 662, 663, 664, 665, 666, 667, 668, 669, 670, 671,
+ 672, 673, 674, 675, 676, 677, 678, 679, 680, -1,
+ 682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
+ 692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
+ 702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
+ 712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
+ 722, 723, 724, 725, 726, 727, 728, 729, 730, 731,
+ 732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
+ 742, 743, 744, 745, 746, 747, 748, 749, 750, 751,
+ 752, 753, 754, -1, 756, 757, 758, 759, 19, 20,
+ -1, -1, -1, -1, -1, -1, -1, -1, 770, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 135, -1, -1, -1, -1, -1,
+ -1, -1, -1, 144, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 188, -1, -1,
+ -1, -1, -1, -1, 195, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, -1, -1, -1,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, -1, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, -1, 385, 386, 387, 388, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, -1, -1, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, -1, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, -1, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 634, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 649, 650,
+ 651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
+ 661, 662, 663, 664, 665, 666, 667, 668, 669, 670,
+ 671, 672, 673, 674, 675, 676, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, 686, 687, 688, 689, 690,
+ 691, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, 722, 723, 724, 725, 726, 727, 728, 729, 730,
+ 731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, 750,
+ 751, 752, 753, 754, -1, 756, 757, 758, 759, 19,
+ 20, -1, -1, -1, -1, -1, 26, -1, -1, 770,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 40, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 135, -1, -1, -1, -1,
+ -1, -1, -1, -1, 144, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, 196, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 207, -1, 209,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 265, -1, 267, -1, 269,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, -1, -1,
+ -1, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, -1, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, -1, 385, 386, 387, 388, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, -1,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, -1, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
+ 630, 631, 632, 633, 634, 635, 636, 637, 638, 639,
+ 640, 641, 642, 643, 644, 645, 646, 647, 648, 649,
+ 650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
+ 660, 661, 662, 663, 664, 665, 666, 667, 668, 669,
+ 670, 671, 672, 673, 674, 675, 676, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, 686, 687, 688, 689,
+ 690, 691, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, 722, 723, 724, 725, 726, 727, 728, 729,
+ 730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ 750, 751, 752, 753, 754, -1, 756, 757, 758, 759,
+ 19, 20, 21, -1, -1, -1, -1, -1, -1, 769,
+ -1, -1, 31, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 42, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 57, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 99, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, -1, -1, -1, 144, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
+ -1, -1, -1, -1, -1, -1, 195, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, -1,
+ -1, -1, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, 750, 751, 752, 753, 754, -1, 756, 757, 758,
+ 759, 19, 20, 21, 763, -1, -1, -1, -1, -1,
+ -1, -1, -1, 31, -1, -1, -1, -1, -1, -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, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 135, -1, -1,
+ -1, -1, -1, -1, -1, -1, 144, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 188, -1, -1, -1, -1, -1, -1, 195, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 218, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ -1, -1, -1, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, -1, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, -1, 385, 386, 387,
+ 388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, -1, -1, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, -1, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, -1, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, -1,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, 629, 630, 631, 632, 633, 634, 635, 636, 637,
+ 638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
+ 648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
+ 658, 659, 660, 661, 662, 663, 664, 665, 666, 667,
+ 668, 669, 670, 671, 672, 673, 674, 675, 676, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, 686, 687,
+ 688, 689, 690, 691, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, 722, 723, 724, 725, 726, 727,
+ 728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, 750, 751, 752, 753, 754, -1, 756, 757,
+ 758, 759, 19, 20, -1, 763, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 45, 46,
+ 47, 48, 49, 50, 51, 52, 53, 54, 55, 56,
+ 57, 58, 59, 60, 61, 62, 63, 64, 65, 66,
+ 67, 68, 69, 70, 71, 72, 73, -1, 75, 76,
+ 77, 78, 79, 80, 81, 82, 83, 84, 85, -1,
+ 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
+ 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
+ 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
+ 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
+ -1, 128, 129, 130, 131, 132, -1, -1, 135, 136,
+ 137, 138, 139, 140, 141, 142, 143, 144, 145, 146,
+ 147, 148, 149, 150, 151, 152, 153, 154, 155, 156,
+ 157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
+ 167, 168, 169, 170, 171, 172, 173, 174, 175, 176,
+ 177, 178, 179, 180, 181, 182, 183, 184, 185, 186,
+ 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
+ 197, 198, 199, 200, 201, 202, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 229, 230, 231, 232, 233, 234, 235, 236,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 258, 259, 260, 261, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 273, 274, 275, 276,
+ 277, 278, 279, 280, 281, 282, 283, 284, 285, 286,
+ 287, 288, 289, 290, 291, 292, 293, 294, -1, 296,
+ 297, 298, 299, 300, 301, 302, 303, 304, 305, 306,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 318, 319, 320, -1, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, -1, 756,
+ 757, 758, 759, 19, 20, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 45,
+ 46, 47, 48, 49, 50, 51, 52, 53, 54, 55,
+ 56, 57, 58, 59, 60, 61, 62, 63, 64, 65,
+ 66, 67, 68, 69, 70, 71, 72, 73, -1, 75,
+ 76, 77, 78, 79, 80, 81, 82, 83, 84, 85,
+ -1, 87, 88, 89, 90, 91, 92, 93, 94, 95,
+ 96, 97, 98, 99, 100, 101, 102, 103, 104, 105,
+ 106, 107, 108, 109, 110, 111, 112, 113, 114, 115,
+ 116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
+ 126, -1, 128, 129, 130, 131, 132, -1, -1, 135,
+ 136, 137, 138, 139, 140, 141, 142, 143, 144, 145,
+ 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
+ 156, 157, 158, 159, 160, 161, 162, 163, 164, 165,
+ 166, 167, 168, 169, 170, 171, 172, 173, 174, 175,
+ 176, 177, 178, 179, 180, 181, 182, 183, 184, 185,
+ 186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
+ 196, 197, 198, 199, 200, 201, 202, 203, 204, 205,
+ 206, 207, 208, 209, 210, 211, 212, 213, 214, 215,
+ 216, 217, 218, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
+ 236, 237, 238, 239, 240, 241, 242, 243, 244, 245,
+ 246, 247, 248, 249, 250, 251, 252, 253, 254, 255,
+ 256, 257, 258, 259, 260, 261, 262, 263, 264, 265,
+ 266, 267, 268, 269, 270, 271, 272, 273, 274, 275,
+ 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
+ 286, 287, 288, 289, 290, 291, 292, 293, 294, -1,
+ 296, 297, 298, 299, 300, 301, 302, 303, 304, 305,
+ 306, 307, 308, 309, 310, 311, 312, 313, 314, 315,
+ 316, 317, 318, 319, 320, -1, 322, 323, 324, 325,
+ 326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, -1, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, -1, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, -1, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, -1, 460, 461, 462, -1, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, -1, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, -1, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, -1, 574, 575,
+ 576, 577, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, -1,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, -1, 661, 662, 663, 664, 665,
+ -1, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, -1, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, -1, 751, 752, 753, 754, -1,
+ 756, 757, 758, 759, 19, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
+ 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
+ 65, 66, 67, 68, 69, 70, 71, 72, 73, -1,
+ 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
+ 85, -1, 87, 88, 89, 90, 91, 92, 93, 94,
+ 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
+ 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
+ 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
+ 125, 126, -1, 128, 129, 130, 131, 132, -1, -1,
+ 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
+ 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
+ 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
+ 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
+ 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
+ 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
+ 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
+ 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
+ 215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
+ 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
+ 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
+ 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
+ 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
+ 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
+ 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
+ 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
+ -1, 296, 297, 298, 299, 300, 301, 302, 303, 304,
+ 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
+ 315, 316, 317, 318, 319, 320, -1, 322, 323, 324,
+ 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, -1, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, -1, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, -1, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, -1, 574,
+ 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ -1, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, -1, 661, 662, 663, 664,
+ 665, -1, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, -1, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, -1, 751, 752, 753, 754,
+ -1, 756, 757, 758, 759, 19, 20, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 45, 46, 47, 48, 49, 50, 51, 52, 53,
+ 54, 55, 56, 57, 58, 59, 60, 61, 62, 63,
+ 64, 65, 66, 67, 68, 69, 70, 71, 72, 73,
+ -1, 75, 76, 77, 78, 79, 80, 81, 82, 83,
+ 84, 85, -1, 87, 88, 89, 90, 91, 92, 93,
+ 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
+ 104, 105, 106, 107, 108, 109, 110, 111, 112, 113,
+ 114, 115, 116, 117, 118, 119, 120, 121, 122, 123,
+ 124, 125, 126, -1, 128, 129, 130, 131, 132, -1,
+ -1, 135, 136, 137, 138, 139, 140, 141, 142, 143,
+ 144, 145, 146, 147, 148, 149, 150, 151, 152, 153,
+ 154, 155, 156, 157, 158, 159, 160, 161, 162, 163,
+ 164, 165, 166, 167, 168, 169, 170, 171, 172, 173,
+ 174, 175, 176, 177, 178, 179, 180, 181, 182, 183,
+ 184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
+ 194, 195, 196, 197, 198, 199, 200, 201, 202, 203,
+ 204, 205, 206, 207, 208, 209, 210, 211, 212, 213,
+ 214, 215, 216, 217, 218, 219, 220, 221, 222, 223,
+ 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
+ 234, 235, 236, 237, 238, 239, 240, 241, 242, 243,
+ 244, 245, 246, 247, 248, 249, 250, 251, 252, 253,
+ 254, 255, 256, 257, 258, 259, 260, 261, 262, 263,
+ 264, 265, 266, 267, 268, 269, 270, 271, 272, 273,
+ 274, 275, 276, 277, 278, 279, 280, 281, 282, 283,
+ 284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
+ 294, -1, 296, 297, 298, 299, 300, 301, 302, 303,
+ 304, 305, 306, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 318, 319, 320, -1, 322, 323,
+ 324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, -1, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, -1, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ -1, 385, 386, 387, 388, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, -1,
+ -1, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, -1, 460, 461, 462, -1,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ -1, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, -1, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, -1,
+ 574, 575, 576, 577, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, -1, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, 629, 630, 631, 632, 633,
+ 634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
+ 644, 645, 646, 647, 648, -1, 650, 651, 652, 653,
+ 654, 655, 656, 657, 658, 659, -1, 661, 662, 663,
+ 664, 665, -1, 667, 668, 669, 670, 671, 672, 673,
+ 674, 675, 676, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, 686, 687, 688, 689, 690, 691, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, 712, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, 722, 723,
+ 724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
+ 734, 735, 736, 737, -1, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, -1, 751, 752, 753,
+ 754, -1, 756, 757, 758, 759, 19, 20, 21, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 31, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 47, 48, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 80, -1, -1,
+ -1, 84, -1, -1, -1, 88, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 101, -1,
+ -1, -1, -1, -1, -1, -1, -1, 110, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 131, -1,
+ -1, -1, 135, -1, -1, -1, -1, -1, -1, -1,
+ -1, 144, 145, -1, -1, -1, -1, 150, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 173, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 188, -1, -1, -1, -1,
+ -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 232,
+ -1, -1, -1, 236, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 254, -1, -1, -1, 258, 259, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 289, -1, -1, -1,
+ -1, -1, -1, 296, 297, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, -1, -1, -1, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, -1, 756, 757, 758, 759, 19, 20, 21,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 31,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 47, 48, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 80, -1,
+ -1, -1, 84, -1, -1, -1, 88, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 101,
+ -1, -1, -1, -1, -1, -1, -1, -1, 110, -1,
+ -1, -1, -1, -1, 116, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 131,
+ -1, -1, -1, 135, -1, -1, -1, -1, -1, -1,
+ -1, -1, 144, 145, -1, -1, -1, -1, 150, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 173, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 188, -1, -1, -1,
+ -1, -1, -1, 195, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 218, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 232, -1, -1, -1, 236, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 254, -1, -1, -1, 258, 259, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 279, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 289, -1, -1,
+ -1, -1, -1, -1, 296, 297, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, -1, -1, -1, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ -1, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, -1, 385, 386, 387, 388, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, -1, -1, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, -1, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, -1, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ -1, 533, 534, 535, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, -1, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
+ 612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
+ 622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
+ 632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
+ 642, 643, 644, 645, 646, 647, 648, 649, 650, 651,
+ 652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
+ 662, 663, 664, 665, 666, 667, 668, 669, 670, 671,
+ 672, 673, 674, 675, 676, 677, 678, 679, 680, -1,
+ 682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
+ 692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
+ 702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
+ 712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
+ 722, 723, 724, 725, 726, 727, 728, 729, 730, 731,
+ 732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
+ 742, 743, 744, 745, 746, 747, 748, 749, 750, 751,
+ 752, 753, 754, -1, 756, 757, 758, 759, 19, 20,
+ -1, -1, -1, 24, 25, 26, -1, 28, -1, 30,
+ 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, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 99, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 135, -1, -1, -1, -1, -1,
+ -1, -1, -1, 144, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 188, -1, -1,
+ -1, -1, -1, -1, 195, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, -1, -1, -1,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, -1, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, -1, 385, 386, 387, 388, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, -1, -1, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, -1, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, -1, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 634, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 649, 650,
+ 651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
+ 661, 662, 663, 664, 665, 666, 667, 668, 669, 670,
+ 671, 672, 673, 674, 675, 676, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, 686, 687, 688, 689, 690,
+ 691, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, 722, 723, 724, 725, 726, 727, 728, 729, 730,
+ 731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, 750,
+ 751, 752, 753, 754, -1, 756, 757, 758, 759, 19,
+ 20, 21, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 31, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 84, 85, -1, -1, 88, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 135, -1, -1, -1, -1,
+ -1, -1, -1, -1, 144, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, -1, -1,
+ -1, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, -1, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, -1, 385, 386, 387, 388, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, -1,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, -1, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
+ 630, 631, 632, 633, 634, 635, 636, 637, 638, 639,
+ 640, 641, 642, 643, 644, 645, 646, 647, 648, 649,
+ 650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
+ 660, 661, 662, 663, 664, 665, 666, 667, 668, 669,
+ 670, 671, 672, 673, 674, 675, 676, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, 686, 687, 688, 689,
+ 690, 691, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, 722, 723, 724, 725, 726, 727, 728, 729,
+ 730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ 750, 751, 752, 753, 754, -1, 756, 757, 758, 759,
+ 19, 20, 21, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 31, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 57, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 99, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, -1, -1, -1, 144, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
+ -1, -1, -1, -1, -1, -1, 195, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, -1,
+ -1, -1, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, 750, 751, 752, 753, 754, -1, 756, 757, 758,
+ 759, 19, 20, -1, -1, 23, -1, -1, 26, 27,
+ -1, -1, -1, 31, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 135, -1, -1,
+ -1, -1, -1, -1, -1, -1, 144, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 188, -1, -1, -1, -1, -1, -1, 195, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 218, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ -1, -1, -1, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, -1, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, -1, 385, 386, 387,
+ 388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, -1, -1, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, -1, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, -1, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, -1,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, 629, 630, 631, 632, 633, 634, 635, 636, 637,
+ 638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
+ 648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
+ 658, 659, 660, 661, 662, 663, 664, 665, 666, 667,
+ 668, 669, 670, 671, 672, 673, 674, 675, 676, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, 686, 687,
+ 688, 689, 690, 691, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, 722, 723, 724, 725, 726, 727,
+ 728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, 750, 751, 752, 753, 754, -1, 756, 757,
+ 758, 759, 19, 20, 21, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 31, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 57, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 99, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, -1, -1, -1, 144, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 188, -1, -1, -1, -1, -1, -1, 195, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, -1, -1, -1, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, -1, 756,
+ 757, 758, 759, 19, 20, 21, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 31, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 85,
+ -1, -1, 88, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 116, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 135,
+ -1, -1, -1, -1, -1, -1, -1, -1, 144, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 188, -1, -1, -1, -1, -1, -1, 195,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, -1, -1, -1, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, -1, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, -1, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, -1, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, -1, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, 660, 661, 662, 663, 664, 665,
+ 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, -1,
+ 756, 757, 758, 759, 19, 20, 21, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 31, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 47, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 116, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 135, -1, -1, -1, -1, -1, -1, -1, -1, 144,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 188, -1, -1, -1, -1, -1, -1,
+ 195, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, -1, -1, -1, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, -1, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
+ -1, 756, 757, 758, 759, 19, 20, 21, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 31, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 84, -1, -1, -1, 88, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 135, -1, -1, -1, -1, -1, -1, -1, -1,
+ 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 188, -1, -1, -1, -1, -1,
+ -1, 195, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, -1, -1, -1, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, -1, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ -1, 385, 386, 387, 388, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, -1,
+ -1, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, -1, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ -1, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, 629, 630, 631, 632, 633,
+ 634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
+ 644, 645, 646, 647, 648, 649, 650, 651, 652, 653,
+ 654, 655, 656, 657, 658, 659, 660, 661, 662, 663,
+ 664, 665, 666, 667, 668, 669, 670, 671, 672, 673,
+ 674, 675, 676, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, 686, 687, 688, 689, 690, 691, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, 712, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, 722, 723,
+ 724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
+ 734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, 750, 751, 752, 753,
+ 754, -1, 756, 757, 758, 759, 19, 20, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 135, -1, -1, -1, -1, -1, -1, -1,
+ -1, 144, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 188, -1, -1, -1, -1,
+ -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, -1, 756, 757, 758, 759, 19, 20, 21,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 31,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 99, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 116, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 135, -1, -1, -1, -1, -1, -1,
+ -1, -1, 144, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 188, -1, -1, -1,
+ -1, -1, -1, 195, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 218, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 279, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, -1, -1, -1, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ -1, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, -1, 385, 386, 387, 388, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, -1, -1, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, -1, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, -1, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ -1, 533, 534, 535, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, -1, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
+ 612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
+ 622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
+ 632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
+ 642, 643, 644, 645, 646, 647, 648, 649, 650, 651,
+ 652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
+ 662, 663, 664, 665, 666, 667, 668, 669, 670, 671,
+ 672, 673, 674, 675, 676, 677, 678, 679, 680, -1,
+ 682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
+ 692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
+ 702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
+ 712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
+ 722, 723, 724, 725, 726, 727, 728, 729, 730, 731,
+ 732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
+ 742, 743, 744, 745, 746, 747, 748, 749, 750, 751,
+ 752, 753, 754, -1, 756, 757, 758, 759, 19, 20,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 76, 77, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 135, -1, -1, -1, -1, -1,
+ -1, -1, -1, 144, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 188, -1, -1,
+ -1, -1, -1, -1, 195, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 318, 319, 320,
+ -1, 322, 323, 324, 325, 326, 327, -1, -1, -1,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, -1, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, -1, 385, 386, 387, 388, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, 443, 444, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, -1, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, -1, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 634, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 649, 650,
+ 651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
+ 661, 662, 663, 664, 665, 666, 667, 668, 669, 670,
+ 671, 672, 673, 674, 675, 676, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, 686, 687, 688, 689, 690,
+ 691, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, 722, 723, 724, 725, 726, 727, 728, 729, 730,
+ 731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, 750,
+ 751, 752, 753, 754, -1, 756, 757, 758, 759, 19,
+ 20, 21, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 31, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 57, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 135, -1, -1, -1, -1,
+ -1, -1, -1, -1, 144, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, -1, -1,
+ -1, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, -1, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, -1, 385, 386, 387, 388, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, -1,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, -1, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
+ 630, 631, 632, 633, 634, 635, 636, 637, 638, 639,
+ 640, 641, 642, 643, 644, 645, 646, 647, 648, 649,
+ 650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
+ 660, 661, 662, 663, 664, 665, 666, 667, 668, 669,
+ 670, 671, 672, 673, 674, 675, 676, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, 686, 687, 688, 689,
+ 690, 691, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, 722, 723, 724, 725, 726, 727, 728, 729,
+ 730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ 750, 751, 752, 753, 754, -1, 756, 757, 758, 759,
+ 19, 20, 21, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 31, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 99, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, -1, -1, -1, 144, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
+ -1, -1, -1, -1, -1, -1, 195, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, -1,
+ -1, -1, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, 750, 751, 752, 753, 754, -1, 756, 757, 758,
+ 759, 19, 20, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 135, -1, -1,
+ -1, -1, -1, -1, -1, -1, 144, -1, -1, -1,
+ 148, -1, -1, 151, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 188, -1, -1, -1, -1, -1, -1, 195, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, 212, -1, -1, -1, -1, -1,
+ 218, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ -1, -1, -1, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, -1, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, -1, 385, 386, 387,
+ 388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, -1, -1, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, -1, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, -1, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, -1,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, 629, 630, 631, 632, 633, 634, 635, 636, 637,
+ 638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
+ 648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
+ 658, 659, 660, 661, 662, 663, 664, 665, 666, 667,
+ 668, 669, 670, 671, 672, 673, 674, 675, 676, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, 686, 687,
+ 688, 689, 690, 691, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, 722, 723, 724, 725, 726, 727,
+ 728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, 750, 751, 752, 753, 754, -1, 756, 757,
+ 758, 759, 19, 20, 21, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 31, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 99, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, -1, -1, -1, 144, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 188, -1, -1, -1, -1, -1, -1, 195, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, -1, -1, -1, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, -1, 756,
+ 757, 758, 759, 19, 20, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 88, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 116, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 135,
+ -1, -1, -1, -1, -1, -1, -1, -1, 144, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 188, -1, -1, -1, -1, -1, -1, 195,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 258, -1, -1, -1, -1, -1, -1, -1,
+ -1, 267, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, -1, -1, -1, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, -1, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, -1, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, -1, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, -1, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, 660, 661, 662, 663, 664, 665,
+ 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, -1,
+ 756, 757, 758, 759, 19, 20, 21, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 31, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 116, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 135, -1, -1, -1, -1, -1, -1, -1, -1, 144,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 188, -1, -1, -1, -1, -1, -1,
+ 195, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, -1, -1, -1, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, -1, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
+ -1, 756, 757, 758, 759, 19, 20, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 128, -1, -1, -1, -1, -1,
+ -1, 135, 136, -1, -1, -1, -1, -1, -1, -1,
+ 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 188, -1, -1, -1, -1, -1,
+ -1, 195, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, -1, -1, -1, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, -1, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ -1, 385, 386, 387, 388, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, -1,
+ -1, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, -1, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ -1, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, 629, 630, 631, 632, 633,
+ 634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
+ 644, 645, 646, 647, 648, 649, 650, 651, 652, 653,
+ 654, 655, 656, 657, 658, 659, 660, 661, 662, 663,
+ 664, 665, 666, 667, 668, 669, 670, 671, 672, 673,
+ 674, 675, 676, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, 686, 687, 688, 689, 690, 691, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, 712, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, 722, 723,
+ 724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
+ 734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, 750, 751, 752, 753,
+ 754, -1, 756, 757, 758, 759, 19, 20, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 31, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 53, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 135, -1, -1, -1, -1, -1, -1, -1,
+ -1, 144, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 188, -1, -1, -1, -1,
+ -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, -1, -1, -1, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, -1, 756, 757, 758, 759, 19, 20, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 116, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 135, -1, -1, -1, -1, -1, -1,
+ -1, -1, 144, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 188, -1, -1, -1,
+ -1, -1, -1, 195, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 218, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 267, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 279, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, -1, -1, -1, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ -1, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, -1, 385, 386, 387, 388, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, -1, -1, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, -1, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, -1, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ -1, 533, 534, 535, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, -1, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
+ 612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
+ 622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
+ 632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
+ 642, 643, 644, 645, 646, 647, 648, 649, 650, 651,
+ 652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
+ 662, 663, 664, 665, 666, 667, 668, 669, 670, 671,
+ 672, 673, 674, 675, 676, 677, 678, 679, 680, -1,
+ 682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
+ 692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
+ 702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
+ 712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
+ 722, 723, 724, 725, 726, 727, 728, 729, 730, 731,
+ 732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
+ 742, 743, 744, 745, 746, 747, 748, 749, 750, 751,
+ 752, 753, 754, -1, 756, 757, 758, 759, 19, 20,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 128, -1, -1,
+ -1, -1, -1, -1, 135, -1, -1, -1, -1, -1,
+ -1, -1, -1, 144, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 188, -1, -1,
+ -1, -1, -1, -1, 195, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, -1, -1, -1,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, -1, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, -1, 385, 386, 387, 388, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, -1, -1, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, -1, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, -1, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 634, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 649, 650,
+ 651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
+ 661, 662, 663, 664, 665, 666, 667, 668, 669, 670,
+ 671, 672, 673, 674, 675, 676, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, 686, 687, 688, 689, 690,
+ 691, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, 722, 723, 724, 725, 726, 727, 728, 729, 730,
+ 731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, 750,
+ 751, 752, 753, 754, -1, 756, 757, 758, 759, 19,
+ 20, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 30, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 135, -1, -1, -1, -1,
+ -1, -1, -1, -1, 144, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, -1, -1,
+ -1, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, -1, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, -1, 385, 386, 387, 388, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, -1,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, -1, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
+ 630, 631, 632, 633, 634, 635, 636, 637, 638, 639,
+ 640, 641, 642, 643, 644, 645, 646, 647, 648, 649,
+ 650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
+ 660, 661, 662, 663, 664, 665, 666, 667, 668, 669,
+ 670, 671, 672, 673, 674, 675, 676, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, 686, 687, 688, 689,
+ 690, 691, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, 722, 723, 724, 725, 726, 727, 728, 729,
+ 730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ 750, 751, 752, 753, 754, -1, 756, 757, 758, 759,
+ 19, 20, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 99, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, -1, -1, -1, 144, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
+ -1, -1, -1, -1, -1, -1, 195, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, -1,
+ -1, -1, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, 750, 751, 752, 753, 754, -1, 756, 757, 758,
+ 759, 19, 20, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 99, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 135, -1, -1,
+ -1, -1, -1, -1, -1, -1, 144, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 188, -1, -1, -1, -1, -1, -1, 195, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 218, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ -1, -1, -1, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, -1, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, -1, 385, 386, 387,
+ 388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, -1, -1, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, -1, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, -1, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, -1,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, 629, 630, 631, 632, 633, 634, 635, 636, 637,
+ 638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
+ 648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
+ 658, 659, 660, 661, 662, 663, 664, 665, 666, 667,
+ 668, 669, 670, 671, 672, 673, 674, 675, 676, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, 686, 687,
+ 688, 689, 690, 691, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, 722, 723, 724, 725, 726, 727,
+ 728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, 750, 751, 752, 753, 754, -1, 756, 757,
+ 758, 759, 19, 20, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 63, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, -1, -1, -1, 144, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 188, -1, -1, -1, -1, -1, -1, 195, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, -1, -1, -1, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, -1, 756,
+ 757, 758, 759, 19, 20, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 88, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 99, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 116, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 135,
+ -1, -1, -1, -1, -1, -1, -1, -1, 144, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 188, -1, -1, -1, -1, -1, -1, 195,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, -1, -1, -1, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, -1, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, -1, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, -1, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, -1, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, 660, 661, 662, 663, 664, 665,
+ 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, -1,
+ 756, 757, 758, 759, 19, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 99, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 116, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 135, -1, -1, -1, -1, -1, -1, -1, -1, 144,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 188, -1, -1, -1, -1, -1, -1,
+ 195, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, -1, -1, -1, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, -1, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
+ -1, 756, 757, 758, 759, 19, 20, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 135, -1, -1, -1, -1, -1, -1, -1, -1,
+ 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 188, -1, -1, -1, -1, -1,
+ -1, 195, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, -1, -1, -1, -1, -1,
+ -1, 225, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, -1, -1, -1, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, -1, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ -1, 385, 386, 387, 388, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, -1,
+ -1, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, -1, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ -1, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, 629, 630, 631, 632, 633,
+ 634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
+ 644, 645, 646, 647, 648, 649, 650, 651, 652, 653,
+ 654, 655, 656, 657, 658, 659, 660, 661, 662, 663,
+ 664, 665, 666, 667, 668, 669, 670, 671, 672, 673,
+ 674, 675, 676, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, 686, 687, 688, 689, 690, 691, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, 712, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, 722, 723,
+ 724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
+ 734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, 750, 751, 752, 753,
+ 754, -1, 756, 757, 758, 759, 19, 20, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 31, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 135, -1, -1, -1, -1, -1, -1, -1,
+ -1, 144, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 188, -1, -1, -1, -1,
+ -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, -1, -1, -1, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, -1, 756, 757, 758, 759, 19, 20, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 47, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 116, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 135, -1, -1, -1, -1, -1, -1,
+ -1, -1, 144, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 188, -1, -1, -1,
+ -1, -1, -1, 195, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 218, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 279, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, -1, -1, -1, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ -1, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, -1, 385, 386, 387, 388, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, -1, -1, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, -1, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, -1, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ -1, 533, 534, 535, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, -1, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
+ 612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
+ 622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
+ 632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
+ 642, 643, 644, 645, 646, 647, 648, 649, 650, 651,
+ 652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
+ 662, 663, 664, 665, 666, 667, 668, 669, 670, 671,
+ 672, 673, 674, 675, 676, 677, 678, 679, 680, -1,
+ 682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
+ 692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
+ 702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
+ 712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
+ 722, 723, 724, 725, 726, 727, 728, 729, 730, 731,
+ 732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
+ 742, 743, 744, 745, 746, 747, 748, 749, 750, 751,
+ 752, 753, 754, -1, 756, 757, 758, 759, 19, 20,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 99, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 135, -1, -1, -1, -1, -1,
+ -1, -1, -1, 144, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 188, -1, -1,
+ -1, -1, -1, -1, 195, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, -1, -1, -1,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, -1, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, -1, 385, 386, 387, 388, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, -1, -1, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, -1, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, -1, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 634, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 649, 650,
+ 651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
+ 661, 662, 663, 664, 665, 666, 667, 668, 669, 670,
+ 671, 672, 673, 674, 675, 676, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, 686, 687, 688, 689, 690,
+ 691, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, 722, 723, 724, 725, 726, 727, 728, 729, 730,
+ 731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, 750,
+ 751, 752, 753, 754, -1, 756, 757, 758, 759, 19,
+ 20, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 99,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 135, -1, -1, -1, -1,
+ -1, -1, -1, -1, 144, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, -1, -1,
+ -1, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, -1, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, -1, 385, 386, 387, 388, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, -1,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, -1, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
+ 630, 631, 632, 633, 634, 635, 636, 637, 638, 639,
+ 640, 641, 642, 643, 644, 645, 646, 647, 648, 649,
+ 650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
+ 660, 661, 662, 663, 664, 665, 666, 667, 668, 669,
+ 670, 671, 672, 673, 674, 675, 676, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, 686, 687, 688, 689,
+ 690, 691, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, 722, 723, 724, 725, 726, 727, 728, 729,
+ 730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ 750, 751, 752, 753, 754, -1, 756, 757, 758, 759,
+ 19, 20, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, -1, -1, -1, 144, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
+ -1, -1, -1, -1, -1, -1, 195, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ -1, -1, -1, -1, -1, -1, 225, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, -1,
+ -1, -1, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, 750, 751, 752, 753, 754, -1, 756, 757, 758,
+ 759, 19, 20, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 135, -1, -1,
+ -1, -1, -1, -1, -1, -1, 144, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 188, -1, -1, -1, -1, -1, -1, 195, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 218, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ -1, -1, -1, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, -1, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, -1, 385, 386, 387,
+ 388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, -1, -1, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, -1, 460, 461, 462, 463, 464, 465, 466, 467,
+ 468, 469, 470, 471, 472, 473, -1, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, -1,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, 629, 630, 631, 632, 633, 634, 635, 636, 637,
+ 638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
+ 648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
+ 658, 659, 660, 661, 662, 663, 664, 665, 666, 667,
+ 668, 669, 670, 671, 672, 673, 674, 675, 676, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, 686, 687,
+ 688, 689, 690, 691, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, 722, 723, 724, 725, 726, 727,
+ 728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, 750, 751, 752, 753, 754, -1, 756, 757,
+ 758, 759, 19, 20, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, -1, -1, -1, 144, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 188, -1, -1, -1, -1, -1, -1, 195, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, 323, 324, 325, 326,
+ 327, -1, -1, -1, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, -1, 756,
+ 757, 758, 759, 19, 20, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 88, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 116, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 135,
+ -1, -1, -1, -1, -1, -1, -1, -1, 144, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 188, -1, -1, -1, -1, -1, -1, 195,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, 323, 324, 325,
+ 326, 327, -1, -1, -1, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, -1, 353, 354, 355,
+ 356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
+ 366, 367, 368, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, 379, 380, 381, 382, 383, -1, 385,
+ 386, 387, 388, 389, 390, 391, 392, 393, 394, 395,
+ 396, 397, 398, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, 412, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, 422, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, 439, 440, 441, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ 456, 457, 458, -1, 460, 461, 462, 463, 464, 465,
+ 466, 467, 468, 469, 470, 471, 472, 473, -1, 475,
+ 476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, 498, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, 568, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, 582, 583, 584, 585,
+ 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
+ 596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, 629, 630, 631, 632, 633, 634, 635,
+ 636, 637, 638, 639, 640, 641, 642, 643, 644, 645,
+ 646, 647, 648, 649, 650, 651, 652, 653, 654, 655,
+ 656, 657, 658, 659, 660, 661, 662, 663, 664, 665,
+ 666, 667, 668, 669, 670, 671, 672, 673, 674, 675,
+ 676, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, -1,
+ 756, 757, 758, 759, 19, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 116, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 135, -1, -1, -1, -1, -1, -1, -1, -1, 144,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 188, -1, -1, -1, -1, -1, -1,
+ 195, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, 323, 324,
+ 325, 326, 327, -1, -1, -1, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
+ 345, 346, 347, 348, 349, 350, 351, -1, 353, 354,
+ 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
+ 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, 379, 380, 381, 382, 383, -1,
+ 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
+ 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, 412, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, 439, 440, 441, 442, -1, -1,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, 456, 457, 458, -1, 460, 461, 462, 463, 464,
+ 465, 466, 467, 468, 469, 470, 471, 472, 473, -1,
+ 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
+ 575, 576, -1, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
+ 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
+ -1, 756, 757, 758, 759, 19, 20, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 135, -1, -1, -1, -1, -1, -1, -1, -1,
+ 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 188, -1, -1, -1, -1, -1,
+ -1, 195, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 318, 319, 320, 321, 322, 323,
+ 324, 325, 326, 327, -1, -1, -1, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, 341, 342, 343,
+ 344, 345, 346, 347, 348, 349, 350, 351, -1, 353,
+ 354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
+ 364, 365, 366, 367, 368, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
+ -1, 385, 386, 387, 388, 389, 390, 391, 392, 393,
+ 394, 395, 396, 397, 398, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, 412, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, 422, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, 439, 440, 441, 442, -1,
+ -1, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, 456, 457, 458, -1, 460, 461, 462, 463,
+ 464, 465, 466, 467, 468, 469, 470, 471, 472, 473,
+ -1, 475, 476, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, 488, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, 498, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, 582, 583,
+ 584, 585, 586, 587, 588, 589, 590, 591, 592, 593,
+ 594, 595, 596, 597, 598, 599, 600, 601, 602, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, 629, 630, 631, 632, 633,
+ 634, 635, 636, 637, 638, 639, 640, 641, 642, 643,
+ 644, 645, 646, 647, 648, 649, 650, 651, 652, 653,
+ 654, 655, 656, 657, 658, 659, 660, 661, 662, 663,
+ 664, 665, 666, 667, 668, 669, 670, 671, 672, 673,
+ 674, 675, 676, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, 686, 687, 688, 689, 690, 691, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, 712, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, 722, 723,
+ 724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
+ 734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, 750, 751, 752, 753,
+ 754, -1, 756, 757, 758, 759, 19, 20, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 135, -1, -1, -1, -1, -1, -1, -1,
+ -1, 144, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 188, -1, -1, -1, -1,
+ -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, -1, -1, -1, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, 341, 342,
+ 343, 344, 345, 346, 347, 348, 349, 350, 351, -1,
+ 353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
+ 363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
+ 383, -1, 385, 386, 387, 388, 389, 390, 391, 392,
+ 393, 394, 395, 396, 397, 398, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, 412,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, 422,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, 439, 440, 441, 442,
+ -1, -1, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, 456, 457, 458, -1, 460, 461, 462,
+ 463, 464, 465, 466, 467, 468, 469, 470, 471, 472,
+ 473, -1, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, 568, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ 583, 584, 585, 586, 587, 588, 589, 590, 591, 592,
+ 593, 594, 595, 596, 597, 598, 599, 600, 601, 602,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, 629, 630, 631, 632,
+ 633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
+ 643, 644, 645, 646, 647, 648, 649, 650, 651, 652,
+ 653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
+ 663, 664, 665, 666, 667, 668, 669, 670, 671, 672,
+ 673, 674, 675, 676, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, 686, 687, 688, 689, 690, 691, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, 712,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
+ 723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
+ 733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, 750, 751, 752,
+ 753, 754, -1, 756, 757, 758, 759, 19, 20, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 31,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 99, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 116, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 135, -1, -1, -1, -1, -1, -1,
+ -1, -1, 144, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 188, -1, -1, -1,
+ -1, -1, -1, 195, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 218, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 279, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 318, 319, 320, 321,
+ 322, 323, 324, 325, 326, 327, -1, -1, -1, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
+ 342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
+ -1, 353, 354, 355, 356, 357, 358, 359, 360, 361,
+ 362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
+ 382, 383, -1, 385, 386, 387, 388, 389, 390, 391,
+ 392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ 412, 413, -1, 415, 416, 417, 418, 419, 420, 421,
+ 422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
+ 442, -1, -1, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, 456, 457, 458, -1, 460, 461,
+ 462, 463, 464, 465, 466, 467, -1, 469, 470, 471,
+ 472, 473, -1, 475, 476, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
+ 502, 503, 504, 505, -1, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ -1, 533, 534, 535, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
+ 572, 573, 574, 575, 576, 577, 578, 579, 580, 581,
+ 582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
+ 592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
+ 602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
+ 612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
+ 622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
+ 632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
+ 642, 643, 644, 645, 646, 647, 648, 649, 650, 651,
+ 652, 653, 654, 655, 656, 657, 658, 659, 660, -1,
+ 662, 663, 664, 665, 666, 667, 668, 669, 670, 671,
+ 672, 673, 674, 675, 676, 677, 678, 679, 680, -1,
+ 682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
+ 692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
+ 702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
+ 712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
+ 722, 723, 724, 725, 726, 727, 728, 729, 730, 731,
+ 732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
+ 742, 743, 744, 745, 746, 747, 748, 749, 750, 751,
+ 752, 753, 754, -1, 756, 757, 758, 759, 19, 20,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 135, -1, -1, -1, -1, -1,
+ -1, -1, -1, 144, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 188, -1, -1,
+ -1, -1, -1, -1, 195, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 318, 319, 320,
+ 321, 322, 323, 324, 325, 326, 327, -1, -1, -1,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ 341, 342, 343, 344, 345, 346, 347, 348, 349, 350,
+ 351, -1, 353, 354, 355, 356, 357, 358, 359, 360,
+ 361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
+ 381, 382, 383, -1, 385, 386, 387, 388, 389, 390,
+ 391, 392, 393, 394, 395, 396, 397, 398, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, 412, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, 422, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, 439, 440,
+ 441, 442, -1, -1, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, -1, 460,
+ 461, 462, 463, 464, 465, 466, 467, 468, 469, 470,
+ 471, 472, 473, -1, 475, 476, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, 488, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, 498, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, 568, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
+ 591, 592, 593, 594, 595, 596, 597, 598, 599, 600,
+ 601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, 629, 630,
+ 631, 632, 633, 634, 635, 636, 637, 638, 639, 640,
+ 641, 642, 643, 644, 645, 646, 647, 648, 649, 650,
+ 651, 652, 653, 654, 655, 656, 657, 658, 659, 660,
+ 661, 662, 663, 664, 665, 666, 667, 668, 669, 670,
+ 671, 672, 673, 674, 675, 676, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, 686, 687, 688, 689, 690,
+ 691, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, 712, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, 722, 723, 724, 725, 726, 727, 728, 729, 730,
+ 731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, 750,
+ 751, 752, 753, 754, -1, 756, 757, 758, 759, 19,
+ 20, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 135, -1, -1, -1, -1,
+ -1, -1, -1, -1, 144, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, 323, 324, 325, 326, 327, -1, -1,
+ -1, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, 341, 342, 343, 344, 345, 346, 347, 348, 349,
+ 350, 351, -1, 353, 354, 355, 356, 357, 358, 359,
+ 360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, 379,
+ 380, 381, 382, 383, -1, 385, 386, 387, 388, 389,
+ 390, 391, 392, 393, 394, 395, 396, 397, 398, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, 412, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, 439,
+ 440, 441, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, 456, 457, 458, -1,
+ 460, 461, 462, 463, 464, 465, 466, 467, 468, 469,
+ 470, 471, 472, 473, -1, 475, 476, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, 488, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, 498, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, 568, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
+ 590, 591, 592, 593, 594, 595, 596, 597, 598, 599,
+ 600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, 629,
+ 630, 631, 632, 633, 634, 635, 636, 637, 638, 639,
+ 640, 641, 642, 643, 644, 645, 646, 647, 648, 649,
+ 650, 651, 652, 653, 654, 655, 656, 657, 658, 659,
+ 660, 661, 662, 663, 664, 665, 666, 667, 668, 669,
+ 670, 671, 672, 673, 674, 675, 676, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, 686, 687, 688, 689,
+ 690, 691, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, 712, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, 722, 723, 724, 725, 726, 727, 728, 729,
+ 730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ 750, 751, 752, 753, 754, -1, 756, 757, 758, 759,
+ 19, 20, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, -1, -1, -1, 144, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
+ -1, -1, -1, -1, -1, -1, 195, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, 323, 324, 325, 326, 327, -1,
+ -1, -1, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, 341, 342, 343, 344, 345, 346, 347, 348,
+ 349, 350, 351, -1, 353, 354, 355, 356, 357, 358,
+ 359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ 379, 380, 381, 382, 383, -1, 385, 386, 387, 388,
+ 389, 390, 391, 392, 393, 394, 395, 396, 397, 398,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, 412, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, -1, -1, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, 456, 457, 458,
+ -1, 460, 461, 462, 463, 464, 465, 466, 467, 468,
+ 469, 470, 471, 472, 473, -1, 475, 476, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, 488,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, 498,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, 568,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
+ 589, 590, 591, 592, 593, 594, 595, 596, 597, 598,
+ 599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ 629, 630, 631, 632, 633, 634, 635, 636, 637, 638,
+ 639, 640, 641, 642, 643, 644, 645, 646, 647, 648,
+ 649, 650, 651, 652, 653, 654, 655, 656, 657, 658,
+ 659, 660, 661, 662, 663, 664, 665, 666, 667, 668,
+ 669, 670, 671, 672, 673, 674, 675, 676, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, 686, 687, 688,
+ 689, 690, 691, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, 712, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, 722, 723, 724, 725, 726, 727, 728,
+ 729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, -1, 751, 752, 753, 754, -1, 756, 757, 758,
+ 759, 19, 20, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 31, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 135, -1, -1,
+ -1, -1, -1, -1, -1, -1, 144, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 188, -1, -1, -1, -1, -1, -1, 195, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 218, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
+ -1, -1, -1, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
+ 348, 349, 350, 351, -1, 353, 354, 355, 356, 357,
+ 358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
+ 368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, 379, 380, 381, 382, 383, -1, 385, 386, 387,
+ 388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, 439, 440, 441, 442, -1, -1, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
+ 458, -1, 460, 461, 462, 463, 464, 465, 466, 467,
+ -1, 469, 470, 471, 472, 473, -1, 475, 476, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ 488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ 498, 499, 500, 501, 502, 503, 504, 505, -1, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ 568, 569, 570, 571, 572, 573, 574, 575, 576, 577,
+ 578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
+ 588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
+ 598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, 629, 630, 631, 632, 633, 634, 635, 636, 637,
+ 638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
+ 648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
+ 658, 659, 660, -1, 662, 663, 664, 665, 666, 667,
+ 668, 669, 670, 671, 672, 673, 674, 675, 676, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, 686, 687,
+ 688, 689, 690, 691, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, 722, 723, 724, 725, 726, 727,
+ 728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, 750, 751, 752, 753, 754, -1, 756, 757,
+ 758, 759, 19, 20, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, -1, -1, -1, 144, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 188, -1, -1, -1, -1, -1, -1, 195, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 318, 319, 320, -1, 322, 323, 324, 325, 326,
+ 327, -1, -1, -1, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, 456,
+ 457, 458, -1, 460, 461, 462, 463, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, 649, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, 660, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, 712, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, 750, 751, 752, 753, 754, -1, 756,
+ 757, 758, 759, 19, 20, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 68, -1, -1, -1, -1, -1, -1, -1,
+ -1, 77, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 88, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 113, 114, 115,
+ 116, -1, -1, -1, -1, -1, -1, 123, -1, -1,
+ -1, 127, -1, -1, 130, -1, -1, -1, -1, 135,
+ -1, -1, -1, -1, -1, 141, -1, -1, 144, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 157, -1, -1, -1, -1, -1, -1, -1, 165,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 177, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 188, -1, -1, -1, -1, -1, -1, 195,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 241, -1, -1, -1, -1,
+ 246, 247, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 313, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, -1, 324, 325,
+ 326, 327, -1, -1, -1, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, -1, 342, 343, 344, 345,
+ 346, 347, 348, 349, -1, 351, -1, -1, 354, 355,
+ 356, 357, 358, -1, -1, 361, 362, 363, 364, 365,
+ -1, -1, -1, 369, 370, 371, 372, 373, 374, 375,
+ 376, 377, 378, -1, -1, -1, -1, -1, -1, 385,
+ -1, 387, -1, 389, 390, -1, 392, 393, 394, 395,
+ 396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, -1, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, -1, 423, 424, 425,
+ 426, 427, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, -1, -1, -1, 442, -1, 444, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ -1, -1, -1, -1, -1, 461, 462, 463, 464, 465,
+ 466, -1, 468, 469, -1, 471, 472, -1, -1, 475,
+ -1, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, -1, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, -1, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, -1, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, 582, -1, -1, 585,
+ -1, 587, 588, -1, 590, 591, 592, 593, -1, 595,
+ 596, 597, 598, -1, -1, -1, -1, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, -1, 630, -1, 632, 633, 634, -1,
+ 636, 637, -1, 639, 640, 641, 642, 643, 644, -1,
+ 646, 647, 648, 649, 650, 651, 652, -1, 654, 655,
+ 656, -1, 658, 659, 660, 661, -1, 663, 664, -1,
+ -1, 667, 668, -1, -1, 671, 672, 673, -1, 675,
+ -1, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ -1, 687, 688, -1, 690, -1, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, -1, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, -1, 723, 724, -1,
+ 726, 727, 728, 729, 19, 20, 732, 733, -1, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, -1, -1, 752, 753, -1, -1,
+ 756, -1, 758, 759, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 68, -1, -1, -1, -1, -1, -1,
+ -1, -1, 77, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 88, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 114,
+ -1, 116, -1, -1, -1, -1, -1, -1, 123, -1,
+ -1, -1, 127, -1, -1, 130, -1, -1, -1, -1,
+ 135, -1, -1, -1, -1, -1, 141, -1, -1, 144,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 157, -1, -1, -1, -1, -1, -1, -1,
+ 165, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 177, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 188, -1, -1, -1, -1, -1, -1,
+ 195, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 207, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 218, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 241, -1, -1, -1,
+ -1, 246, 247, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 279, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 311, -1, 313, -1,
+ -1, -1, -1, 318, 319, 320, 321, 322, -1, 324,
+ 325, 326, 327, -1, -1, -1, 331, 332, 333, 334,
+ 335, 336, 337, 338, 339, 340, -1, 342, 343, 344,
+ 345, 346, 347, 348, 349, -1, 351, -1, -1, 354,
+ 355, 356, 357, 358, -1, -1, 361, 362, 363, 364,
+ 365, -1, -1, -1, 369, 370, 371, 372, 373, 374,
+ 375, 376, 377, 378, -1, -1, -1, -1, -1, -1,
+ 385, -1, 387, -1, 389, 390, -1, 392, 393, 394,
+ 395, 396, 397, -1, 399, 400, 401, 402, 403, 404,
+ 405, 406, 407, 408, 409, 410, 411, -1, 413, -1,
+ 415, 416, 417, 418, 419, 420, 421, -1, 423, 424,
+ 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
+ 435, 436, 437, 438, -1, -1, -1, 442, -1, 444,
+ 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
+ 455, -1, -1, -1, -1, -1, 461, 462, 463, 464,
+ 465, 466, -1, 468, 469, -1, 471, 472, -1, -1,
+ 475, -1, 477, 478, 479, 480, 481, 482, 483, 484,
+ 485, 486, 487, -1, 489, 490, 491, 492, 493, 494,
+ 495, 496, 497, -1, 499, 500, 501, 502, 503, 504,
+ 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
+ 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
+ 525, 526, 527, 528, 529, 530, 531, -1, 533, 534,
+ 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
+ 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
+ 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
+ 565, 566, 567, -1, 569, 570, 571, 572, 573, 574,
+ 575, 576, -1, 578, 579, 580, 581, 582, -1, -1,
+ 585, -1, 587, 588, -1, 590, 591, 592, 593, -1,
+ 595, 596, 597, 598, -1, -1, -1, -1, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, -1, 630, -1, 632, 633, 634,
+ -1, 636, 637, -1, 639, 640, 641, 642, 643, 644,
+ -1, 646, 647, 648, 649, 650, 651, 652, -1, 654,
+ 655, 656, -1, 658, 659, 660, 661, -1, 663, 664,
+ -1, -1, 667, 668, -1, -1, 671, 672, 673, -1,
+ 675, -1, 677, 678, 679, 680, -1, 682, 683, 684,
+ 685, -1, 687, 688, -1, 690, -1, 692, 693, 694,
+ 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
+ 705, 706, 707, 708, 709, 710, 711, -1, 713, 714,
+ 715, 716, 717, 718, 719, 720, 721, -1, 723, 724,
+ -1, 726, 727, 728, 729, 19, 20, 732, 733, -1,
+ 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
+ 745, 746, 747, 748, 749, -1, -1, 752, 753, -1,
+ -1, 756, -1, 758, 759, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 68, -1, -1, -1, -1, -1,
+ -1, -1, -1, 77, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 88, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, 123,
+ -1, -1, -1, 127, -1, -1, 130, -1, -1, -1,
+ -1, 135, -1, -1, -1, -1, -1, 141, -1, -1,
+ 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 157, -1, -1, -1, -1, -1, -1,
+ -1, 165, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 177, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 188, -1, -1, -1, -1, -1,
+ -1, 195, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 241, -1, -1,
+ -1, -1, 246, 247, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 313,
+ -1, -1, -1, -1, 318, 319, 320, 321, 322, -1,
+ 324, 325, 326, 327, -1, -1, -1, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, -1, 342, 343,
+ 344, 345, 346, 347, 348, 349, -1, 351, -1, -1,
+ 354, 355, 356, 357, 358, -1, -1, 361, 362, 363,
+ 364, 365, -1, -1, -1, 369, 370, 371, 372, 373,
+ 374, 375, 376, 377, 378, -1, -1, -1, -1, -1,
+ -1, 385, -1, 387, -1, 389, 390, -1, 392, 393,
+ 394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, -1, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, -1, 423,
+ 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, -1, -1, -1, 442, -1,
+ 444, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, -1, -1, -1, -1, -1, 461, 462, 463,
+ 464, 465, 466, -1, 468, 469, -1, 471, 472, -1,
+ -1, 475, -1, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, -1, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, -1, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, -1, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, 582, -1,
+ -1, 585, -1, 587, 588, -1, 590, 591, 592, 593,
+ -1, 595, 596, 597, 598, -1, -1, -1, -1, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, -1, 630, -1, 632, 633,
+ 634, -1, 636, 637, -1, 639, 640, 641, 642, 643,
+ 644, -1, 646, 647, 648, 649, 650, 651, 652, -1,
+ 654, 655, 656, -1, 658, 659, 660, 661, -1, 663,
+ 664, -1, -1, 667, 668, -1, -1, 671, 672, 673,
+ -1, 675, -1, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, -1, 687, 688, -1, 690, -1, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, -1, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, -1, 723,
+ 724, -1, 726, 727, 728, 729, 19, 20, 732, 733,
+ -1, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, -1, -1, 752, 753,
+ -1, -1, 756, -1, 758, 759, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 68, -1, -1, -1, -1,
+ -1, -1, -1, -1, 77, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 88, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 116, -1, -1, -1, -1, -1, -1,
+ 123, -1, -1, -1, 127, -1, -1, 130, -1, -1,
+ -1, -1, 135, -1, -1, -1, -1, -1, 141, -1,
+ -1, 144, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 157, -1, -1, -1, -1, -1,
+ -1, -1, 165, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 177, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 188, -1, -1, -1, -1,
+ -1, -1, 195, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 207, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 218, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 241, -1,
+ -1, -1, -1, 246, 247, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 279, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 313, -1, -1, -1, -1, 318, 319, 320, 321, 322,
+ -1, 324, 325, 326, 327, -1, -1, -1, 331, 332,
+ 333, 334, 335, 336, 337, 338, 339, 340, -1, 342,
+ 343, 344, 345, 346, 347, 348, 349, -1, 351, -1,
+ -1, 354, 355, 356, 357, 358, -1, -1, 361, 362,
+ 363, 364, 365, -1, -1, -1, 369, 370, 371, 372,
+ 373, 374, 375, 376, 377, 378, -1, -1, -1, -1,
+ -1, -1, 385, -1, 387, -1, 389, 390, -1, 392,
+ 393, 394, 395, 396, 397, -1, 399, 400, 401, 402,
+ 403, 404, 405, 406, 407, 408, 409, 410, 411, -1,
+ 413, -1, 415, 416, 417, 418, 419, 420, 421, -1,
+ 423, 424, 425, 426, 427, 428, 429, 430, 431, 432,
+ 433, 434, 435, 436, 437, 438, -1, -1, -1, 442,
+ -1, 444, 445, 446, 447, 448, 449, 450, 451, 452,
+ 453, 454, 455, -1, -1, -1, -1, -1, 461, 462,
+ 463, 464, 465, 466, -1, 468, 469, -1, 471, 472,
+ -1, -1, 475, -1, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, -1, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, -1, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, -1,
+ 533, 534, 535, 536, 537, 538, 539, 540, 541, 542,
+ 543, 544, 545, 546, 547, 548, 549, 550, 551, 552,
+ 553, 554, 555, 556, 557, 558, 559, 560, 561, 562,
+ 563, 564, 565, 566, 567, -1, 569, 570, 571, 572,
+ 573, 574, 575, 576, -1, 578, 579, 580, 581, 582,
+ -1, -1, 585, -1, 587, 588, -1, 590, 591, 592,
+ 593, -1, 595, 596, 597, 598, -1, -1, -1, -1,
+ 603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
+ 613, 614, 615, 616, 617, 618, 619, 620, 621, 622,
+ 623, 624, 625, 626, 627, 628, -1, 630, -1, 632,
+ 633, 634, -1, 636, 637, -1, 639, 640, 641, 642,
+ 643, 644, -1, 646, 647, 648, 649, 650, 651, 652,
+ -1, 654, 655, 656, -1, 658, 659, 660, 661, -1,
+ 663, 664, -1, -1, 667, 668, -1, -1, 671, 672,
+ 673, -1, 675, -1, 677, 678, 679, 680, -1, 682,
+ 683, 684, 685, -1, 687, 688, -1, 690, -1, 692,
+ 693, 694, 695, 696, 697, 698, 699, 700, 701, 702,
+ 703, 704, 705, 706, 707, 708, 709, 710, 711, -1,
+ 713, 714, 715, 716, 717, 718, 719, 720, 721, -1,
+ 723, 724, -1, 726, 727, 728, 729, 19, 20, 732,
+ 733, -1, 735, 736, 737, 738, 739, 740, 741, 742,
+ 743, 744, 745, 746, 747, 748, 749, -1, -1, 752,
+ 753, -1, -1, 756, -1, 758, 759, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 68, -1, -1, -1,
+ -1, -1, -1, -1, -1, 77, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 88, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 116, -1, -1, -1, -1, -1,
+ -1, 123, -1, -1, -1, 127, -1, -1, 130, -1,
+ -1, -1, -1, 135, -1, -1, -1, -1, -1, 141,
+ -1, -1, 144, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 157, -1, -1, -1, -1,
+ -1, -1, -1, 165, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 177, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 188, -1, -1, -1,
+ -1, -1, -1, 195, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 218, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 241,
+ -1, -1, -1, -1, 246, 247, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 279, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 313, -1, -1, -1, -1, 318, 319, 320, 321,
+ 322, -1, 324, 325, 326, 327, -1, -1, -1, 331,
+ 332, 333, 334, 335, 336, 337, 338, 339, 340, -1,
+ 342, 343, 344, 345, 346, 347, 348, 349, -1, 351,
+ -1, -1, 354, 355, 356, 357, 358, -1, -1, 361,
+ 362, 363, 364, 365, -1, -1, -1, 369, 370, 371,
+ 372, 373, 374, 375, 376, 377, 378, -1, -1, -1,
+ -1, -1, -1, 385, -1, 387, -1, 389, 390, -1,
+ 392, 393, 394, 395, 396, 397, -1, 399, 400, 401,
+ 402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
+ -1, 413, -1, 415, 416, 417, 418, 419, 420, 421,
+ -1, 423, 424, 425, 426, 427, 428, 429, 430, 431,
+ 432, 433, 434, 435, 436, 437, 438, -1, -1, -1,
+ 442, -1, 444, 445, 446, 447, 448, 449, 450, 451,
+ 452, 453, 454, 455, -1, -1, -1, -1, -1, 461,
+ 462, 463, 464, 465, 466, -1, 468, 469, -1, 471,
+ 472, -1, -1, 475, -1, 477, 478, 479, 480, 481,
+ 482, 483, 484, 485, 486, 487, -1, 489, 490, 491,
+ 492, 493, 494, 495, 496, 497, -1, 499, 500, 501,
+ 502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
+ 512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
+ 522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
+ -1, 533, 534, 535, 536, 537, 538, 539, 540, 541,
+ 542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
+ 552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
+ 562, 563, 564, 565, 566, 567, -1, 569, 570, 571,
+ 572, 573, 574, 575, 576, -1, 578, 579, 580, 581,
+ 582, -1, -1, 585, -1, 587, 588, -1, 590, 591,
+ 592, 593, -1, 595, 596, 597, 598, -1, -1, -1,
+ -1, 603, 604, 605, 606, 607, 608, 609, 610, 611,
+ 612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
+ 622, 623, 624, 625, 626, 627, 628, -1, 630, -1,
+ 632, 633, 634, -1, 636, 637, -1, 639, 640, 641,
+ 642, 643, 644, -1, 646, 647, 648, 649, 650, 651,
+ 652, -1, 654, 655, 656, -1, 658, 659, 660, 661,
+ -1, 663, 664, -1, -1, 667, 668, -1, -1, 671,
+ 672, 673, -1, 675, -1, 677, 678, 679, 680, -1,
+ 682, 683, 684, 685, -1, 687, 688, -1, 690, -1,
+ 692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
+ 702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
+ -1, 713, 714, 715, 716, 717, 718, 719, 720, 721,
+ -1, 723, 724, -1, 726, 727, 728, 729, 19, 20,
+ 732, 733, -1, 735, 736, 737, 738, 739, 740, 741,
+ 742, 743, 744, 745, 746, 747, 748, 749, -1, -1,
+ 752, 753, -1, -1, 756, -1, 758, 759, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 68, -1, -1,
+ -1, -1, -1, -1, -1, -1, 77, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 116, -1, -1, -1, -1,
+ -1, -1, 123, -1, -1, -1, 127, -1, -1, 130,
+ -1, -1, -1, -1, 135, -1, -1, -1, -1, -1,
+ 141, -1, -1, 144, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 157, -1, -1, -1,
+ -1, -1, -1, -1, 165, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 177, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 188, -1, -1,
+ -1, -1, -1, -1, 195, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 207, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 218, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 241, -1, -1, -1, -1, 246, 247, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 279, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 313, -1, -1, -1, -1, 318, 319, 320,
+ 321, 322, -1, 324, 325, 326, 327, -1, -1, -1,
+ 331, 332, 333, 334, 335, 336, 337, 338, 339, 340,
+ -1, 342, 343, 344, 345, 346, 347, 348, 349, -1,
+ 351, -1, -1, 354, 355, 356, 357, 358, -1, -1,
+ 361, 362, 363, 364, 365, -1, -1, -1, 369, 370,
+ 371, 372, 373, 374, 375, 376, 377, 378, -1, -1,
+ -1, -1, -1, -1, 385, -1, 387, -1, 389, 390,
+ -1, 392, 393, 394, 395, 396, 397, -1, 399, 400,
+ 401, 402, 403, 404, 405, 406, 407, 408, 409, 410,
+ 411, -1, 413, -1, 415, 416, 417, 418, 419, 420,
+ 421, -1, 423, 424, 425, 426, 427, 428, 429, 430,
+ 431, 432, 433, 434, 435, 436, 437, 438, -1, -1,
+ -1, 442, -1, 444, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, -1, -1, -1, -1, -1,
+ 461, 462, 463, 464, 465, 466, -1, 468, 469, -1,
+ 471, 472, -1, -1, 475, -1, 477, 478, 479, 480,
+ 481, 482, 483, 484, 485, 486, 487, -1, 489, 490,
+ 491, 492, 493, 494, 495, 496, 497, -1, 499, 500,
+ 501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
+ 511, 512, 513, 514, 515, 516, 517, 518, 519, 520,
+ 521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
+ 531, -1, 533, 534, 535, 536, 537, 538, 539, 540,
+ 541, 542, 543, 544, 545, 546, 547, 548, 549, 550,
+ 551, 552, 553, 554, 555, 556, 557, 558, 559, 560,
+ 561, 562, 563, 564, 565, 566, 567, -1, 569, 570,
+ 571, 572, 573, 574, 575, 576, -1, 578, 579, 580,
+ 581, 582, -1, -1, 585, -1, 587, 588, -1, 590,
+ 591, 592, 593, -1, 595, 596, 597, 598, -1, -1,
+ -1, -1, 603, 604, 605, 606, 607, 608, 609, 610,
+ 611, 612, 613, 614, 615, 616, 617, 618, 619, 620,
+ 621, 622, 623, 624, 625, 626, 627, 628, -1, 630,
+ -1, 632, 633, 634, -1, 636, 637, -1, 639, 640,
+ 641, 642, 643, 644, -1, 646, 647, 648, 649, 650,
+ 651, 652, -1, 654, 655, 656, -1, 658, 659, 660,
+ 661, -1, 663, 664, -1, -1, 667, 668, -1, -1,
+ 671, 672, 673, -1, 675, -1, 677, 678, 679, 680,
+ -1, 682, 683, 684, 685, -1, 687, 688, -1, 690,
+ -1, 692, 693, 694, 695, 696, 697, 698, 699, 700,
+ 701, 702, 703, 704, 705, 706, 707, 708, 709, 710,
+ 711, -1, 713, 714, 715, 716, 717, 718, 719, 720,
+ 721, -1, 723, 724, -1, 726, 727, 728, 729, 19,
+ 20, 732, 733, -1, 735, 736, 737, 738, 739, 740,
+ 741, 742, 743, 744, 745, 746, 747, 748, 749, -1,
+ -1, 752, 753, -1, -1, 756, -1, 758, 759, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 68, -1,
+ -1, -1, -1, -1, -1, -1, -1, 77, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 88, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 116, -1, -1, -1,
+ -1, -1, -1, 123, -1, -1, -1, 127, -1, -1,
+ 130, -1, -1, -1, -1, 135, -1, -1, -1, -1,
+ -1, 141, -1, -1, 144, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 157, -1, -1,
+ -1, -1, -1, -1, -1, 165, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 177, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 241, -1, -1, -1, -1, 246, 247, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 313, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, -1, 324, 325, 326, 327, -1, -1,
+ -1, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, -1, 342, 343, 344, 345, 346, 347, 348, 349,
+ -1, 351, -1, -1, 354, 355, 356, 357, 358, -1,
+ -1, 361, 362, 363, 364, 365, -1, -1, -1, 369,
+ 370, 371, 372, 373, 374, 375, 376, 377, 378, -1,
+ -1, -1, -1, -1, -1, 385, -1, 387, -1, 389,
+ 390, -1, 392, 393, 394, 395, 396, 397, -1, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, -1, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, -1, 423, 424, 425, 426, 427, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, -1,
+ -1, -1, 442, -1, 444, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, -1, -1, -1, -1,
+ -1, 461, 462, 463, 464, 465, 466, -1, 468, 469,
+ -1, 471, 472, -1, -1, 475, -1, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, -1, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, -1, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, -1, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, 582, -1, -1, 585, -1, 587, 588, -1,
+ 590, 591, 592, 593, -1, 595, 596, 597, 598, -1,
+ -1, -1, -1, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, -1,
+ 630, -1, 632, 633, 634, -1, 636, 637, -1, 639,
+ 640, 641, 642, 643, 644, -1, 646, 647, 648, 649,
+ 650, 651, 652, -1, 654, 655, 656, -1, 658, 659,
+ 660, 661, -1, 663, 664, -1, -1, 667, 668, -1,
+ -1, 671, 672, 673, -1, 675, -1, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, -1, 687, 688, -1,
+ 690, -1, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, -1, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, -1, 723, 724, -1, 726, 727, 728, 729,
+ 19, 20, 732, 733, -1, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ -1, -1, 752, 753, -1, -1, 756, -1, 758, 759,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 68,
+ -1, -1, -1, -1, -1, -1, -1, -1, 77, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 88,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 116, -1, -1,
+ -1, -1, -1, -1, 123, -1, -1, -1, 127, -1,
+ -1, 130, -1, -1, -1, -1, 135, -1, -1, -1,
+ -1, -1, 141, -1, -1, 144, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 157, -1,
+ -1, -1, -1, -1, -1, -1, 165, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 177, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 188,
+ -1, -1, -1, -1, -1, -1, 195, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 207, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 218,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 241, -1, -1, -1, -1, 246, 247, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 279, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 313, -1, -1, -1, -1, 318,
+ 319, 320, 321, 322, -1, 324, 325, 326, 327, -1,
+ -1, -1, 331, 332, 333, 334, 335, 336, 337, 338,
+ 339, 340, -1, 342, 343, 344, 345, 346, 347, 348,
+ 349, -1, 351, -1, -1, 354, 355, 356, 357, 358,
+ -1, -1, 361, 362, 363, 364, 365, -1, -1, -1,
+ 369, 370, 371, 372, 373, 374, 375, 376, 377, 378,
+ -1, -1, -1, -1, -1, -1, 385, -1, 387, -1,
+ 389, 390, -1, 392, 393, 394, 395, 396, 397, -1,
+ 399, 400, 401, 402, 403, 404, 405, 406, 407, 408,
+ 409, 410, 411, -1, 413, -1, 415, 416, 417, 418,
+ 419, 420, 421, -1, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ -1, -1, -1, 442, -1, 444, 445, 446, 447, 448,
+ 449, 450, 451, 452, 453, 454, 455, -1, -1, -1,
+ -1, -1, 461, 462, 463, 464, 465, 466, -1, 468,
+ 469, -1, 471, 472, -1, -1, 475, -1, 477, 478,
+ 479, 480, 481, 482, 483, 484, 485, 486, 487, -1,
+ 489, 490, 491, 492, 493, 494, 495, 496, 497, -1,
+ 499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
+ 509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
+ 519, 520, 521, 522, 523, 524, 525, 526, 527, 528,
+ 529, 530, 531, -1, 533, 534, 535, 536, 537, 538,
+ 539, 540, 541, 542, 543, 544, 545, 546, 547, 548,
+ 549, 550, 551, 552, 553, 554, 555, 556, 557, 558,
+ 559, 560, 561, 562, 563, 564, 565, 566, 567, -1,
+ 569, 570, 571, 572, 573, 574, 575, 576, -1, 578,
+ 579, 580, 581, 582, -1, -1, 585, -1, 587, 588,
+ -1, 590, 591, 592, 593, -1, 595, 596, 597, 598,
+ -1, -1, -1, -1, 603, 604, 605, 606, 607, 608,
+ 609, 610, 611, 612, 613, 614, 615, 616, 617, 618,
+ 619, 620, 621, 622, 623, 624, 625, 626, 627, 628,
+ -1, 630, -1, 632, 633, 634, -1, 636, 637, -1,
+ 639, 640, 641, 642, 643, 644, -1, 646, 647, 648,
+ 649, 650, 651, 652, -1, 654, 655, 656, -1, 658,
+ 659, 660, 661, -1, 663, 664, -1, -1, 667, 668,
+ -1, -1, 671, 672, 673, -1, 675, -1, 677, 678,
+ 679, 680, -1, 682, 683, 684, 685, -1, 687, 688,
+ -1, 690, -1, 692, 693, 694, 695, 696, 697, 698,
+ 699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
+ 709, 710, 711, -1, 713, 714, 715, 716, 717, 718,
+ 719, 720, 721, -1, 723, 724, -1, 726, 727, 728,
+ 729, 19, 20, 732, 733, -1, 735, 736, 737, 738,
+ 739, 740, 741, 742, 743, 744, 745, 746, 747, 748,
+ 749, -1, -1, 752, 753, -1, -1, 756, -1, 758,
+ 759, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 68, -1, -1, -1, -1, -1, -1, -1, -1, 77,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 88, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, -1, -1, -1, 123, -1, -1, -1, 127,
+ -1, -1, 130, -1, -1, -1, -1, 135, -1, -1,
+ -1, -1, -1, 141, -1, -1, 144, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 157,
+ -1, -1, -1, -1, -1, -1, -1, 165, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 177,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 188, -1, -1, -1, -1, -1, -1, 195, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 218, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 241, -1, -1, -1, -1, 246, 247,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 313, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, -1, 324, 325, 326, 327,
+ -1, -1, -1, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, -1, 342, 343, 344, 345, 346, 347,
+ 348, 349, -1, 351, -1, -1, 354, 355, 356, 357,
+ 358, -1, -1, 361, 362, 363, 364, 365, -1, -1,
+ -1, 369, 370, 371, 372, 373, 374, 375, 376, 377,
+ 378, -1, -1, -1, -1, -1, -1, 385, -1, 387,
+ -1, 389, 390, -1, 392, 393, 394, 395, 396, 397,
+ -1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, -1, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, -1, 423, 424, 425, 426, -1,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, -1, -1, -1, 442, -1, 444, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, -1, -1,
+ -1, -1, -1, 461, 462, 463, 464, 465, 466, -1,
+ 468, 469, -1, 471, 472, -1, -1, 475, -1, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ -1, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ -1, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ -1, 569, 570, 571, 572, 573, 574, 575, 576, -1,
+ 578, 579, 580, 581, 582, -1, -1, 585, -1, 587,
+ 588, -1, 590, 591, 592, 593, -1, 595, 596, 597,
+ 598, -1, -1, -1, -1, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, -1, 630, -1, 632, 633, 634, -1, 636, 637,
+ -1, 639, 640, 641, 642, 643, 644, -1, 646, 647,
+ 648, 649, 650, 651, 652, -1, 654, 655, 656, -1,
+ 658, 659, 660, 661, -1, 663, 664, -1, -1, 667,
+ 668, -1, -1, 671, 672, 673, -1, 675, -1, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, -1, 687,
+ 688, -1, 690, -1, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, -1, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, -1, 723, 724, -1, 726, 727,
+ 728, 729, 19, 20, 732, 733, -1, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, -1, -1, 752, 753, -1, -1, 756, -1,
+ 758, 759, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 68, -1, -1, -1, -1, -1, -1, -1, -1,
+ 77, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 116,
+ -1, -1, -1, -1, -1, -1, 123, -1, -1, -1,
+ 127, -1, -1, 130, -1, -1, -1, -1, 135, -1,
+ -1, -1, -1, -1, 141, -1, -1, 144, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 157, -1, -1, -1, -1, -1, -1, -1, 165, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 177, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 188, -1, -1, -1, -1, -1, -1, 195, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 207, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 218, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 241, -1, -1, -1, -1, 246,
+ 247, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 279, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 313, -1, -1, -1,
+ -1, 318, 319, 320, 321, 322, -1, 324, 325, 326,
+ 327, -1, -1, -1, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, -1, 342, 343, 344, 345, 346,
+ 347, 348, 349, -1, 351, -1, -1, 354, 355, 356,
+ 357, 358, -1, -1, 361, 362, 363, 364, 365, -1,
+ -1, -1, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, -1, -1, -1, -1, -1, -1, 385, -1,
+ 387, -1, 389, 390, -1, 392, 393, 394, 395, 396,
+ 397, -1, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, -1, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, -1, 423, 424, 425, 426,
+ -1, 428, 429, 430, 431, 432, 433, 434, 435, 436,
+ 437, 438, -1, -1, -1, 442, -1, 444, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, 455, -1,
+ -1, -1, -1, -1, 461, 462, 463, 464, 465, 466,
+ -1, 468, 469, -1, 471, 472, -1, -1, 475, -1,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, -1, 489, 490, 491, 492, 493, 494, 495, 496,
+ 497, -1, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, 540, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, 558, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, -1, 569, 570, 571, 572, 573, 574, 575, 576,
+ -1, 578, 579, 580, 581, 582, -1, -1, 585, -1,
+ 587, 588, -1, 590, 591, 592, 593, -1, 595, 596,
+ 597, 598, -1, -1, -1, -1, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, 615, 616,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, -1, 630, -1, 632, 633, 634, -1, 636,
+ 637, -1, 639, 640, 641, 642, 643, 644, -1, 646,
+ 647, 648, 649, 650, 651, 652, -1, 654, 655, 656,
+ -1, 658, 659, 660, 661, -1, 663, 664, -1, -1,
+ 667, 668, -1, -1, 671, 672, 673, -1, 675, -1,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, -1,
+ 687, 688, -1, 690, -1, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, 710, 711, -1, 713, 714, 715, 716,
+ 717, 718, 719, 720, 721, -1, 723, 724, -1, 726,
+ 727, 728, 729, 19, 20, 732, 733, -1, 735, 736,
+ 737, 738, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, -1, -1, 752, 753, -1, -1, 756,
+ -1, 758, 759, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 68, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 88, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 116, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 127, -1, -1, -1, -1, -1, -1, -1, 135,
+ -1, -1, -1, -1, -1, 141, -1, -1, 144, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 177, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 188, -1, -1, -1, -1, -1, -1, 195,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 207, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 218, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 241, -1, -1, -1, -1,
+ 246, 247, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 279, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 313, -1, -1,
+ -1, -1, 318, 319, 320, 321, 322, -1, 324, 325,
+ 326, 327, -1, -1, -1, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, -1, 342, 343, 344, 345,
+ 346, 347, 348, 349, -1, 351, -1, -1, 354, 355,
+ 356, 357, 358, -1, -1, 361, 362, 363, 364, 365,
+ -1, -1, -1, 369, 370, 371, 372, 373, -1, 375,
+ 376, 377, 378, -1, -1, -1, -1, -1, -1, 385,
+ -1, 387, -1, 389, 390, -1, 392, 393, 394, 395,
+ 396, 397, -1, 399, 400, 401, 402, 403, 404, 405,
+ 406, 407, 408, 409, 410, 411, -1, 413, -1, 415,
+ 416, 417, 418, 419, 420, 421, -1, 423, 424, 425,
+ 426, -1, 428, 429, 430, 431, 432, 433, 434, 435,
+ 436, 437, 438, -1, -1, -1, 442, -1, -1, 445,
+ 446, 447, 448, 449, 450, 451, 452, 453, 454, 455,
+ -1, -1, -1, -1, -1, 461, 462, 463, 464, 465,
+ 466, -1, 468, 469, -1, 471, 472, -1, -1, 475,
+ -1, 477, 478, 479, 480, 481, 482, 483, 484, 485,
+ 486, 487, -1, 489, 490, 491, 492, 493, 494, 495,
+ 496, 497, -1, 499, 500, 501, 502, 503, 504, 505,
+ 506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
+ 516, 517, 518, 519, 520, 521, 522, 523, 524, 525,
+ 526, 527, 528, 529, 530, 531, -1, 533, 534, 535,
+ 536, 537, 538, 539, 540, 541, 542, 543, 544, 545,
+ 546, 547, 548, 549, 550, 551, 552, 553, 554, 555,
+ 556, 557, 558, 559, 560, 561, 562, 563, 564, 565,
+ 566, 567, -1, 569, 570, 571, 572, 573, 574, 575,
+ 576, -1, 578, 579, 580, 581, -1, -1, -1, 585,
+ -1, 587, 588, -1, 590, 591, 592, 593, -1, 595,
+ 596, 597, 598, -1, -1, -1, -1, 603, 604, 605,
+ 606, 607, 608, 609, 610, 611, 612, 613, 614, 615,
+ 616, 617, 618, 619, 620, 621, 622, 623, 624, 625,
+ 626, 627, 628, -1, 630, -1, 632, 633, 634, -1,
+ 636, 637, -1, 639, 640, 641, 642, 643, 644, -1,
+ 646, 647, 648, 649, 650, 651, 652, -1, 654, 655,
+ 656, -1, 658, 659, 660, 661, -1, 663, 664, 19,
+ 20, 667, 668, -1, -1, 671, 672, 673, -1, 675,
+ -1, 677, 678, 679, 680, -1, 682, 683, 684, 685,
+ -1, 687, 688, -1, 690, -1, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, -1, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, -1, 723, 724, -1,
+ 726, 727, 728, 729, -1, -1, 732, 733, 88, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, -1, -1, 752, 753, -1, -1,
+ 756, -1, 758, 759, -1, -1, 116, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 135, -1, -1, -1, -1,
+ -1, -1, -1, -1, 144, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
+ -1, -1, -1, -1, -1, 195, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 207, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 218, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 279,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 311, -1, -1, -1, -1, -1, -1, 318, 319,
+ 320, 321, 322, -1, 324, 325, 326, 327, -1, -1,
+ -1, 331, 332, 333, 334, 335, 336, 337, 338, 339,
+ 340, -1, 342, 343, 344, 345, 346, 347, 348, 349,
+ -1, -1, -1, -1, 354, 355, 356, 357, 358, -1,
+ -1, 361, 362, 363, 364, 365, -1, -1, -1, 369,
+ 370, 371, 372, 373, -1, 375, 376, 377, 378, -1,
+ -1, -1, -1, -1, -1, 385, -1, 387, -1, 389,
+ 390, -1, 392, 393, 394, 395, 396, 397, -1, 399,
+ 400, 401, 402, 403, 404, 405, 406, 407, 408, 409,
+ 410, 411, -1, 413, -1, 415, 416, 417, 418, 419,
+ 420, 421, -1, 423, 424, 425, 426, -1, 428, 429,
+ 430, 431, 432, 433, 434, 435, 436, 437, 438, -1,
+ -1, -1, 442, -1, -1, 445, 446, 447, 448, 449,
+ 450, 451, 452, 453, 454, 455, -1, -1, -1, -1,
+ -1, 461, 462, 463, 464, 465, 466, -1, 468, 469,
+ -1, 471, 472, -1, -1, 475, -1, 477, 478, 479,
+ 480, 481, 482, 483, 484, 485, 486, 487, -1, 489,
+ 490, 491, 492, 493, 494, 495, 496, 497, -1, 499,
+ 500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
+ 510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
+ 520, 521, 522, 523, 524, 525, 526, 527, 528, 529,
+ 530, 531, -1, 533, 534, 535, 536, 537, 538, 539,
+ 540, 541, 542, 543, 544, 545, 546, 547, 548, 549,
+ 550, 551, 552, 553, 554, 555, 556, 557, 558, 559,
+ 560, 561, 562, 563, 564, 565, 566, 567, -1, 569,
+ 570, 571, 572, 573, 574, 575, 576, -1, 578, 579,
+ 580, 581, -1, -1, -1, 585, -1, 587, 588, -1,
+ 590, 591, 592, 593, -1, 595, 596, 597, 598, -1,
+ -1, -1, -1, 603, 604, 605, 606, 607, 608, 609,
+ 610, 611, 612, 613, 614, 615, 616, 617, 618, 619,
+ 620, 621, 622, 623, 624, 625, 626, 627, 628, -1,
+ 630, -1, 632, 633, 634, -1, 636, 637, -1, 639,
+ 640, 641, 642, 643, 644, -1, 646, 647, 648, 649,
+ 650, 651, 652, -1, 654, 655, 656, -1, 658, 659,
+ 660, 661, -1, 663, 664, 19, 20, 667, 668, -1,
+ -1, 671, 672, 673, -1, 675, -1, 677, 678, 679,
+ 680, -1, 682, 683, 684, 685, -1, 687, 688, -1,
+ 690, -1, 692, 693, 694, 695, 696, 697, 698, 699,
+ 700, 701, 702, 703, 704, 705, 706, 707, 708, 709,
+ 710, 711, -1, 713, 714, 715, 716, 717, 718, 719,
+ 720, 721, -1, 723, 724, -1, 726, 727, 728, 729,
+ -1, -1, 732, 733, 88, 735, 736, 737, 738, 739,
+ 740, 741, 742, 743, 744, 745, 746, 747, 748, 749,
+ -1, -1, 752, 753, -1, -1, 756, -1, 758, 759,
+ -1, -1, 116, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 135, -1, -1, -1, -1, -1, -1, -1, -1,
+ 144, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 188, -1, -1, -1, -1, -1,
+ -1, 195, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 207, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 218, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 279, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 311, -1, -1,
+ -1, -1, -1, -1, 318, 319, 320, 321, 322, -1,
+ 324, 325, 326, 327, -1, -1, -1, 331, 332, 333,
+ 334, 335, 336, 337, 338, 339, 340, -1, 342, 343,
+ 344, 345, 346, 347, 348, 349, -1, -1, -1, -1,
+ 354, 355, 356, 357, 358, -1, -1, 361, 362, 363,
+ 364, 365, -1, -1, -1, 369, 370, 371, 372, 373,
+ -1, 375, 376, 377, 378, -1, -1, -1, -1, -1,
+ -1, 385, -1, 387, -1, 389, 390, -1, 392, 393,
+ 394, 395, 396, 397, -1, 399, 400, 401, 402, 403,
+ 404, 405, 406, 407, 408, 409, 410, 411, -1, 413,
+ -1, 415, 416, 417, 418, 419, 420, 421, -1, 423,
+ 424, 425, 426, -1, 428, 429, 430, 431, 432, 433,
+ 434, 435, 436, 437, 438, -1, -1, -1, 442, -1,
+ -1, 445, 446, 447, 448, 449, 450, 451, 452, 453,
+ 454, 455, -1, -1, -1, -1, -1, 461, 462, 463,
+ 464, 465, 466, -1, 468, 469, -1, 471, 472, -1,
+ -1, 475, -1, 477, 478, 479, 480, 481, 482, 483,
+ 484, 485, 486, 487, -1, 489, 490, 491, 492, 493,
+ 494, 495, 496, 497, -1, 499, 500, 501, 502, 503,
+ 504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
+ 514, 515, 516, 517, 518, 519, 520, 521, 522, 523,
+ 524, 525, 526, 527, 528, 529, 530, 531, -1, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, -1, 569, 570, 571, 572, 573,
+ 574, 575, 576, -1, 578, 579, 580, 581, -1, -1,
+ -1, 585, -1, 587, 588, -1, 590, 591, 592, 593,
+ -1, 595, 596, 597, 598, -1, -1, -1, -1, 603,
+ 604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
+ 614, 615, 616, 617, 618, 619, 620, 621, 622, 623,
+ 624, 625, 626, 627, 628, -1, 630, -1, 632, 633,
+ 634, -1, 636, 637, -1, 639, 640, 641, 642, 643,
+ 644, -1, 646, 647, 648, 649, 650, 651, 652, -1,
+ 654, 655, 656, -1, 658, 659, 660, 661, -1, 663,
+ 664, 19, 20, 667, 668, -1, -1, 671, 672, 673,
+ -1, 675, -1, 677, 678, 679, 680, -1, 682, 683,
+ 684, 685, -1, 687, 688, -1, 690, -1, 692, 693,
+ 694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
+ 704, 705, 706, 707, 708, 709, 710, 711, -1, 713,
+ 714, 715, 716, 717, 718, 719, 720, 721, -1, 723,
+ 724, -1, 726, 727, 728, 729, -1, -1, 732, 733,
+ 88, 735, 736, 737, 738, 739, 740, 741, 742, 743,
+ 744, 745, 746, 747, 748, 749, -1, -1, 752, 753,
+ -1, -1, 756, -1, 758, 759, -1, -1, 116, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 135, -1, -1,
+ -1, -1, -1, -1, -1, -1, 144, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 188, -1, -1, -1, -1, -1, -1, 195, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 207,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 218, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 279, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 318, 319, 320, 321, 322, -1, 324, 325, 326, 327,
+ -1, -1, -1, 331, 332, 333, 334, 335, 336, 337,
+ 338, 339, 340, -1, 342, 343, 344, 345, 346, 347,
+ 348, 349, -1, -1, -1, -1, 354, 355, 356, 357,
+ 358, -1, -1, 361, 362, 363, 364, 365, -1, -1,
+ -1, 369, 370, 371, 372, 373, -1, 375, 376, 377,
+ 378, -1, -1, -1, -1, -1, -1, 385, -1, 387,
+ -1, 389, 390, -1, 392, 393, 394, 395, 396, 397,
+ -1, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, -1, 413, -1, 415, 416, 417,
+ 418, 419, 420, 421, -1, 423, 424, 425, 426, -1,
+ 428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
+ 438, -1, -1, -1, 442, -1, -1, 445, 446, 447,
+ 448, 449, 450, 451, 452, 453, 454, 455, -1, -1,
+ -1, -1, -1, 461, 462, 463, 464, 465, 466, -1,
+ 468, 469, -1, 471, 472, -1, -1, 475, -1, 477,
+ 478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
+ -1, 489, 490, 491, 492, 493, 494, 495, 496, 497,
+ -1, 499, 500, 501, 502, 503, 504, 505, 506, 507,
+ 508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
+ 518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
+ 528, 529, 530, 531, -1, 533, 534, 535, 536, 537,
+ 538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
+ 548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
+ 558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
+ -1, 569, 570, 571, 572, 573, 574, 575, 576, -1,
+ 578, 579, 580, 581, -1, -1, -1, 585, -1, 587,
+ 588, -1, 590, 591, 592, 593, -1, 595, 596, 597,
+ 598, -1, -1, -1, -1, 603, 604, 605, 606, 607,
+ 608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
+ 618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
+ 628, -1, 630, -1, 632, 633, 634, -1, 636, 637,
+ -1, 639, 640, 641, 642, 643, 644, -1, 646, 647,
+ 648, 649, 650, 651, 652, -1, 654, 655, 656, -1,
+ 658, 659, 660, 661, -1, 663, 664, -1, -1, 667,
+ 668, -1, -1, 671, 672, 673, -1, 675, -1, 677,
+ 678, 679, 680, -1, 682, 683, 684, 685, -1, 687,
+ 688, -1, 690, -1, 692, 693, 694, 695, 696, 697,
+ 698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
+ 708, 709, 710, 711, -1, 713, 714, 715, 716, 717,
+ 718, 719, 720, 721, -1, 723, 724, -1, 726, 727,
+ 728, 729, -1, -1, 732, 733, -1, 735, 736, 737,
+ 738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
+ 748, 749, 19, 20, 752, 753, -1, -1, 756, -1,
+ 758, 759, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 45, 46,
+ 47, 48, 49, 50, 51, 52, 53, 54, 55, -1,
+ 57, 58, 59, 60, -1, -1, 63, 64, 65, 66,
+ 67, 68, 69, 70, 71, 72, 73, -1, 75, 76,
+ 77, 78, 79, 80, 81, 82, 83, 84, 85, -1,
+ 87, 88, 89, 90, 91, 92, 93, 94, 95, 96,
+ 97, 98, 99, 100, 101, 102, 103, 104, 105, 106,
+ 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
+ 117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
+ -1, 128, 129, 130, 131, 132, -1, -1, 135, 136,
+ 137, 138, 139, 140, 141, 142, 143, 144, 145, 146,
+ 147, 148, 149, 150, 151, 152, 153, 154, 155, 156,
+ 157, 158, 159, 160, 161, 162, 163, 164, 165, 166,
+ 167, 168, 169, 170, 171, 172, 173, -1, -1, -1,
+ 177, 178, 179, 180, 181, 182, 183, -1, -1, -1,
+ 187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
+ 197, 198, 199, 200, 201, -1, 203, 204, 205, 206,
+ 207, 208, 209, 210, 211, 212, 213, 214, 215, 216,
+ 217, 218, 219, 220, 221, 222, 223, 224, 225, 226,
+ 227, 228, 229, 230, 231, 232, 233, -1, 235, 236,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, -1, 259, 260, -1, 262, 263, 264, 265, 266,
+ 267, 268, 269, 270, 271, 272, 273, 274, 275, 276,
+ 277, 278, 279, 280, 281, 282, 283, -1, -1, -1,
+ 287, 288, 289, 290, 291, 292, 293, 294, 295, 296,
+ 297, 298, 299, 300, 301, 302, 303, 304, 305, -1,
+ 307, 308, 309, 310, 311, 312, 313, 314, 315, 316,
+ 317, 318, 319, 320, -1, 322, 323, 324, 325, 326,
+ 327, 328, 329, 330, 331, 332, 333, 334, 335, 336,
+ 337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
+ 347, 348, 349, 350, 351, -1, 353, -1, 355, -1,
+ -1, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, -1, -1, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, -1, 385, 386,
+ 387, 388, 389, 390, 391, 392, 393, 394, 395, 396,
+ 397, 398, 399, 400, 401, 402, 403, 404, 405, 406,
+ 407, 408, 409, 410, 411, 412, 413, -1, 415, 416,
+ 417, 418, 419, 420, 421, 422, 423, 424, 425, 426,
+ 427, 428, 429, 430, -1, 432, 433, 434, 435, 436,
+ 437, 438, 439, 440, 441, 442, -1, -1, 445, 446,
+ 447, 448, 449, 450, 451, 452, 453, 454, -1, 456,
+ 457, 458, -1, 460, 461, 462, -1, 464, 465, 466,
+ 467, 468, 469, 470, 471, 472, 473, -1, 475, 476,
+ 477, 478, 479, 480, 481, 482, 483, 484, 485, 486,
+ 487, 488, 489, 490, 491, 492, 493, 494, 495, -1,
+ 497, 498, 499, 500, 501, 502, 503, 504, 505, 506,
+ 507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
+ 517, 518, 519, 520, 521, 522, 523, 524, 525, 526,
+ 527, 528, 529, 530, 531, -1, 533, 534, 535, 536,
+ 537, 538, 539, -1, 541, 542, 543, 544, 545, 546,
+ 547, 548, 549, 550, 551, 552, 553, 554, 555, 556,
+ 557, -1, 559, 560, 561, 562, 563, 564, 565, 566,
+ 567, 568, 569, 570, 571, 572, -1, -1, -1, 576,
+ 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,
+ 587, 588, 589, 590, 591, 592, 593, 594, 595, 596,
+ 597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
+ 607, 608, 609, 610, 611, 612, 613, 614, -1, -1,
+ 617, 618, 619, 620, 621, 622, 623, 624, 625, 626,
+ 627, 628, 629, 630, 631, 632, 633, 634, 635, 636,
+ 637, 638, 639, 640, 641, 642, 643, 644, 645, 646,
+ 647, 648, -1, 650, 651, 652, 653, 654, 655, 656,
+ 657, 658, 659, -1, 661, 662, 663, 664, 665, 666,
+ 667, 668, 669, 670, 671, 672, 673, 674, 675, 676,
+ 677, 678, 679, 680, -1, 682, 683, 684, 685, 686,
+ 687, 688, 689, 690, 691, 692, 693, 694, 695, 696,
+ 697, 698, 699, 700, 701, 702, 703, 704, 705, 706,
+ 707, 708, 709, -1, 711, 712, -1, 714, 715, 716,
+ 717, 718, 719, 720, 721, 722, 723, 724, 725, 726,
+ 727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
+ 737, -1, 739, 740, 741, 742, 743, 744, 745, 746,
+ 747, 748, 749, -1, 751, 752, 753, 754, -1, 756,
+ 757, 758
+};
+
+/* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of
+ state STATE-NUM. */
+static const yytype_int16 yystos[] =
+{
+ 0, 5, 7, 48, 49, 66, 68, 70, 72, 80,
+ 101, 103, 104, 110, 127, 131, 141, 150, 161, 171,
+ 173, 177, 204, 216, 217, 227, 228, 239, 240, 241,
+ 243, 248, 254, 258, 259, 260, 294, 296, 298, 305,
+ 313, 314, 328, 350, 351, 353, 360, 368, 388, 412,
+ 422, 441, 456, 467, 470, 473, 488, 602, 631, 635,
+ 645, 653, 665, 686, 689, 722, 731, 757, 779, 790,
+ 793, 794, 795, 796, 797, 799, 805, 807, 822, 869,
+ 908, 909, 916, 917, 930, 965, 990, 1008, 1070, 1123,
+ 1224, 1277, 1280, 1290, 1295, 1301, 1314, 1317, 1323, 1326,
+ 1331, 1338, 1350, 1353, 1356, 1357, 1359, 1362, 1363, 1365,
+ 1366, 1369, 1370, 1373, 1610, 1612, 1625, 1628, 1666, 1675,
+ 1693, 1701, 1715, 1719, 1720, 1724, 1725, 1735, 1742, 1750,
+ 1752, 1758, 1761, 1762, 1794, 1849, 1890, 1897, 1899, 1908,
+ 1911, 1947, 1949, 1954, 1955, 1956, 1957, 1982, 1991, 1992,
+ 1993, 1995, 2023, 2024, 2034, 2039, 88, 226, 338, 413,
+ 463, 658, 662, 735, 1225, 1961, 1962, 1963, 1964, 197,
+ 460, 506, 1325, 1722, 19, 20, 88, 116, 135, 144,
+ 188, 195, 207, 218, 279, 318, 319, 320, 321, 322,
+ 323, 324, 325, 326, 327, 331, 332, 333, 334, 335,
+ 336, 337, 338, 339, 340, 341, 342, 343, 344, 345,
+ 346, 347, 348, 349, 350, 351, 353, 354, 355, 356,
+ 357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
+ 367, 368, 369, 370, 371, 372, 373, 374, 375, 376,
+ 377, 378, 379, 380, 381, 382, 383, 385, 386, 387,
+ 388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
+ 398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
+ 408, 409, 410, 411, 412, 413, 415, 416, 417, 418,
+ 419, 420, 421, 422, 423, 424, 425, 426, 427, 428,
+ 429, 430, 431, 432, 433, 434, 435, 436, 437, 438,
+ 439, 440, 441, 442, 445, 446, 447, 448, 449, 450,
+ 451, 452, 453, 454, 455, 456, 457, 458, 460, 461,
+ 462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
+ 472, 473, 475, 476, 477, 478, 479, 480, 481, 482,
+ 483, 484, 485, 486, 487, 488, 489, 490, 491, 492,
+ 493, 494, 495, 496, 497, 498, 499, 500, 501, 502,
+ 503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
+ 513, 514, 515, 516, 517, 518, 519, 520, 521, 522,
+ 523, 524, 525, 526, 527, 528, 529, 530, 531, 533,
+ 534, 535, 536, 537, 538, 539, 540, 541, 542, 543,
+ 544, 545, 546, 547, 548, 549, 550, 551, 552, 553,
+ 554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
+ 564, 565, 566, 567, 568, 569, 570, 571, 572, 573,
+ 574, 575, 576, 578, 579, 580, 581, 582, 583, 584,
+ 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
+ 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
+ 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
+ 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
+ 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
+ 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
+ 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
+ 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
+ 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
+ 675, 676, 677, 678, 679, 680, 682, 683, 684, 685,
+ 686, 687, 688, 689, 690, 691, 692, 693, 694, 695,
+ 696, 697, 698, 699, 700, 701, 702, 703, 704, 705,
+ 706, 707, 708, 709, 710, 711, 712, 713, 714, 715,
+ 716, 717, 718, 719, 720, 721, 722, 723, 724, 725,
+ 726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
+ 736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
+ 746, 747, 748, 749, 750, 751, 752, 753, 754, 756,
+ 757, 758, 759, 1816, 1818, 1827, 1834, 1838, 1839, 1840,
+ 1841, 1842, 1843, 1844, 1845, 1846, 1847, 2001, 966, 528,
+ 1318, 208, 1676, 88, 145, 226, 289, 436, 463, 644,
+ 662, 708, 735, 743, 1624, 993, 860, 931, 1626, 1753,
+ 145, 408, 758, 1767, 281, 704, 1893, 991, 1325, 1124,
+ 1009, 57, 528, 1707, 258, 267, 905, 910, 912, 1827,
+ 653, 735, 1893, 995, 910, 911, 860, 1360, 1850, 1702,
+ 910, 1898, 1667, 1827, 1358, 992, 235, 1796, 1629, 173,
+ 294, 684, 1736, 40, 196, 1406, 1948, 3, 31, 1821,
+ 145, 1893, 753, 1951, 1611, 482, 1827, 1325, 403, 918,
+ 1900, 806, 598, 676, 1827, 1325, 1743, 1951, 1827, 1759,
+ 47, 669, 717, 47, 669, 1694, 598, 676, 351, 352,
+ 388, 427, 602, 619, 645, 686, 1985, 1359, 1366, 1369,
+ 0, 7, 791, 602, 88, 129, 145, 262, 293, 644,
+ 735, 839, 1202, 1203, 1624, 1961, 1962, 1963, 1964, 128,
+ 154, 1376, 1377, 1606, 1354, 1351, 119, 152, 292, 1368,
+ 1958, 1367, 1958, 448, 460, 591, 787, 1721, 1722, 1813,
+ 1827, 1363, 1365, 386, 1244, 1827, 863, 1827, 763, 763,
+ 863, 141, 1623, 21, 1821, 1827, 1829, 1623, 1269, 1270,
+ 268, 1394, 1965, 1966, 1961, 763, 1893, 1350, 1353, 1625,
+ 1628, 1666, 1675, 1718, 787, 870, 311, 946, 947, 967,
+ 970, 973, 818, 819, 1821, 743, 1315, 1893, 328, 143,
+ 178, 475, 614, 1678, 1691, 1692, 1623, 1614, 1623, 1623,
+ 1623, 1623, 1623, 1623, 1623, 1623, 658, 1893, 978, 1827,
+ 2005, 47, 48, 80, 84, 101, 110, 131, 145, 150,
+ 173, 232, 236, 254, 258, 259, 289, 296, 297, 353,
+ 393, 436, 441, 452, 453, 607, 611, 617, 628, 634,
+ 665, 669, 698, 1829, 1912, 1916, 1917, 1918, 1920, 1922,
+ 1923, 1924, 1925, 946, 961, 1631, 471, 675, 1754, 154,
+ 1763, 1891, 77, 123, 130, 144, 157, 165, 246, 247,
+ 321, 351, 374, 444, 463, 582, 887, 932, 933, 934,
+ 935, 937, 940, 943, 944, 945, 955, 956, 957, 958,
+ 959, 980, 983, 1818, 1828, 1841, 1842, 1843, 1847, 2002,
+ 2010, 2011, 2012, 2032, 2033, 2034, 2035, 2037, 1893, 3,
+ 8, 9, 19, 20, 22, 23, 24, 25, 26, 27,
+ 28, 29, 30, 31, 32, 40, 57, 58, 59, 60,
+ 68, 69, 71, 78, 79, 82, 83, 84, 85, 87,
+ 90, 91, 99, 102, 120, 121, 122, 124, 132, 133,
+ 134, 141, 150, 153, 162, 164, 166, 180, 181, 183,
+ 187, 192, 196, 198, 199, 200, 201, 219, 220, 221,
+ 223, 230, 241, 249, 250, 268, 275, 276, 278, 279,
+ 290, 300, 301, 302, 308, 309, 327, 328, 329, 330,
+ 334, 341, 349, 366, 379, 381, 382, 383, 398, 410,
+ 411, 466, 478, 500, 501, 546, 552, 561, 562, 585,
+ 593, 605, 649, 656, 663, 694, 713, 714, 715, 716,
+ 721, 722, 735, 737, 749, 751, 759, 768, 769, 774,
+ 779, 783, 784, 787, 1369, 1375, 1400, 1401, 1402, 1403,
+ 1407, 1418, 1422, 1423, 1424, 1425, 1426, 1427, 1428, 1432,
+ 1433, 1434, 1442, 1448, 1449, 1450, 1451, 1452, 1454, 1457,
+ 1786, 1789, 1791, 1792, 1793, 1810, 1817, 1819, 1820, 1827,
+ 1834, 1845, 1846, 65, 1010, 510, 250, 362, 370, 385,
+ 395, 396, 397, 405, 543, 555, 655, 693, 707, 913,
+ 915, 737, 906, 912, 1827, 860, 1623, 887, 981, 912,
+ 47, 333, 611, 1909, 1910, 1918, 1920, 47, 106, 264,
+ 266, 277, 293, 474, 679, 680, 681, 682, 1379, 1386,
+ 1387, 1960, 3, 71, 99, 144, 321, 366, 463, 468,
+ 506, 556, 577, 593, 644, 661, 687, 717, 750, 1167,
+ 1816, 1825, 1836, 1838, 1839, 1840, 1842, 1843, 1844, 1847,
+ 1851, 1861, 1872, 2001, 47, 49, 79, 80, 89, 145,
+ 159, 214, 226, 281, 324, 344, 353, 366, 377, 400,
+ 430, 433, 435, 462, 463, 468, 469, 485, 506, 528,
+ 582, 597, 606, 609, 610, 624, 661, 669, 690, 747,
+ 1167, 1201, 1703, 1707, 1708, 1710, 1719, 1818, 1862, 912,
+ 1893, 178, 1674, 779, 1645, 1654, 946, 2007, 1795, 1631,
+ 1737, 1827, 343, 1951, 1829, 1332, 1291, 50, 1952, 1400,
+ 1473, 800, 299, 802, 1726, 417, 1813, 1815, 1827, 1901,
+ 1829, 141, 1069, 1821, 128, 1296, 528, 613, 669, 1744,
+ 1745, 287, 1952, 746, 1760, 670, 818, 232, 314, 1281,
+ 1282, 1283, 670, 818, 281, 1696, 1623, 1623, 23, 26,
+ 27, 31, 1787, 1788, 1822, 1984, 1984, 1984, 460, 1983,
+ 1984, 1984, 780, 780, 786, 1827, 1069, 1069, 145, 1069,
+ 1069, 662, 844, 145, 145, 281, 658, 226, 289, 436,
+ 1965, 337, 861, 861, 1961, 111, 135, 779, 784, 1375,
+ 1378, 1478, 1481, 1493, 1496, 1497, 1498, 1509, 1510, 1511,
+ 1512, 1514, 1515, 1516, 1813, 211, 423, 1601, 1602, 1607,
+ 312, 1539, 1376, 123, 127, 168, 173, 206, 577, 1388,
+ 1564, 1569, 1570, 1579, 1580, 1584, 226, 1583, 1596, 1606,
+ 47, 106, 1959, 1959, 1959, 1579, 1581, 1369, 1372, 1373,
+ 1580, 1582, 1371, 47, 1827, 1717, 127, 1716, 787, 1355,
+ 1352, 42, 763, 1648, 1649, 1227, 734, 1229, 787, 542,
+ 709, 727, 85, 1829, 1830, 1831, 1916, 1230, 120, 1235,
+ 1234, 860, 281, 143, 581, 1271, 1272, 1273, 657, 436,
+ 743, 1965, 1829, 1302, 1827, 779, 873, 946, 968, 1400,
+ 114, 975, 973, 287, 1316, 1617, 1618, 1813, 128, 1679,
+ 128, 1679, 1680, 1681, 1688, 1689, 1827, 1691, 1827, 141,
+ 1622, 863, 863, 863, 1827, 860, 1829, 860, 1615, 1623,
+ 1623, 994, 151, 979, 606, 1921, 647, 647, 705, 708,
+ 735, 743, 779, 1399, 475, 584, 704, 580, 735, 89,
+ 743, 333, 551, 633, 333, 333, 203, 333, 371, 528,
+ 669, 551, 287, 203, 782, 779, 283, 427, 178, 414,
+ 474, 1633, 1635, 393, 613, 1755, 1756, 360, 178, 392,
+ 1769, 1813, 1894, 1895, 311, 1828, 128, 136, 561, 1827,
+ 1828, 1828, 1828, 2038, 1827, 311, 1828, 1827, 427, 2033,
+ 1995, 1996, 946, 960, 1827, 788, 127, 177, 241, 313,
+ 351, 786, 1324, 1458, 19, 20, 30, 1817, 1834, 31,
+ 1788, 153, 768, 769, 1425, 779, 779, 779, 311, 1400,
+ 1476, 1477, 779, 779, 779, 779, 779, 1399, 1399, 1399,
+ 779, 1398, 779, 779, 779, 779, 779, 779, 779, 779,
+ 779, 779, 779, 779, 779, 1400, 779, 779, 779, 8,
+ 779, 1474, 1475, 1810, 1817, 779, 779, 779, 779, 1400,
+ 1398, 779, 779, 779, 779, 779, 779, 779, 779, 779,
+ 779, 15, 779, 779, 779, 779, 1399, 1398, 1398, 779,
+ 779, 779, 779, 779, 779, 779, 779, 779, 779, 779,
+ 779, 779, 779, 779, 31, 779, 779, 779, 779, 779,
+ 779, 779, 779, 737, 779, 779, 779, 737, 779, 779,
+ 779, 779, 31, 779, 779, 779, 31, 779, 779, 779,
+ 779, 779, 779, 779, 779, 153, 1425, 153, 1425, 1425,
+ 1125, 1369, 1400, 1794, 1827, 1817, 33, 41, 50, 208,
+ 315, 1404, 1405, 35, 36, 37, 39, 156, 763, 764,
+ 765, 1408, 55, 151, 167, 238, 677, 1406, 14, 43,
+ 44, 107, 192, 766, 767, 768, 769, 770, 771, 772,
+ 773, 1425, 73, 38, 213, 213, 751, 1822, 787, 779,
+ 15, 1011, 54, 287, 782, 763, 1822, 1328, 1830, 1832,
+ 1327, 733, 1921, 584, 203, 128, 203, 1361, 1387, 3,
+ 1829, 258, 644, 787, 57, 99, 1168, 1169, 1648, 1829,
+ 127, 1648, 1648, 1917, 99, 1817, 1855, 1864, 1852, 57,
+ 99, 1171, 1172, 1829, 787, 1648, 1853, 782, 670, 1722,
+ 779, 88, 214, 226, 281, 289, 324, 436, 463, 658,
+ 735, 743, 167, 312, 1714, 63, 688, 376, 688, 688,
+ 318, 688, 435, 688, 1714, 47, 1082, 1829, 1568, 1569,
+ 1574, 128, 151, 1709, 1711, 376, 688, 127, 688, 704,
+ 676, 47, 355, 399, 401, 491, 541, 588, 678, 700,
+ 1697, 1698, 1699, 818, 477, 818, 1574, 1714, 1711, 510,
+ 429, 378, 608, 704, 720, 1722, 1393, 688, 740, 143,
+ 1268, 1655, 782, 422, 1797, 1798, 1805, 1827, 1634, 1635,
+ 1813, 2040, 782, 1333, 1334, 1335, 1336, 1813, 1617, 363,
+ 568, 239, 568, 1953, 782, 1400, 803, 57, 270, 416,
+ 430, 432, 464, 477, 510, 528, 606, 613, 623, 637,
+ 669, 672, 688, 719, 1727, 1732, 1733, 1818, 1893, 3,
+ 74, 919, 920, 921, 922, 1817, 582, 232, 374, 1406,
+ 1827, 798, 743, 1293, 1893, 1747, 360, 1746, 782, 653,
+ 1827, 1953, 127, 1284, 1285, 1284, 580, 755, 394, 782,
+ 1284, 1284, 1618, 1827, 1821, 782, 579, 1987, 699, 1988,
+ 763, 158, 639, 1986, 7, 792, 1827, 826, 1069, 860,
+ 860, 1069, 830, 832, 1069, 1069, 1069, 837, 838, 743,
+ 463, 463, 1965, 779, 1478, 1498, 1510, 1511, 1512, 1513,
+ 1514, 1827, 10, 1384, 81, 147, 158, 166, 193, 249,
+ 277, 1505, 1506, 782, 217, 1507, 1508, 31, 1823, 1823,
+ 3, 1603, 1604, 1605, 1827, 1829, 1540, 136, 1543, 1539,
+ 454, 561, 1571, 296, 8, 28, 30, 32, 251, 1575,
+ 1576, 1789, 1817, 151, 65, 1576, 1568, 1388, 1827, 1388,
+ 1389, 1389, 1372, 1718, 393, 1723, 1787, 1827, 1827, 1580,
+ 1583, 1821, 99, 386, 1066, 1067, 1079, 1080, 1175, 408,
+ 864, 1827, 1399, 3, 864, 1813, 583, 1830, 1831, 1832,
+ 1931, 1935, 1623, 1273, 413, 489, 863, 1813, 743, 1303,
+ 1304, 1618, 787, 871, 874, 875, 1400, 974, 311, 969,
+ 971, 887, 1998, 427, 808, 1617, 127, 364, 448, 450,
+ 540, 614, 782, 1319, 1320, 1321, 1813, 54, 1677, 1620,
+ 1621, 1814, 1827, 127, 1382, 1383, 1539, 782, 1682, 787,
+ 1690, 120, 1827, 787, 1915, 1918, 1832, 1930, 1617, 1616,
+ 1613, 422, 2009, 643, 977, 704, 780, 333, 1832, 333,
+ 333, 1931, 214, 226, 281, 463, 862, 1919, 353, 393,
+ 436, 441, 452, 453, 607, 617, 628, 634, 665, 669,
+ 698, 1923, 1925, 1803, 1804, 1817, 962, 141, 1268, 479,
+ 735, 1400, 1757, 1757, 1339, 506, 1768, 53, 763, 1535,
+ 1536, 1537, 572, 746, 782, 1892, 946, 311, 1827, 561,
+ 128, 154, 1994, 2028, 946, 311, 779, 954, 177, 786,
+ 936, 782, 986, 984, 989, 985, 2036, 1617, 3, 1459,
+ 1829, 787, 779, 47, 1467, 1538, 1467, 1467, 1400, 1477,
+ 114, 311, 427, 1400, 1473, 1400, 106, 1467, 1538, 780,
+ 24, 25, 26, 28, 30, 32, 780, 1588, 1592, 1593,
+ 1400, 1400, 1810, 780, 1364, 1365, 1374, 1794, 92, 93,
+ 94, 95, 138, 139, 140, 189, 190, 253, 316, 411,
+ 478, 544, 546, 552, 612, 656, 748, 759, 1532, 1533,
+ 1400, 106, 1460, 1460, 1447, 1400, 1400, 1400, 1532, 1400,
+ 1400, 1400, 1817, 1475, 336, 782, 787, 106, 1467, 1400,
+ 106, 1467, 1400, 1400, 1400, 1400, 1400, 780, 1403, 780,
+ 1400, 1400, 780, 648, 1467, 1467, 106, 1467, 780, 1588,
+ 1467, 1467, 780, 1400, 1400, 1429, 1430, 1431, 64, 163,
+ 288, 1400, 1419, 1420, 1421, 1400, 1400, 106, 1467, 1400,
+ 1400, 1400, 1415, 1416, 1400, 1400, 1472, 1473, 1400, 1400,
+ 409, 410, 713, 716, 1534, 1400, 1400, 1473, 1813, 1400,
+ 1400, 127, 1813, 1472, 1400, 127, 1400, 1400, 1813, 1400,
+ 1400, 1533, 1533, 1400, 1419, 1400, 780, 8, 787, 1811,
+ 1827, 1400, 1472, 1400, 1400, 1400, 780, 782, 1365, 1400,
+ 787, 1400, 1400, 1400, 1402, 122, 201, 290, 732, 1406,
+ 47, 340, 1402, 1409, 1402, 779, 1375, 1402, 1402, 167,
+ 55, 151, 167, 238, 1403, 1403, 1403, 1403, 1403, 1403,
+ 1403, 153, 1403, 153, 1403, 1403, 1403, 1403, 1403, 1173,
+ 1829, 1425, 779, 1456, 1549, 1827, 779, 136, 328, 329,
+ 330, 1817, 1435, 461, 493, 567, 648, 1417, 169, 229,
+ 505, 703, 1012, 1016, 1751, 1821, 915, 410, 713, 716,
+ 914, 1457, 1791, 1810, 782, 287, 1329, 1330, 1813, 946,
+ 782, 127, 1832, 1831, 1932, 862, 1919, 770, 1391, 1392,
+ 1394, 468, 506, 661, 1863, 1648, 1918, 1827, 73, 1400,
+ 1882, 1881, 1880, 787, 787, 1648, 782, 1854, 232, 492,
+ 1883, 1884, 1885, 1886, 1827, 1873, 99, 717, 1817, 1856,
+ 1868, 1858, 1859, 1861, 1872, 688, 127, 770, 1069, 63,
+ 863, 863, 1813, 863, 318, 863, 863, 863, 1813, 1832,
+ 1813, 1393, 1393, 376, 688, 1714, 863, 1714, 1709, 376,
+ 688, 1714, 151, 1712, 510, 553, 688, 1706, 1706, 1714,
+ 1827, 863, 1714, 1831, 1709, 1714, 1821, 490, 701, 451,
+ 127, 1700, 782, 435, 688, 1813, 1711, 1709, 1709, 127,
+ 1714, 1714, 1714, 1481, 1665, 1813, 1394, 1657, 1659, 779,
+ 1652, 2008, 782, 779, 1801, 154, 1636, 2028, 3, 151,
+ 782, 217, 1344, 1346, 1347, 448, 614, 1292, 363, 239,
+ 1400, 801, 99, 143, 804, 1400, 1660, 1661, 510, 510,
+ 510, 510, 360, 510, 818, 510, 782, 1393, 1728, 1829,
+ 914, 924, 782, 763, 1536, 1902, 120, 676, 1400, 1294,
+ 1617, 287, 1749, 818, 1745, 1827, 47, 1279, 627, 683,
+ 1286, 1287, 127, 820, 821, 673, 1283, 820, 1892, 1787,
+ 596, 1989, 1829, 834, 1827, 828, 1915, 1931, 1829, 1069,
+ 1069, 823, 1813, 2025, 1394, 1974, 848, 1394, 1069, 1069,
+ 1069, 743, 1494, 782, 780, 780, 780, 780, 780, 782,
+ 780, 1478, 47, 53, 55, 128, 1385, 1537, 158, 158,
+ 210, 1517, 166, 249, 1505, 1517, 1478, 1496, 779, 1384,
+ 1608, 1829, 782, 787, 1400, 65, 137, 1541, 1543, 251,
+ 649, 1572, 1576, 572, 668, 746, 1390, 1817, 439, 251,
+ 577, 782, 787, 664, 1565, 649, 1572, 1597, 1400, 1228,
+ 1649, 1067, 73, 1167, 418, 191, 231, 268, 386, 398,
+ 498, 568, 866, 868, 1632, 1829, 1632, 1236, 779, 480,
+ 242, 782, 1939, 1813, 1233, 1232, 1813, 782, 595, 1305,
+ 1827, 873, 780, 782, 283, 946, 971, 68, 108, 142,
+ 179, 481, 511, 512, 514, 515, 516, 517, 518, 520,
+ 521, 522, 523, 524, 525, 526, 527, 529, 530, 531,
+ 532, 625, 626, 809, 810, 817, 127, 1322, 734, 1618,
+ 1320, 1507, 703, 782, 1684, 787, 1690, 222, 1563, 1564,
+ 1689, 128, 770, 1827, 203, 1827, 782, 782, 67, 244,
+ 1274, 1617, 1617, 887, 779, 948, 951, 287, 314, 1914,
+ 63, 770, 1813, 1827, 1929, 1929, 780, 782, 887, 1997,
+ 1636, 1400, 1832, 1340, 1341, 1342, 1343, 1813, 146, 144,
+ 321, 463, 1818, 1824, 1833, 1838, 1839, 1840, 1841, 1842,
+ 1843, 1844, 1847, 2001, 178, 232, 755, 1896, 26, 769,
+ 1585, 1587, 1895, 941, 946, 154, 649, 1827, 97, 886,
+ 2029, 938, 946, 948, 949, 953, 1827, 978, 980, 981,
+ 2007, 2028, 1892, 1863, 42, 1817, 1400, 780, 1468, 780,
+ 780, 283, 427, 1400, 1400, 53, 299, 780, 299, 782,
+ 1443, 780, 770, 780, 782, 782, 780, 780, 1365, 128,
+ 780, 1445, 1446, 1400, 782, 782, 782, 769, 780, 782,
+ 780, 782, 782, 780, 779, 1810, 1817, 1467, 780, 780,
+ 1467, 780, 782, 782, 780, 780, 780, 151, 782, 782,
+ 780, 780, 1467, 780, 780, 780, 780, 782, 128, 782,
+ 780, 128, 1400, 128, 1400, 128, 1400, 128, 780, 782,
+ 780, 1467, 780, 780, 782, 782, 780, 782, 782, 782,
+ 780, 780, 780, 782, 780, 780, 782, 780, 780, 780,
+ 1813, 780, 780, 780, 1813, 782, 780, 782, 782, 780,
+ 782, 782, 782, 780, 780, 782, 1817, 1827, 780, 787,
+ 53, 504, 782, 1190, 780, 780, 1532, 1532, 1473, 780,
+ 785, 1817, 122, 201, 290, 732, 779, 50, 1400, 434,
+ 1402, 1402, 779, 1375, 1402, 1402, 1400, 1400, 1550, 217,
+ 1552, 779, 779, 779, 779, 779, 787, 1394, 1439, 1440,
+ 1441, 378, 779, 1021, 1022, 1014, 1021, 1015, 591, 1024,
+ 160, 472, 1400, 763, 1832, 1832, 782, 1892, 427, 131,
+ 1918, 128, 782, 1929, 1929, 782, 1400, 1808, 1817, 787,
+ 787, 787, 99, 144, 321, 463, 577, 750, 1818, 1821,
+ 1826, 1835, 1838, 1839, 1840, 1841, 1843, 1844, 1847, 2001,
+ 1876, 127, 1648, 99, 1173, 1174, 1832, 31, 578, 593,
+ 1888, 47, 57, 99, 203, 1400, 1889, 1827, 1827, 1865,
+ 1864, 127, 580, 755, 504, 782, 782, 1648, 1889, 787,
+ 1857, 787, 1648, 782, 782, 1860, 1400, 780, 1827, 863,
+ 863, 1821, 1400, 863, 1714, 1714, 863, 1714, 1821, 128,
+ 1713, 860, 1714, 613, 1574, 1699, 1712, 820, 1709, 1813,
+ 1714, 1714, 1400, 258, 1507, 1661, 780, 782, 1653, 887,
+ 1798, 1802, 1804, 53, 1637, 1638, 886, 1829, 99, 1337,
+ 1827, 1335, 1813, 1007, 1346, 145, 160, 1199, 1348, 802,
+ 782, 100, 1738, 818, 1733, 1617, 1734, 922, 925, 926,
+ 921, 573, 574, 650, 923, 454, 561, 1827, 1903, 1904,
+ 1821, 1617, 448, 614, 736, 1297, 1298, 1299, 1587, 47,
+ 1748, 670, 782, 365, 1278, 1695, 782, 127, 1990, 1065,
+ 1066, 299, 723, 1211, 1827, 314, 1913, 1939, 845, 1827,
+ 1827, 1813, 825, 863, 2020, 1069, 1069, 1813, 863, 1827,
+ 863, 1069, 1400, 1478, 1478, 785, 576, 713, 717, 1380,
+ 1381, 1427, 1381, 158, 1517, 1517, 1509, 158, 203, 299,
+ 1531, 1827, 1536, 1167, 1170, 1604, 1827, 1400, 1544, 1809,
+ 1542, 750, 1546, 1541, 314, 580, 1573, 1572, 507, 1587,
+ 1576, 1577, 439, 1576, 1576, 1817, 549, 1566, 1809, 123,
+ 779, 1065, 1821, 1649, 1649, 557, 268, 268, 657, 1821,
+ 268, 268, 268, 182, 360, 406, 484, 547, 563, 564,
+ 568, 569, 570, 636, 686, 841, 842, 88, 476, 586,
+ 593, 599, 674, 735, 846, 847, 65, 314, 742, 1933,
+ 270, 369, 494, 566, 695, 756, 1927, 1928, 1935, 314,
+ 1942, 1892, 203, 856, 1241, 779, 1967, 1231, 1304, 127,
+ 872, 1400, 1998, 972, 763, 763, 763, 763, 763, 763,
+ 763, 763, 763, 763, 763, 763, 763, 763, 763, 763,
+ 763, 763, 763, 763, 763, 763, 763, 763, 763, 782,
+ 820, 734, 1381, 1621, 1827, 299, 1827, 576, 168, 1578,
+ 1481, 787, 1690, 1813, 1918, 1832, 1892, 427, 898, 899,
+ 952, 34, 1931, 333, 787, 787, 287, 287, 1803, 963,
+ 1637, 782, 1344, 1346, 1823, 755, 506, 392, 24, 25,
+ 28, 30, 32, 942, 154, 76, 77, 144, 443, 444,
+ 463, 750, 892, 893, 895, 901, 928, 929, 1818, 1838,
+ 1839, 1840, 1841, 1842, 1843, 1844, 1847, 2001, 2003, 2014,
+ 2030, 427, 2033, 786, 939, 950, 780, 782, 987, 976,
+ 982, 1828, 982, 982, 886, 1826, 1400, 782, 1400, 1400,
+ 283, 45, 46, 47, 48, 49, 50, 51, 52, 53,
+ 54, 55, 57, 58, 59, 60, 63, 64, 65, 66,
+ 67, 68, 69, 70, 71, 72, 73, 75, 76, 77,
+ 78, 79, 80, 81, 82, 83, 84, 85, 87, 89,
+ 90, 91, 92, 93, 94, 95, 96, 97, 98, 99,
+ 100, 101, 102, 103, 104, 105, 106, 107, 108, 109,
+ 110, 111, 112, 113, 114, 115, 117, 118, 119, 120,
+ 121, 122, 123, 124, 125, 126, 128, 129, 130, 131,
+ 132, 136, 137, 138, 139, 140, 141, 142, 143, 144,
+ 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
+ 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
+ 165, 166, 167, 168, 169, 170, 171, 172, 173, 177,
+ 178, 179, 180, 181, 182, 183, 187, 189, 190, 191,
+ 192, 193, 194, 196, 197, 198, 199, 200, 201, 203,
+ 204, 205, 206, 208, 209, 210, 211, 212, 213, 214,
+ 215, 216, 217, 219, 220, 221, 222, 223, 224, 225,
+ 226, 227, 228, 229, 230, 231, 232, 233, 235, 236,
+ 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
+ 247, 248, 249, 250, 251, 252, 253, 254, 255, 256,
+ 257, 259, 260, 262, 263, 264, 265, 266, 267, 268,
+ 269, 270, 271, 272, 273, 274, 275, 276, 277, 278,
+ 280, 281, 282, 283, 287, 288, 289, 290, 291, 292,
+ 293, 294, 295, 296, 297, 298, 299, 300, 301, 302,
+ 303, 304, 305, 307, 308, 309, 310, 311, 312, 313,
+ 314, 315, 316, 317, 328, 329, 330, 409, 410, 559,
+ 577, 666, 716, 739, 1131, 1469, 1470, 1471, 1818, 1837,
+ 1838, 1839, 1840, 1841, 1842, 1847, 1848, 1999, 2000, 2001,
+ 1168, 1168, 1469, 1473, 780, 153, 153, 1400, 1473, 1473,
+ 782, 1400, 1400, 1400, 1400, 1400, 1400, 1400, 1403, 787,
+ 780, 780, 1400, 1400, 1400, 1400, 1400, 780, 1400, 1400,
+ 1400, 1400, 128, 1400, 128, 1400, 128, 1400, 153, 1400,
+ 780, 1416, 1400, 1415, 1473, 1400, 1400, 1400, 1473, 28,
+ 768, 1585, 1589, 153, 1400, 1400, 1400, 1400, 1400, 787,
+ 787, 1827, 57, 71, 1185, 1186, 1187, 1188, 1189, 1588,
+ 1587, 780, 769, 769, 1374, 1402, 780, 782, 1402, 50,
+ 1400, 434, 1532, 1532, 1551, 1827, 65, 780, 1453, 1472,
+ 1400, 1431, 1472, 1400, 1421, 1472, 1472, 1817, 1400, 780,
+ 782, 779, 1030, 1403, 1022, 168, 1060, 1061, 1588, 697,
+ 1025, 338, 1017, 1013, 914, 287, 1330, 287, 241, 584,
+ 1930, 1831, 128, 128, 1392, 1395, 1395, 787, 787, 787,
+ 1648, 1400, 1832, 1875, 1648, 779, 779, 1648, 1648, 1889,
+ 793, 232, 632, 659, 1887, 1885, 1884, 1874, 1827, 1883,
+ 1827, 1869, 1858, 1859, 1868, 433, 747, 1585, 1590, 1704,
+ 30, 1713, 1539, 1709, 1670, 1671, 1811, 1382, 1395, 1394,
+ 1656, 1658, 1661, 427, 780, 779, 1630, 1619, 1813, 427,
+ 1345, 779, 1661, 763, 820, 127, 314, 1729, 1730, 763,
+ 782, 36, 37, 454, 499, 561, 604, 763, 764, 765,
+ 1905, 1907, 1539, 127, 128, 1300, 1298, 820, 1287, 1821,
+ 733, 1288, 1994, 2004, 1587, 545, 358, 472, 652, 1217,
+ 1217, 203, 1211, 333, 1942, 126, 203, 203, 824, 840,
+ 841, 2021, 1975, 863, 835, 2027, 641, 2026, 1813, 782,
+ 1381, 31, 1403, 50, 287, 1478, 1509, 158, 158, 1478,
+ 1509, 1499, 1500, 780, 782, 1526, 1527, 1169, 1609, 16,
+ 17, 782, 1545, 51, 104, 1567, 1400, 1456, 1547, 1548,
+ 1546, 712, 1573, 1577, 1390, 782, 1567, 1571, 1394, 1598,
+ 1599, 1600, 1174, 1169, 408, 408, 413, 489, 1649, 1649,
+ 65, 1649, 1651, 1649, 182, 547, 314, 1649, 1650, 1650,
+ 842, 1237, 1821, 1821, 1821, 1821, 1587, 1821, 1821, 780,
+ 782, 31, 593, 1829, 1936, 1937, 31, 31, 31, 50,
+ 1926, 533, 534, 537, 538, 539, 1940, 1941, 331, 593,
+ 1240, 1226, 390, 654, 240, 1242, 1827, 1968, 53, 1967,
+ 47, 378, 1306, 873, 283, 779, 779, 1587, 779, 1587,
+ 1587, 1821, 1821, 1590, 1821, 1587, 1821, 1821, 1821, 1821,
+ 1821, 1821, 1821, 1587, 1821, 404, 568, 671, 1792, 122,
+ 290, 1587, 1595, 1821, 1587, 810, 787, 1481, 1690, 1393,
+ 251, 1576, 245, 1686, 1539, 1892, 1274, 127, 900, 780,
+ 1400, 951, 314, 1944, 584, 770, 770, 1931, 1931, 113,
+ 114, 115, 964, 1627, 1342, 1813, 1346, 143, 1349, 1764,
+ 56, 57, 61, 62, 71, 96, 109, 125, 153, 155,
+ 174, 175, 176, 184, 185, 186, 202, 234, 258, 261,
+ 284, 285, 286, 306, 307, 354, 356, 357, 373, 409,
+ 410, 431, 455, 496, 558, 559, 574, 575, 616, 649,
+ 710, 713, 716, 723, 739, 759, 1129, 1131, 1132, 1133,
+ 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144,
+ 470, 74, 86, 782, 786, 1400, 949, 2009, 427, 787,
+ 1400, 1400, 779, 1150, 1151, 1153, 1153, 779, 1146, 1147,
+ 1151, 779, 1147, 1155, 95, 155, 1151, 1150, 1152, 1154,
+ 1153, 155, 1154, 1151, 780, 780, 780, 780, 1444, 1400,
+ 1400, 780, 206, 1462, 1462, 1400, 782, 782, 780, 782,
+ 780, 780, 780, 151, 1436, 1437, 1817, 780, 780, 780,
+ 780, 780, 782, 127, 782, 1400, 1400, 1400, 1400, 780,
+ 780, 53, 1410, 780, 53, 780, 780, 780, 28, 30,
+ 30, 780, 782, 1400, 780, 780, 782, 782, 780, 1817,
+ 1827, 787, 779, 1180, 1180, 51, 104, 643, 768, 1182,
+ 1183, 1184, 782, 782, 1400, 1400, 780, 1473, 1402, 780,
+ 782, 1402, 1552, 1544, 206, 1455, 780, 780, 780, 780,
+ 780, 780, 779, 1395, 1441, 1018, 1019, 1020, 1827, 780,
+ 1590, 153, 65, 779, 1032, 763, 779, 1022, 1832, 1813,
+ 128, 1932, 1932, 53, 1396, 1821, 1827, 770, 1817, 1827,
+ 1827, 1877, 1889, 1888, 31, 31, 1867, 1866, 387, 726,
+ 232, 1889, 1648, 1648, 1889, 24, 25, 28, 30, 32,
+ 1574, 1705, 1714, 782, 1668, 1648, 1536, 1661, 780, 782,
+ 313, 1364, 11, 12, 258, 1002, 1364, 1639, 1641, 1644,
+ 1507, 779, 225, 1528, 1529, 1530, 1827, 779, 1731, 232,
+ 250, 362, 370, 385, 395, 396, 397, 405, 543, 555,
+ 640, 655, 693, 707, 927, 926, 1906, 1574, 734, 554,
+ 513, 817, 1289, 1813, 203, 1831, 1240, 408, 1813, 1813,
+ 11, 13, 18, 145, 167, 215, 272, 273, 274, 292,
+ 346, 348, 368, 386, 393, 408, 415, 430, 487, 497,
+ 535, 548, 587, 593, 651, 658, 690, 705, 706, 718,
+ 998, 1000, 1071, 1073, 1074, 1076, 1078, 1079, 1080, 1087,
+ 1818, 1071, 779, 883, 863, 849, 1967, 779, 885, 96,
+ 155, 234, 692, 1085, 885, 836, 1495, 1381, 1381, 203,
+ 1502, 1509, 1509, 203, 1504, 1400, 779, 1007, 1827, 1524,
+ 1525, 378, 1771, 1809, 53, 782, 1809, 1572, 1576, 1400,
+ 780, 782, 1589, 1589, 1589, 1589, 1589, 1589, 1632, 847,
+ 31, 53, 299, 1934, 1938, 208, 1927, 1587, 1587, 1587,
+ 1792, 768, 1585, 1586, 1940, 173, 294, 1238, 446, 46,
+ 48, 49, 70, 72, 78, 110, 173, 204, 206, 217,
+ 240, 338, 375, 419, 420, 426, 438, 459, 483, 550,
+ 618, 629, 630, 631, 722, 1005, 1072, 1074, 1245, 1250,
+ 1252, 1255, 1261, 1262, 1263, 1265, 1266, 1560, 1406, 1950,
+ 342, 437, 850, 287, 419, 426, 852, 780, 782, 1969,
+ 1970, 53, 47, 779, 1307, 1998, 813, 814, 1587, 815,
+ 816, 1587, 811, 812, 1587, 1827, 1539, 1827, 439, 251,
+ 1687, 1683, 1350, 1794, 131, 1939, 1939, 961, 1997, 961,
+ 1639, 1349, 502, 143, 328, 1770, 1153, 1153, 391, 1151,
+ 1159, 1161, 1146, 224, 1146, 1159, 57, 71, 73, 306,
+ 341, 359, 730, 1134, 1139, 1141, 1161, 1167, 1176, 1178,
+ 1134, 1159, 1134, 1146, 779, 1159, 1134, 1153, 1153, 1134,
+ 1153, 779, 1146, 1159, 71, 307, 307, 310, 1146, 1153,
+ 723, 779, 891, 1153, 1153, 1153, 576, 1153, 1153, 894,
+ 1146, 310, 1153, 1153, 1153, 1153, 1153, 1155, 127, 127,
+ 2031, 1827, 988, 976, 1827, 24, 28, 30, 32, 1177,
+ 1178, 30, 30, 1152, 1177, 1177, 780, 1532, 1532, 65,
+ 256, 1461, 168, 1464, 1465, 780, 1400, 1400, 1473, 193,
+ 357, 780, 314, 1438, 1400, 1400, 1400, 1532, 96, 109,
+ 125, 155, 234, 295, 409, 410, 558, 559, 716, 1139,
+ 1140, 1411, 1412, 1413, 1414, 1469, 1595, 1532, 1400, 1400,
+ 1827, 1588, 780, 1190, 1185, 1183, 1185, 1186, 1587, 780,
+ 1473, 206, 1553, 65, 780, 1472, 1396, 780, 782, 347,
+ 1063, 1400, 1016, 217, 1033, 1034, 1035, 1588, 1018, 1932,
+ 1821, 1827, 787, 1648, 1648, 1889, 780, 780, 1889, 1889,
+ 1871, 1870, 1574, 1671, 1539, 99, 1660, 1526, 1395, 1661,
+ 780, 1642, 1643, 1806, 1807, 1811, 1827, 1794, 1640, 1686,
+ 1644, 47, 1251, 1259, 1260, 1827, 780, 782, 1590, 1739,
+ 1740, 447, 173, 779, 763, 782, 827, 1813, 754, 831,
+ 833, 75, 594, 787, 1088, 1089, 1090, 1091, 1099, 1100,
+ 1105, 1106, 1107, 1199, 1202, 1203, 1812, 1827, 167, 741,
+ 418, 1813, 1649, 1649, 1649, 1649, 1649, 1649, 1649, 1649,
+ 1649, 1649, 418, 1649, 1649, 1649, 1649, 1649, 1649, 1649,
+ 1649, 1649, 1649, 421, 541, 1827, 1649, 1649, 1003, 1004,
+ 1005, 782, 1073, 999, 1648, 884, 865, 54, 335, 996,
+ 203, 53, 876, 877, 641, 676, 641, 1967, 22, 29,
+ 31, 1479, 1501, 299, 1503, 299, 1531, 143, 298, 459,
+ 1519, 1520, 1523, 117, 118, 205, 282, 1772, 1773, 170,
+ 1774, 1567, 1549, 1548, 1567, 1573, 1572, 1395, 1600, 593,
+ 1821, 1936, 30, 30, 593, 99, 153, 560, 1239, 75,
+ 217, 384, 594, 702, 1091, 1099, 1100, 1267, 1199, 1267,
+ 217, 1267, 217, 217, 281, 287, 75, 126, 217, 594,
+ 702, 1104, 1199, 1267, 1649, 217, 65, 1007, 53, 287,
+ 384, 763, 1199, 1276, 1649, 217, 159, 705, 159, 217,
+ 705, 1267, 217, 592, 217, 217, 217, 1072, 782, 1004,
+ 1250, 779, 1090, 603, 1400, 1400, 203, 856, 863, 203,
+ 386, 857, 1827, 1632, 1364, 1969, 1308, 485, 780, 782,
+ 780, 782, 780, 782, 1685, 128, 439, 1391, 1632, 584,
+ 314, 1943, 1943, 203, 1662, 154, 1159, 1158, 1648, 1159,
+ 295, 317, 666, 1148, 1149, 1149, 1176, 99, 1173, 1159,
+ 1134, 1177, 1168, 57, 73, 391, 1162, 1149, 1223, 1787,
+ 1159, 1223, 1149, 310, 1149, 1159, 576, 889, 890, 1827,
+ 2006, 99, 1994, 2013, 1134, 888, 928, 1134, 1149, 2013,
+ 237, 1145, 1177, 57, 1179, 1134, 1159, 1149, 1149, 896,
+ 904, 905, 1587, 779, 897, 982, 780, 780, 780, 780,
+ 782, 780, 780, 1463, 1809, 1787, 1464, 1466, 1575, 780,
+ 780, 782, 780, 498, 549, 613, 780, 780, 1146, 155,
+ 1154, 71, 1154, 1177, 780, 780, 782, 780, 780, 780,
+ 1181, 780, 782, 780, 65, 229, 251, 1554, 1555, 1809,
+ 780, 1020, 1532, 160, 472, 780, 782, 1036, 780, 770,
+ 1879, 1878, 1889, 1889, 820, 1563, 406, 1799, 780, 782,
+ 787, 1365, 1646, 1647, 1811, 1632, 780, 782, 1529, 780,
+ 782, 50, 1741, 1658, 1821, 817, 779, 829, 1829, 779,
+ 779, 1222, 1812, 10, 127, 1101, 1827, 780, 782, 72,
+ 126, 225, 293, 1103, 1198, 1105, 1069, 1199, 1200, 1200,
+ 1108, 787, 1813, 1649, 99, 1587, 1594, 99, 1587, 99,
+ 1587, 99, 1587, 1075, 1590, 1587, 1587, 1821, 1821, 1649,
+ 1587, 1829, 454, 499, 568, 1084, 1587, 1590, 1590, 99,
+ 1587, 1821, 99, 389, 391, 425, 455, 588, 622, 1083,
+ 1594, 1587, 1594, 1001, 1770, 1073, 1071, 26, 28, 30,
+ 32, 99, 1591, 1592, 1821, 1827, 148, 151, 212, 879,
+ 880, 881, 882, 1827, 2015, 2016, 2017, 866, 867, 1950,
+ 2022, 101, 150, 296, 997, 654, 1969, 780, 878, 2016,
+ 1980, 1981, 1821, 1980, 53, 31, 378, 1482, 1400, 779,
+ 1400, 779, 780, 1199, 1199, 1520, 65, 65, 117, 65,
+ 1773, 271, 282, 1775, 1776, 1573, 779, 446, 30, 331,
+ 141, 1069, 141, 1068, 741, 1068, 1622, 1622, 1325, 1622,
+ 1251, 1260, 1813, 1167, 1622, 160, 1623, 10, 1622, 741,
+ 225, 1622, 1622, 99, 1827, 1325, 1561, 1562, 1811, 1006,
+ 1622, 1622, 1813, 99, 1827, 1325, 1260, 1622, 1325, 1325,
+ 1325, 1251, 46, 78, 110, 1263, 1086, 1088, 335, 454,
+ 1275, 1532, 669, 1821, 422, 1243, 314, 1971, 1632, 1311,
+ 1827, 47, 779, 1309, 814, 816, 812, 1632, 1403, 131,
+ 1940, 1945, 1946, 424, 1686, 281, 1827, 317, 295, 99,
+ 1173, 1158, 780, 782, 780, 888, 780, 782, 1129, 1400,
+ 2013, 787, 763, 1179, 209, 265, 269, 902, 903, 904,
+ 907, 1406, 1827, 878, 127, 30, 782, 1567, 780, 1400,
+ 549, 445, 1590, 780, 1587, 1566, 780, 55, 403, 410,
+ 713, 716, 725, 1556, 1557, 1791, 1567, 685, 1062, 1017,
+ 779, 1023, 1035, 1037, 1827, 1889, 1889, 1578, 1800, 1806,
+ 770, 1827, 780, 782, 1648, 1260, 1740, 419, 780, 1219,
+ 1221, 1827, 779, 583, 1219, 1219, 779, 1827, 1089, 779,
+ 160, 160, 1200, 1069, 236, 1192, 1222, 1827, 1069, 1069,
+ 144, 354, 356, 357, 373, 409, 410, 431, 455, 496,
+ 558, 559, 574, 575, 616, 660, 710, 713, 716, 739,
+ 759, 928, 1109, 1130, 1132, 1818, 1838, 1839, 1840, 1841,
+ 1842, 1847, 2001, 1827, 780, 1821, 779, 1821, 53, 1064,
+ 1003, 780, 782, 879, 649, 723, 1129, 105, 2033, 203,
+ 850, 782, 865, 2018, 1129, 2018, 1969, 779, 780, 1531,
+ 1531, 127, 1518, 1518, 1787, 1787, 65, 1787, 65, 65,
+ 1776, 31, 1239, 411, 1238, 1406, 1325, 1406, 1101, 1827,
+ 1812, 1251, 1812, 1247, 287, 1249, 1169, 1812, 1622, 1259,
+ 127, 160, 1812, 1812, 1251, 782, 1567, 1010, 1827, 1812,
+ 1588, 314, 1107, 1251, 1256, 1251, 780, 1827, 851, 858,
+ 859, 72, 361, 506, 780, 782, 1310, 287, 584, 1946,
+ 1663, 1632, 1813, 1177, 1787, 1177, 2013, 889, 1827, 30,
+ 782, 2033, 461, 780, 899, 780, 1809, 780, 780, 780,
+ 725, 1557, 1558, 1791, 649, 601, 440, 1559, 601, 1791,
+ 1063, 779, 1030, 1026, 99, 303, 304, 403, 475, 1038,
+ 1669, 1804, 787, 1647, 1661, 367, 780, 782, 1567, 779,
+ 1219, 779, 780, 780, 1827, 779, 1400, 1069, 1222, 1827,
+ 1813, 299, 1210, 723, 1222, 1222, 1111, 787, 1102, 1103,
+ 1110, 787, 1734, 1002, 1001, 2016, 723, 891, 576, 6,
+ 843, 1394, 855, 856, 2016, 2019, 195, 1483, 1484, 1827,
+ 1536, 780, 780, 136, 158, 206, 1522, 1521, 1787, 1787,
+ 1787, 780, 120, 1253, 120, 144, 196, 1218, 110, 258,
+ 1107, 1319, 281, 287, 73, 1812, 1827, 1274, 1246, 1562,
+ 287, 287, 281, 1275, 1257, 1259, 1248, 685, 853, 2033,
+ 584, 72, 72, 1827, 225, 1312, 1313, 1827, 1403, 160,
+ 1507, 787, 903, 1567, 458, 50, 458, 136, 403, 568,
+ 712, 1028, 1029, 1827, 780, 696, 1031, 1040, 711, 145,
+ 386, 393, 408, 535, 548, 565, 705, 1054, 1055, 1056,
+ 1059, 1076, 1708, 1632, 244, 770, 1892, 1221, 30, 782,
+ 1220, 846, 1892, 1892, 782, 1827, 780, 1222, 1210, 723,
+ 779, 1193, 1217, 1092, 1217, 1094, 1095, 18, 225, 293,
+ 386, 495, 752, 1076, 1112, 1113, 1122, 1164, 1165, 1166,
+ 1191, 1406, 1132, 73, 99, 201, 203, 346, 465, 660,
+ 1116, 1118, 1156, 1157, 1165, 1827, 780, 1077, 1078, 576,
+ 1827, 1976, 852, 2032, 218, 780, 782, 1485, 65, 65,
+ 779, 779, 1812, 591, 779, 1254, 144, 99, 99, 1275,
+ 1813, 217, 1174, 1325, 1827, 1812, 1813, 1258, 1297, 1400,
+ 428, 854, 843, 584, 584, 780, 782, 296, 1765, 1827,
+ 1558, 649, 209, 323, 780, 782, 1588, 779, 1042, 1044,
+ 1039, 418, 1649, 1649, 418, 1649, 1649, 1649, 1649, 779,
+ 1049, 1056, 430, 299, 386, 497, 723, 744, 1076, 1204,
+ 1207, 1212, 1213, 1214, 1218, 1567, 780, 1827, 780, 780,
+ 314, 1205, 1209, 1213, 1216, 1206, 1208, 1213, 1215, 1827,
+ 782, 1098, 1096, 1217, 1194, 1827, 180, 1195, 779, 1093,
+ 779, 779, 160, 1821, 702, 1165, 741, 160, 201, 1173,
+ 19, 20, 768, 769, 779, 1126, 1127, 1128, 1375, 1422,
+ 1790, 296, 339, 99, 53, 391, 1157, 1163, 1827, 787,
+ 1813, 857, 843, 1479, 1484, 127, 1133, 1135, 1136, 1137,
+ 1487, 1488, 1528, 1530, 1103, 1588, 1033, 1128, 1007, 1035,
+ 1007, 154, 1400, 1313, 1664, 1170, 1027, 1029, 779, 1043,
+ 1044, 1045, 182, 1041, 1044, 1649, 1821, 1821, 1649, 1591,
+ 1591, 1588, 1829, 697, 1050, 1051, 1649, 1217, 1821, 1649,
+ 1217, 1264, 1265, 1266, 1214, 752, 1892, 589, 1264, 1216,
+ 1264, 1215, 780, 1827, 779, 779, 1097, 780, 782, 462,
+ 590, 667, 203, 1196, 1219, 779, 1219, 1219, 426, 1160,
+ 1792, 1792, 1125, 198, 737, 649, 1126, 1158, 1156, 787,
+ 1827, 127, 422, 1486, 207, 120, 218, 780, 780, 780,
+ 779, 1672, 1673, 1811, 1766, 1031, 780, 782, 182, 1047,
+ 1048, 1403, 1821, 1821, 1052, 780, 782, 1081, 1829, 1587,
+ 1266, 1265, 585, 1204, 1818, 780, 1219, 1219, 779, 1827,
+ 101, 296, 780, 1219, 780, 780, 780, 779, 1397, 427,
+ 686, 1117, 1827, 787, 1394, 858, 1482, 218, 1479, 1033,
+ 782, 1648, 251, 1777, 1044, 782, 1046, 1053, 1829, 1051,
+ 1264, 780, 1220, 1219, 67, 244, 258, 568, 1197, 1197,
+ 1204, 780, 1205, 1206, 780, 1588, 1114, 1115, 1164, 1114,
+ 595, 691, 745, 1119, 1827, 1977, 1479, 99, 201, 432,
+ 1489, 1490, 1491, 1492, 780, 1673, 1661, 480, 1771, 1048,
+ 780, 1057, 1058, 1059, 1192, 780, 1220, 99, 201, 332,
+ 203, 203, 1204, 780, 1164, 1120, 1121, 1122, 112, 24,
+ 25, 28, 30, 1479, 1480, 203, 1490, 1492, 1490, 1491,
+ 65, 1774, 1059, 1204, 780, 296, 101, 1122, 649, 116,
+ 432, 203, 203, 1787, 143, 1778, 1204, 1197, 1197, 1978,
+ 30, 779, 1780, 457, 600, 1972, 1973, 170, 251, 1779,
+ 3, 780, 1781, 1782, 1811, 258, 1783, 1829, 1979, 1829,
+ 780, 782, 1784, 1785, 1811, 1632, 2033, 1782, 782, 1648,
+ 843, 1785, 1394, 1661, 1395
+};
+
+/* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */
+static const yytype_int16 yyr1[] =
+{
+ 0, 789, 790, 791, 790, 790, 792, 792, 793, 793,
+ 793, 794, 794, 794, 794, 794, 794, 794, 794, 794,
+ 794, 794, 794, 794, 794, 794, 794, 794, 794, 794,
+ 794, 794, 794, 794, 794, 794, 794, 794, 794, 794,
+ 794, 794, 794, 794, 794, 794, 794, 794, 794, 794,
+ 794, 794, 794, 794, 794, 794, 794, 794, 794, 794,
+ 794, 794, 794, 794, 794, 794, 794, 794, 794, 794,
+ 794, 795, 796, 796, 798, 797, 799, 800, 801, 799,
+ 802, 803, 802, 804, 804, 806, 805, 808, 807, 809,
+ 809, 810, 810, 810, 810, 810, 810, 810, 810, 810,
+ 810, 810, 810, 810, 810, 810, 810, 810, 810, 810,
+ 810, 811, 811, 811, 812, 813, 813, 813, 814, 815,
+ 815, 815, 816, 817, 817, 817, 817, 817, 817, 817,
+ 817, 818, 818, 819, 820, 820, 821, 823, 824, 822,
+ 825, 822, 826, 827, 822, 828, 829, 822, 830, 831,
+ 822, 832, 833, 822, 834, 822, 835, 822, 836, 822,
+ 837, 822, 838, 822, 822, 822, 839, 822, 822, 840,
+ 840, 841, 841, 842, 842, 842, 842, 842, 842, 842,
+ 842, 842, 842, 842, 842, 842, 842, 843, 843, 845,
+ 844, 846, 846, 847, 847, 847, 847, 847, 847, 847,
+ 849, 848, 851, 850, 850, 852, 852, 852, 852, 853,
+ 853, 854, 854, 855, 855, 856, 857, 857, 859, 858,
+ 860, 861, 861, 862, 862, 862, 862, 863, 863, 864,
+ 864, 865, 865, 866, 866, 866, 866, 866, 866, 866,
+ 867, 867, 868, 868, 870, 869, 871, 869, 872, 869,
+ 873, 873, 874, 874, 875, 875, 876, 877, 876, 878,
+ 878, 879, 880, 880, 881, 881, 882, 882, 882, 884,
+ 883, 885, 886, 886, 887, 887, 888, 888, 888, 889,
+ 890, 890, 891, 892, 894, 893, 893, 893, 896, 895,
+ 897, 897, 898, 900, 899, 901, 901, 901, 901, 902,
+ 902, 903, 904, 904, 905, 906, 906, 907, 907, 907,
+ 907, 907, 907, 908, 908, 909, 910, 910, 911, 911,
+ 912, 912, 913, 913, 914, 914, 914, 915, 915, 915,
+ 915, 915, 915, 915, 915, 915, 915, 915, 915, 915,
+ 916, 917, 918, 918, 919, 919, 920, 920, 921, 922,
+ 922, 923, 923, 923, 924, 925, 925, 926, 927, 927,
+ 927, 927, 927, 927, 927, 927, 927, 927, 927, 927,
+ 927, 927, 928, 928, 929, 929, 931, 930, 933, 932,
+ 934, 934, 936, 935, 935, 937, 937, 938, 937, 939,
+ 937, 940, 940, 941, 940, 942, 940, 943, 944, 945,
+ 947, 946, 948, 950, 949, 952, 951, 953, 953, 954,
+ 954, 955, 955, 955, 956, 957, 957, 957, 958, 958,
+ 959, 960, 960, 962, 963, 961, 964, 964, 964, 964,
+ 966, 965, 968, 967, 967, 969, 969, 970, 970, 972,
+ 971, 974, 973, 975, 975, 976, 976, 977, 977, 978,
+ 979, 979, 979, 980, 981, 982, 984, 983, 985, 983,
+ 986, 987, 988, 983, 989, 983, 991, 990, 992, 990,
+ 993, 994, 990, 995, 990, 996, 996, 997, 997, 997,
+ 999, 998, 998, 998, 1000, 1000, 1001, 1001, 1002, 1002,
+ 1003, 1004, 1004, 1006, 1005, 1007, 1009, 1008, 1011, 1010,
+ 1012, 1013, 1012, 1012, 1012, 1014, 1012, 1012, 1015, 1012,
+ 1016, 1016, 1017, 1017, 1018, 1018, 1019, 1019, 1020, 1021,
+ 1022, 1023, 1024, 1024, 1025, 1026, 1025, 1027, 1025, 1028,
+ 1028, 1029, 1030, 1031, 1031, 1032, 1032, 1033, 1033, 1034,
+ 1034, 1036, 1035, 1037, 1038, 1039, 1038, 1040, 1038, 1038,
+ 1038, 1038, 1041, 1041, 1042, 1042, 1043, 1043, 1045, 1046,
+ 1044, 1047, 1047, 1048, 1048, 1049, 1049, 1050, 1050, 1052,
+ 1051, 1053, 1054, 1054, 1055, 1055, 1056, 1056, 1057, 1057,
+ 1058, 1058, 1059, 1059, 1059, 1059, 1059, 1059, 1059, 1059,
+ 1059, 1060, 1061, 1060, 1060, 1062, 1062, 1063, 1063, 1064,
+ 1064, 1065, 1065, 1066, 1066, 1067, 1067, 1067, 1068, 1068,
+ 1069, 1069, 1070, 1070, 1071, 1071, 1072, 1072, 1073, 1073,
+ 1073, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074,
+ 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074,
+ 1074, 1075, 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1074,
+ 1074, 1074, 1074, 1074, 1074, 1074, 1074, 1076, 1076, 1076,
+ 1076, 1077, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1083,
+ 1083, 1083, 1083, 1083, 1083, 1084, 1084, 1084, 1085, 1085,
+ 1085, 1085, 1086, 1087, 1088, 1088, 1089, 1089, 1089, 1089,
+ 1089, 1090, 1090, 1092, 1091, 1093, 1091, 1094, 1091, 1095,
+ 1091, 1096, 1091, 1097, 1091, 1098, 1091, 1099, 1100, 1101,
+ 1102, 1102, 1103, 1104, 1104, 1105, 1105, 1106, 1108, 1107,
+ 1110, 1109, 1111, 1109, 1112, 1112, 1113, 1113, 1114, 1114,
+ 1115, 1115, 1116, 1116, 1116, 1116, 1117, 1116, 1116, 1116,
+ 1118, 1118, 1119, 1119, 1119, 1119, 1120, 1120, 1121, 1121,
+ 1122, 1122, 1122, 1122, 1124, 1123, 1125, 1125, 1126, 1126,
+ 1127, 1127, 1128, 1128, 1129, 1130, 1130, 1131, 1131, 1131,
+ 1132, 1132, 1132, 1132, 1132, 1132, 1133, 1133, 1133, 1133,
+ 1133, 1133, 1133, 1133, 1133, 1133, 1134, 1134, 1134, 1134,
+ 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1136, 1136,
+ 1136, 1136, 1136, 1137, 1137, 1137, 1137, 1137, 1137, 1137,
+ 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1138, 1138,
+ 1139, 1140, 1140, 1141, 1141, 1142, 1142, 1142, 1142, 1142,
+ 1143, 1143, 1143, 1143, 1143, 1144, 1144, 1144, 1145, 1145,
+ 1146, 1146, 1146, 1147, 1148, 1148, 1148, 1148, 1148, 1148,
+ 1149, 1150, 1150, 1150, 1150, 1151, 1152, 1153, 1153, 1154,
+ 1154, 1155, 1155, 1156, 1156, 1157, 1157, 1157, 1157, 1157,
+ 1157, 1157, 1158, 1158, 1159, 1159, 1160, 1160, 1161, 1162,
+ 1163, 1164, 1164, 1164, 1165, 1165, 1165, 1166, 1166, 1167,
+ 1167, 1168, 1168, 1169, 1169, 1170, 1170, 1171, 1171, 1172,
+ 1172, 1173, 1174, 1174, 1175, 1175, 1176, 1176, 1176, 1177,
+ 1177, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178,
+ 1179, 1179, 1181, 1180, 1182, 1182, 1183, 1184, 1184, 1184,
+ 1184, 1185, 1186, 1187, 1187, 1188, 1189, 1189, 1190, 1190,
+ 1191, 1191, 1192, 1193, 1193, 1194, 1194, 1195, 1195, 1195,
+ 1195, 1196, 1196, 1196, 1196, 1196, 1197, 1197, 1197, 1197,
+ 1197, 1198, 1198, 1199, 1199, 1200, 1200, 1201, 1201, 1201,
+ 1202, 1203, 1204, 1204, 1205, 1205, 1206, 1206, 1207, 1207,
+ 1208, 1208, 1209, 1209, 1210, 1210, 1211, 1211, 1211, 1212,
+ 1212, 1213, 1213, 1213, 1213, 1213, 1214, 1214, 1215, 1216,
+ 1216, 1217, 1217, 1217, 1218, 1218, 1219, 1219, 1220, 1220,
+ 1221, 1221, 1222, 1222, 1223, 1223, 1225, 1226, 1224, 1227,
+ 1224, 1228, 1224, 1224, 1229, 1224, 1230, 1224, 1231, 1224,
+ 1232, 1224, 1233, 1224, 1234, 1224, 1224, 1235, 1236, 1237,
+ 1224, 1238, 1238, 1239, 1239, 1239, 1239, 1240, 1240, 1240,
+ 1240, 1240, 1241, 1241, 1241, 1241, 1242, 1242, 1243, 1243,
+ 1244, 1244, 1245, 1245, 1245, 1245, 1245, 1245, 1245, 1245,
+ 1245, 1245, 1246, 1245, 1245, 1247, 1245, 1248, 1245, 1245,
+ 1245, 1245, 1245, 1245, 1249, 1245, 1250, 1251, 1251, 1253,
+ 1252, 1254, 1254, 1254, 1256, 1255, 1257, 1258, 1257, 1259,
+ 1259, 1260, 1261, 1261, 1262, 1263, 1263, 1263, 1263, 1263,
+ 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
+ 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263,
+ 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1263, 1264, 1264,
+ 1264, 1264, 1264, 1265, 1265, 1266, 1266, 1267, 1267, 1268,
+ 1268, 1270, 1269, 1271, 1271, 1272, 1272, 1273, 1273, 1274,
+ 1274, 1274, 1275, 1275, 1275, 1276, 1276, 1276, 1276, 1278,
+ 1277, 1279, 1277, 1277, 1277, 1280, 1281, 1281, 1282, 1282,
+ 1283, 1283, 1283, 1285, 1284, 1286, 1286, 1287, 1287, 1287,
+ 1288, 1288, 1288, 1289, 1289, 1291, 1290, 1292, 1292, 1292,
+ 1293, 1294, 1293, 1296, 1295, 1297, 1297, 1298, 1298, 1299,
+ 1299, 1299, 1300, 1300, 1300, 1302, 1301, 1303, 1303, 1304,
+ 1305, 1305, 1306, 1306, 1307, 1308, 1307, 1309, 1310, 1309,
+ 1311, 1311, 1311, 1312, 1312, 1312, 1313, 1313, 1314, 1314,
+ 1315, 1316, 1315, 1318, 1317, 1319, 1319, 1320, 1320, 1321,
+ 1321, 1321, 1321, 1321, 1321, 1322, 1322, 1324, 1323, 1325,
+ 1325, 1325, 1327, 1326, 1326, 1328, 1328, 1329, 1329, 1330,
+ 1332, 1331, 1333, 1333, 1334, 1334, 1335, 1336, 1337, 1337,
+ 1339, 1338, 1340, 1340, 1341, 1341, 1342, 1343, 1345, 1344,
+ 1347, 1346, 1348, 1348, 1349, 1349, 1351, 1350, 1352, 1350,
+ 1354, 1353, 1355, 1353, 1356, 1356, 1358, 1357, 1360, 1361,
+ 1359, 1362, 1363, 1364, 1364, 1365, 1365, 1367, 1366, 1368,
+ 1366, 1369, 1369, 1370, 1371, 1370, 1370, 1372, 1372, 1373,
+ 1374, 1375, 1375, 1376, 1376, 1377, 1378, 1378, 1379, 1379,
+ 1380, 1380, 1380, 1381, 1381, 1381, 1382, 1383, 1383, 1384,
+ 1384, 1385, 1385, 1385, 1385, 1386, 1386, 1387, 1387, 1387,
+ 1388, 1388, 1389, 1389, 1390, 1390, 1390, 1390, 1391, 1391,
+ 1391, 1392, 1392, 1393, 1394, 1395, 1396, 1396, 1396, 1396,
+ 1396, 1397, 1397, 1397, 1398, 1398, 1398, 1399, 1399, 1400,
+ 1400, 1400, 1400, 1400, 1401, 1401, 1401, 1401, 1401, 1401,
+ 1401, 1401, 1401, 1401, 1401, 1401, 1402, 1402, 1402, 1402,
+ 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402, 1402,
+ 1402, 1402, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403,
+ 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403, 1403,
+ 1403, 1404, 1404, 1405, 1405, 1406, 1406, 1407, 1407, 1408,
+ 1408, 1408, 1408, 1408, 1408, 1409, 1409, 1410, 1410, 1411,
+ 1411, 1411, 1412, 1412, 1412, 1412, 1412, 1412, 1413, 1413,
+ 1413, 1414, 1414, 1415, 1416, 1416, 1417, 1417, 1417, 1417,
+ 1418, 1419, 1419, 1420, 1421, 1421, 1421, 1421, 1421, 1421,
+ 1421, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422,
+ 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422,
+ 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422, 1422,
+ 1423, 1423, 1423, 1423, 1424, 1424, 1425, 1425, 1425, 1425,
+ 1425, 1425, 1426, 1426, 1427, 1427, 1428, 1428, 1428, 1428,
+ 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1428,
+ 1428, 1428, 1428, 1428, 1428, 1428, 1428, 1429, 1429, 1430,
+ 1430, 1431, 1431, 1432, 1432, 1432, 1432, 1432, 1432, 1432,
+ 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432,
+ 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1432, 1433,
+ 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433, 1433,
+ 1433, 1433, 1433, 1435, 1434, 1434, 1434, 1434, 1434, 1434,
+ 1434, 1434, 1434, 1434, 1434, 1436, 1436, 1437, 1437, 1438,
+ 1438, 1439, 1439, 1440, 1440, 1441, 1442, 1442, 1442, 1442,
+ 1442, 1442, 1442, 1443, 1444, 1442, 1442, 1442, 1442, 1442,
+ 1442, 1442, 1442, 1442, 1442, 1442, 1445, 1442, 1446, 1442,
+ 1447, 1442, 1448, 1448, 1449, 1449, 1449, 1450, 1450, 1450,
+ 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450, 1450,
+ 1451, 1453, 1452, 1452, 1454, 1454, 1455, 1456, 1458, 1457,
+ 1459, 1459, 1459, 1459, 1460, 1460, 1461, 1461, 1462, 1462,
+ 1463, 1463, 1464, 1464, 1465, 1466, 1468, 1467, 1469, 1469,
+ 1469, 1469, 1469, 1469, 1469, 1469, 1470, 1470, 1470, 1470,
+ 1470, 1470, 1470, 1470, 1471, 1471, 1471, 1471, 1472, 1472,
+ 1473, 1473, 1474, 1474, 1475, 1475, 1476, 1476, 1477, 1477,
+ 1478, 1478, 1479, 1479, 1479, 1480, 1480, 1480, 1480, 1480,
+ 1481, 1482, 1483, 1483, 1485, 1484, 1486, 1484, 1487, 1487,
+ 1487, 1488, 1488, 1488, 1488, 1489, 1489, 1489, 1489, 1489,
+ 1490, 1490, 1490, 1491, 1492, 1494, 1495, 1493, 1496, 1496,
+ 1497, 1497, 1498, 1499, 1498, 1500, 1498, 1498, 1501, 1498,
+ 1502, 1498, 1498, 1503, 1498, 1504, 1498, 1498, 1505, 1505,
+ 1505, 1506, 1506, 1507, 1507, 1508, 1509, 1509, 1509, 1509,
+ 1509, 1510, 1510, 1511, 1511, 1512, 1512, 1513, 1513, 1514,
+ 1514, 1515, 1516, 1517, 1517, 1518, 1518, 1518, 1518, 1519,
+ 1519, 1521, 1520, 1522, 1520, 1523, 1523, 1524, 1525, 1524,
+ 1527, 1526, 1528, 1528, 1529, 1529, 1530, 1530, 1531, 1531,
+ 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532, 1532,
+ 1532, 1532, 1533, 1533, 1533, 1533, 1533, 1533, 1533, 1533,
+ 1533, 1534, 1534, 1534, 1534, 1535, 1535, 1535, 1536, 1536,
+ 1537, 1538, 1538, 1539, 1540, 1539, 1541, 1542, 1541, 1543,
+ 1543, 1544, 1544, 1545, 1545, 1545, 1546, 1546, 1547, 1547,
+ 1548, 1550, 1549, 1551, 1551, 1552, 1552, 1553, 1553, 1554,
+ 1554, 1555, 1555, 1556, 1556, 1557, 1557, 1557, 1558, 1558,
+ 1558, 1559, 1559, 1559, 1559, 1559, 1559, 1560, 1561, 1561,
+ 1562, 1563, 1563, 1565, 1564, 1566, 1566, 1567, 1567, 1567,
+ 1568, 1568, 1569, 1569, 1569, 1569, 1570, 1570, 1570, 1570,
+ 1570, 1571, 1571, 1572, 1572, 1573, 1573, 1574, 1575, 1575,
+ 1575, 1576, 1576, 1576, 1576, 1576, 1576, 1577, 1578, 1578,
+ 1578, 1578, 1579, 1579, 1579, 1580, 1580, 1581, 1582, 1583,
+ 1583, 1583, 1584, 1584, 1585, 1585, 1586, 1586, 1587, 1587,
+ 1587, 1587, 1587, 1587, 1588, 1588, 1588, 1588, 1588, 1589,
+ 1589, 1589, 1589, 1590, 1590, 1590, 1590, 1590, 1591, 1591,
+ 1591, 1591, 1591, 1592, 1593, 1593, 1594, 1594, 1595, 1595,
+ 1595, 1597, 1596, 1598, 1598, 1599, 1599, 1600, 1602, 1601,
+ 1603, 1603, 1604, 1605, 1605, 1605, 1606, 1608, 1609, 1607,
+ 1607, 1607, 1611, 1610, 1613, 1612, 1614, 1612, 1612, 1612,
+ 1612, 1615, 1612, 1612, 1612, 1612, 1616, 1612, 1612, 1617,
+ 1617, 1618, 1619, 1620, 1620, 1621, 1622, 1622, 1623, 1623,
+ 1624, 1624, 1626, 1627, 1625, 1629, 1630, 1628, 1631, 1632,
+ 1633, 1633, 1633, 1634, 1634, 1635, 1635, 1636, 1636, 1638,
+ 1637, 1639, 1639, 1640, 1639, 1641, 1642, 1642, 1643, 1643,
+ 1644, 1645, 1645, 1646, 1646, 1647, 1648, 1648, 1649, 1649,
+ 1650, 1650, 1651, 1651, 1653, 1652, 1655, 1654, 1656, 1656,
+ 1657, 1657, 1658, 1658, 1659, 1659, 1660, 1660, 1661, 1661,
+ 1662, 1663, 1664, 1662, 1665, 1665, 1667, 1668, 1669, 1666,
+ 1670, 1670, 1671, 1671, 1672, 1672, 1673, 1674, 1674, 1676,
+ 1675, 1677, 1677, 1678, 1678, 1679, 1680, 1681, 1682, 1683,
+ 1681, 1684, 1685, 1681, 1686, 1687, 1686, 1688, 1688, 1689,
+ 1689, 1690, 1690, 1691, 1691, 1692, 1692, 1692, 1694, 1695,
+ 1693, 1696, 1696, 1697, 1697, 1698, 1698, 1699, 1699, 1699,
+ 1699, 1699, 1699, 1699, 1699, 1699, 1700, 1700, 1702, 1701,
+ 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703,
+ 1703, 1703, 1703, 1703, 1704, 1703, 1705, 1703, 1703, 1703,
+ 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703,
+ 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703,
+ 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703,
+ 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1703,
+ 1703, 1703, 1703, 1703, 1703, 1703, 1703, 1706, 1706, 1706,
+ 1707, 1707, 1708, 1708, 1709, 1709, 1710, 1710, 1711, 1711,
+ 1712, 1712, 1713, 1713, 1714, 1714, 1714, 1716, 1715, 1717,
+ 1715, 1718, 1718, 1718, 1718, 1718, 1718, 1719, 1719, 1720,
+ 1721, 1721, 1721, 1721, 1722, 1722, 1723, 1723, 1723, 1724,
+ 1726, 1725, 1728, 1727, 1727, 1729, 1729, 1730, 1731, 1730,
+ 1732, 1732, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
+ 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733, 1733,
+ 1734, 1734, 1735, 1736, 1737, 1736, 1736, 1738, 1738, 1739,
+ 1739, 1739, 1740, 1741, 1741, 1743, 1742, 1744, 1744, 1746,
+ 1745, 1747, 1745, 1745, 1748, 1748, 1749, 1749, 1750, 1751,
+ 1750, 1753, 1752, 1754, 1754, 1754, 1755, 1755, 1755, 1756,
+ 1756, 1757, 1757, 1759, 1758, 1760, 1760, 1761, 1763, 1764,
+ 1765, 1766, 1762, 1767, 1767, 1768, 1768, 1769, 1769, 1769,
+ 1770, 1770, 1770, 1771, 1771, 1772, 1772, 1773, 1773, 1773,
+ 1773, 1774, 1774, 1775, 1775, 1776, 1776, 1777, 1777, 1778,
+ 1778, 1779, 1779, 1780, 1780, 1780, 1781, 1781, 1782, 1782,
+ 1783, 1783, 1784, 1784, 1785, 1786, 1786, 1786, 1786, 1787,
+ 1787, 1788, 1788, 1788, 1789, 1789, 1789, 1790, 1790, 1791,
+ 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1791, 1792,
+ 1792, 1792, 1792, 1792, 1793, 1793, 1793, 1795, 1794, 1796,
+ 1796, 1797, 1797, 1798, 1799, 1800, 1799, 1801, 1801, 1802,
+ 1803, 1804, 1804, 1805, 1806, 1806, 1807, 1807, 1808, 1808,
+ 1809, 1810, 1810, 1810, 1810, 1810, 1811, 1811, 1811, 1811,
+ 1811, 1812, 1812, 1812, 1812, 1813, 1813, 1813, 1814, 1814,
+ 1815, 1816, 1816, 1817, 1817, 1817, 1818, 1819, 1819, 1819,
+ 1819, 1820, 1821, 1822, 1823, 1824, 1824, 1825, 1825, 1826,
+ 1826, 1826, 1827, 1827, 1828, 1828, 1829, 1829, 1829, 1830,
+ 1830, 1830, 1831, 1831, 1832, 1833, 1833, 1833, 1833, 1833,
+ 1833, 1833, 1833, 1833, 1833, 1833, 1833, 1834, 1834, 1834,
+ 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834, 1834,
+ 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835, 1835,
+ 1835, 1835, 1835, 1836, 1836, 1836, 1836, 1836, 1836, 1836,
+ 1836, 1836, 1836, 1836, 1836, 1836, 1837, 1837, 1837, 1837,
+ 1837, 1837, 1837, 1837, 1838, 1838, 1838, 1838, 1838, 1838,
+ 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838,
+ 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838,
+ 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838,
+ 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1838,
+ 1838, 1838, 1838, 1838, 1838, 1838, 1838, 1839, 1839, 1839,
+ 1839, 1839, 1839, 1840, 1840, 1840, 1840, 1840, 1840, 1840,
+ 1840, 1840, 1840, 1841, 1841, 1841, 1842, 1842, 1842, 1843,
+ 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843,
+ 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843, 1843,
+ 1843, 1843, 1843, 1843, 1843, 1844, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845,
+ 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1845, 1846, 1846,
+ 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847,
+ 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1847,
+ 1847, 1847, 1847, 1847, 1847, 1847, 1847, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848, 1848,
+ 1848, 1848, 1850, 1849, 1851, 1851, 1852, 1851, 1853, 1851,
+ 1854, 1851, 1855, 1855, 1856, 1856, 1857, 1856, 1858, 1858,
+ 1860, 1859, 1859, 1861, 1861, 1861, 1862, 1862, 1862, 1862,
+ 1863, 1863, 1863, 1863, 1865, 1864, 1866, 1864, 1867, 1864,
+ 1869, 1868, 1870, 1868, 1871, 1868, 1873, 1872, 1874, 1872,
+ 1875, 1872, 1876, 1872, 1877, 1872, 1878, 1872, 1879, 1872,
+ 1872, 1872, 1872, 1872, 1872, 1872, 1872, 1880, 1872, 1881,
+ 1872, 1882, 1872, 1883, 1883, 1883, 1883, 1884, 1885, 1886,
+ 1886, 1887, 1887, 1887, 1887, 1888, 1888, 1888, 1889, 1889,
+ 1889, 1889, 1889, 1891, 1890, 1892, 1892, 1892, 1893, 1893,
+ 1894, 1894, 1895, 1896, 1896, 1896, 1896, 1896, 1898, 1897,
+ 1900, 1899, 1901, 1901, 1902, 1901, 1903, 1903, 1904, 1904,
+ 1905, 1905, 1905, 1905, 1906, 1905, 1907, 1907, 1907, 1907,
+ 1907, 1908, 1909, 1909, 1909, 1909, 1909, 1910, 1910, 1911,
+ 1912, 1912, 1912, 1912, 1913, 1913, 1914, 1914, 1915, 1915,
+ 1916, 1917, 1918, 1918, 1919, 1919, 1920, 1920, 1921, 1921,
+ 1922, 1922, 1922, 1922, 1923, 1924, 1924, 1924, 1924, 1925,
+ 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925,
+ 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925,
+ 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925,
+ 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925, 1925,
+ 1925, 1926, 1926, 1927, 1927, 1928, 1928, 1928, 1929, 1929,
+ 1929, 1929, 1930, 1930, 1931, 1931, 1932, 1932, 1933, 1933,
+ 1934, 1934, 1935, 1935, 1935, 1935, 1936, 1936, 1937, 1938,
+ 1938, 1938, 1939, 1939, 1939, 1939, 1939, 1940, 1940, 1940,
+ 1940, 1940, 1941, 1941, 1942, 1942, 1943, 1943, 1944, 1944,
+ 1945, 1945, 1946, 1946, 1948, 1947, 1949, 1950, 1950, 1951,
+ 1951, 1952, 1952, 1952, 1953, 1953, 1953, 1954, 1955, 1955,
+ 1955, 1956, 1957, 1958, 1958, 1958, 1959, 1959, 1959, 1960,
+ 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1960, 1961, 1961,
+ 1962, 1963, 1964, 1964, 1964, 1965, 1965, 1966, 1966, 1967,
+ 1967, 1968, 1968, 1970, 1969, 1971, 1971, 1971, 1971, 1972,
+ 1972, 1973, 1973, 1975, 1976, 1977, 1978, 1979, 1974, 1981,
+ 1980, 1982, 1982, 1982, 1982, 1982, 1982, 1983, 1983, 1984,
+ 1984, 1984, 1985, 1985, 1985, 1986, 1986, 1986, 1987, 1987,
+ 1988, 1989, 1988, 1990, 1990, 1991, 1991, 1992, 1992, 1993,
+ 1994, 1995, 1996, 1997, 1998, 1999, 1999, 1999, 2000, 2000,
+ 2001, 2001, 2002, 2002, 2002, 2002, 2002, 2002, 2002, 2003,
+ 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003, 2003,
+ 2003, 2004, 2005, 2006, 2008, 2007, 2009, 2010, 2011, 2012,
+ 2013, 2013, 2014, 2014, 2015, 2015, 2016, 2016, 2016, 2017,
+ 2017, 2017, 2017, 2019, 2018, 2021, 2022, 2020, 2023, 2023,
+ 2023, 2025, 2024, 2026, 2024, 2027, 2024, 2024, 2028, 2028,
+ 2029, 2030, 2030, 2030, 2031, 2030, 2032, 2032, 2032, 2032,
+ 2032, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2033, 2034,
+ 2034, 2034, 2034, 2036, 2035, 2038, 2037, 2040, 2039
+};
+
+/* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */
+static const yytype_int8 yyr2[] =
+{
+ 0, 2, 1, 0, 4, 2, 0, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 3, 1, 1, 0, 5, 3, 0, 0, 6,
+ 0, 0, 3, 1, 3, 0, 3, 0, 7, 1,
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
+ 3, 3, 3, 3, 3, 3, 3, 5, 5, 5,
+ 1, 0, 1, 3, 1, 0, 1, 3, 1, 0,
+ 1, 3, 1, 3, 3, 3, 3, 3, 3, 3,
+ 3, 0, 1, 1, 0, 1, 3, 0, 0, 8,
+ 0, 8, 0, 0, 15, 0, 0, 17, 0, 0,
+ 15, 0, 0, 15, 0, 6, 0, 10, 0, 11,
+ 0, 5, 0, 5, 8, 6, 0, 3, 1, 0,
+ 1, 1, 2, 3, 2, 1, 3, 2, 1, 3,
+ 3, 3, 1, 1, 1, 1, 3, 0, 1, 0,
+ 12, 1, 3, 2, 2, 2, 2, 2, 2, 2,
+ 0, 12, 0, 6, 2, 0, 1, 3, 1, 0,
+ 2, 0, 2, 0, 1, 4, 0, 2, 0, 3,
+ 0, 0, 1, 1, 1, 1, 2, 3, 1, 0,
+ 2, 0, 2, 2, 2, 2, 2, 3, 3, 1,
+ 1, 2, 3, 3, 0, 4, 0, 6, 0, 8,
+ 0, 3, 0, 1, 3, 1, 0, 0, 2, 3,
+ 1, 1, 0, 1, 3, 1, 1, 1, 1, 0,
+ 4, 3, 0, 3, 2, 3, 1, 3, 5, 2,
+ 1, 3, 3, 1, 0, 4, 4, 1, 0, 6,
+ 0, 3, 0, 0, 3, 1, 1, 1, 1, 1,
+ 3, 1, 1, 1, 3, 0, 1, 1, 1, 1,
+ 2, 1, 1, 2, 3, 3, 1, 1, 0, 1,
+ 0, 2, 3, 5, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 3, 4, 0, 1, 1, 3, 1, 3, 3, 1,
+ 2, 1, 1, 1, 1, 1, 3, 3, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 3, 0, 5, 0, 2,
+ 1, 1, 0, 3, 1, 1, 2, 0, 4, 0,
+ 5, 1, 2, 0, 4, 0, 5, 2, 2, 2,
+ 0, 2, 0, 0, 3, 0, 3, 1, 3, 0,
+ 3, 1, 1, 1, 3, 3, 4, 5, 2, 4,
+ 2, 1, 3, 0, 0, 6, 0, 2, 2, 2,
+ 0, 6, 0, 3, 1, 1, 2, 1, 2, 0,
+ 5, 0, 5, 0, 2, 0, 1, 0, 1, 2,
+ 5, 3, 5, 3, 5, 1, 0, 5, 0, 5,
+ 0, 0, 0, 8, 0, 5, 0, 3, 0, 3,
+ 0, 0, 5, 0, 3, 1, 1, 1, 1, 1,
+ 0, 5, 3, 1, 2, 4, 0, 4, 1, 4,
+ 1, 0, 1, 0, 4, 0, 0, 3, 0, 6,
+ 6, 0, 4, 2, 2, 0, 3, 2, 0, 3,
+ 0, 1, 0, 3, 0, 1, 1, 3, 1, 4,
+ 3, 3, 0, 2, 0, 0, 7, 0, 10, 1,
+ 3, 1, 1, 0, 2, 0, 3, 1, 3, 0,
+ 1, 0, 6, 1, 0, 0, 4, 0, 3, 1,
+ 1, 1, 1, 1, 1, 3, 1, 3, 0, 0,
+ 5, 1, 3, 1, 1, 0, 3, 1, 3, 0,
+ 4, 1, 0, 1, 2, 1, 1, 1, 0, 1,
+ 2, 1, 3, 4, 3, 3, 3, 3, 4, 4,
+ 3, 0, 0, 6, 3, 0, 2, 0, 1, 0,
+ 1, 0, 1, 1, 2, 1, 1, 3, 0, 3,
+ 0, 3, 1, 3, 0, 1, 1, 2, 1, 2,
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
+ 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,
+ 3, 0, 6, 1, 1, 3, 4, 4, 2, 2,
+ 2, 3, 3, 3, 1, 3, 1, 3, 3, 3,
+ 3, 0, 1, 2, 4, 4, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 3, 1, 3, 1, 1, 1, 1,
+ 2, 1, 3, 0, 9, 0, 10, 0, 9, 0,
+ 9, 0, 11, 0, 12, 0, 10, 2, 7, 7,
+ 0, 1, 4, 0, 1, 0, 1, 2, 0, 4,
+ 0, 3, 0, 3, 0, 1, 2, 1, 0, 1,
+ 2, 1, 0, 1, 2, 3, 0, 6, 5, 5,
+ 0, 2, 0, 1, 1, 1, 0, 1, 2, 1,
+ 1, 2, 2, 1, 0, 3, 1, 3, 3, 1,
+ 1, 1, 1, 1, 1, 1, 3, 1, 1, 1,
+ 1, 1, 1, 1, 1, 3, 3, 3, 3, 2,
+ 1, 1, 3, 3, 3, 3, 0, 1, 2, 2,
+ 3, 3, 2, 3, 3, 4, 3, 3, 3, 1,
+ 2, 2, 2, 2, 3, 3, 2, 2, 2, 3,
+ 3, 2, 3, 2, 2, 2, 2, 2, 5, 5,
+ 1, 1, 2, 2, 1, 2, 1, 2, 3, 2,
+ 1, 1, 1, 1, 1, 1, 1, 2, 0, 3,
+ 0, 1, 1, 5, 0, 1, 1, 1, 2, 2,
+ 1, 3, 3, 3, 3, 1, 1, 0, 1, 0,
+ 1, 0, 1, 2, 1, 1, 2, 4, 1, 3,
+ 2, 1, 0, 2, 0, 1, 0, 1, 2, 2,
+ 2, 3, 2, 1, 1, 1, 2, 1, 2, 2,
+ 1, 1, 1, 1, 1, 0, 2, 1, 1, 1,
+ 1, 1, 1, 1, 0, 1, 2, 1, 1, 0,
+ 1, 1, 1, 2, 1, 2, 3, 3, 2, 2,
+ 0, 1, 0, 4, 1, 1, 1, 0, 1, 2,
+ 1, 1, 2, 1, 3, 3, 1, 1, 0, 2,
+ 0, 1, 5, 0, 3, 3, 1, 0, 2, 2,
+ 2, 0, 3, 3, 6, 6, 1, 1, 2, 2,
+ 2, 2, 2, 1, 1, 0, 1, 1, 1, 1,
+ 1, 1, 0, 1, 0, 1, 0, 1, 1, 2,
+ 1, 2, 1, 2, 0, 2, 0, 2, 2, 2,
+ 2, 3, 2, 1, 1, 1, 1, 1, 1, 1,
+ 3, 1, 1, 1, 1, 2, 4, 2, 0, 4,
+ 1, 4, 0, 1, 1, 3, 0, 0, 9, 0,
+ 5, 0, 7, 7, 0, 6, 0, 6, 0, 11,
+ 0, 10, 0, 11, 0, 8, 8, 0, 0, 0,
+ 9, 1, 1, 0, 1, 1, 3, 0, 2, 3,
+ 5, 5, 0, 3, 1, 4, 0, 3, 0, 2,
+ 0, 1, 0, 2, 2, 2, 2, 1, 1, 1,
+ 4, 4, 0, 6, 4, 0, 5, 0, 6, 4,
+ 3, 1, 7, 7, 0, 7, 2, 1, 1, 0,
+ 6, 0, 3, 2, 0, 5, 0, 0, 6, 1,
+ 3, 1, 1, 3, 3, 3, 2, 2, 4, 4,
+ 2, 7, 6, 5, 5, 4, 5, 4, 4, 2,
+ 2, 7, 5, 6, 3, 6, 6, 4, 6, 1,
+ 1, 1, 1, 1, 3, 3, 3, 5, 0, 1,
+ 1, 2, 2, 3, 3, 3, 3, 0, 1, 0,
+ 1, 0, 2, 0, 1, 2, 1, 1, 1, 0,
+ 1, 1, 0, 2, 1, 0, 1, 1, 1, 0,
+ 7, 0, 5, 5, 4, 3, 0, 1, 1, 3,
+ 3, 2, 2, 0, 2, 1, 3, 0, 1, 1,
+ 0, 2, 4, 1, 3, 0, 5, 0, 1, 1,
+ 3, 0, 4, 0, 4, 0, 1, 1, 2, 1,
+ 1, 1, 0, 2, 2, 0, 5, 1, 3, 2,
+ 0, 3, 1, 4, 1, 0, 4, 1, 0, 4,
+ 0, 1, 3, 0, 1, 3, 1, 1, 2, 6,
+ 3, 0, 4, 0, 3, 0, 1, 1, 2, 1,
+ 1, 1, 1, 1, 2, 0, 2, 0, 6, 0,
+ 1, 1, 0, 5, 4, 3, 5, 1, 3, 4,
+ 0, 6, 1, 1, 1, 3, 2, 3, 1, 1,
+ 0, 6, 1, 1, 1, 3, 3, 4, 0, 6,
+ 0, 2, 0, 4, 0, 2, 0, 3, 0, 4,
+ 0, 3, 0, 4, 1, 1, 0, 3, 0, 0,
+ 5, 6, 7, 1, 2, 1, 1, 0, 3, 0,
+ 3, 3, 3, 1, 0, 4, 3, 1, 1, 1,
+ 1, 1, 4, 0, 1, 2, 1, 1, 0, 1,
+ 0, 1, 1, 2, 1, 2, 9, 0, 1, 0,
+ 2, 3, 1, 4, 4, 2, 1, 1, 1, 1,
+ 3, 5, 0, 1, 0, 2, 1, 2, 3, 1,
+ 1, 3, 4, 0, 0, 0, 0, 2, 2, 1,
+ 1, 0, 2, 3, 0, 2, 3, 0, 2, 3,
+ 3, 3, 2, 1, 3, 4, 3, 4, 3, 4,
+ 3, 4, 3, 3, 6, 1, 3, 4, 5, 7,
+ 6, 8, 5, 6, 4, 3, 5, 4, 6, 3,
+ 4, 1, 3, 3, 3, 3, 3, 3, 3, 5,
+ 5, 5, 6, 6, 3, 3, 3, 3, 3, 3,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 0, 2, 1,
+ 1, 1, 1, 2, 1, 1, 1, 2, 1, 2,
+ 2, 2, 1, 4, 1, 3, 1, 1, 1, 1,
+ 3, 1, 1, 1, 4, 4, 4, 3, 3, 3,
+ 3, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 6, 4, 4, 7, 6, 3, 4, 6,
+ 6, 4, 4, 4, 4, 4, 4, 6, 8, 10,
+ 1, 1, 3, 1, 1, 3, 1, 2, 2, 2,
+ 2, 2, 1, 3, 4, 6, 4, 6, 2, 2,
+ 4, 4, 4, 10, 6, 8, 6, 4, 4, 6,
+ 4, 3, 4, 1, 4, 3, 4, 1, 1, 5,
+ 3, 5, 3, 6, 8, 2, 2, 8, 8, 6,
+ 6, 2, 6, 3, 6, 8, 4, 3, 4, 8,
+ 8, 4, 2, 2, 2, 6, 6, 4, 8, 4,
+ 4, 8, 4, 6, 6, 4, 6, 8, 6, 5,
+ 8, 7, 10, 0, 5, 4, 4, 4, 6, 8,
+ 6, 6, 6, 6, 6, 2, 3, 0, 4, 0,
+ 3, 0, 1, 1, 3, 4, 4, 5, 4, 4,
+ 4, 5, 4, 0, 0, 7, 4, 5, 4, 5,
+ 4, 4, 4, 4, 4, 5, 0, 9, 0, 8,
+ 0, 7, 3, 3, 1, 1, 1, 3, 3, 3,
+ 3, 3, 4, 4, 4, 6, 4, 6, 4, 6,
+ 5, 0, 7, 4, 4, 4, 4, 1, 0, 3,
+ 3, 1, 3, 5, 0, 1, 0, 2, 0, 3,
+ 4, 2, 0, 1, 2, 1, 0, 3, 2, 3,
+ 3, 3, 2, 1, 1, 1, 1, 1, 2, 1,
+ 2, 2, 1, 2, 1, 2, 2, 3, 0, 1,
+ 1, 3, 1, 3, 1, 3, 4, 5, 1, 3,
+ 1, 1, 1, 1, 2, 1, 1, 1, 1, 1,
+ 1, 4, 1, 3, 0, 3, 0, 5, 2, 4,
+ 4, 1, 1, 1, 1, 0, 1, 2, 1, 2,
+ 1, 1, 2, 3, 3, 0, 0, 10, 1, 4,
+ 1, 3, 3, 0, 6, 0, 8, 4, 0, 8,
+ 0, 10, 6, 0, 8, 0, 10, 6, 1, 2,
+ 1, 1, 2, 0, 1, 5, 1, 1, 1, 1,
+ 1, 1, 3, 1, 3, 3, 3, 3, 3, 3,
+ 3, 5, 3, 0, 1, 0, 2, 3, 3, 1,
+ 1, 0, 7, 0, 7, 1, 2, 0, 0, 2,
+ 0, 2, 0, 1, 1, 1, 1, 3, 1, 3,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 0, 1, 1, 0, 1,
+ 2, 0, 1, 0, 0, 3, 0, 0, 3, 0,
+ 4, 4, 2, 0, 1, 1, 0, 2, 3, 1,
+ 3, 0, 7, 0, 1, 0, 3, 0, 3, 0,
+ 3, 1, 1, 1, 4, 2, 2, 2, 1, 2,
+ 2, 0, 3, 2, 2, 3, 3, 3, 3, 1,
+ 2, 0, 1, 0, 4, 4, 2, 0, 1, 1,
+ 0, 1, 2, 5, 4, 1, 4, 7, 5, 8,
+ 3, 1, 1, 1, 1, 1, 2, 1, 1, 3,
+ 3, 1, 3, 1, 1, 1, 1, 1, 0, 2,
+ 3, 4, 1, 2, 1, 0, 1, 1, 1, 0,
+ 2, 2, 2, 1, 0, 1, 2, 2, 2, 1,
+ 2, 2, 2, 2, 1, 1, 1, 1, 1, 2,
+ 1, 2, 2, 2, 2, 2, 2, 2, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 0, 6, 0, 1, 3, 1, 3, 0, 2,
+ 3, 1, 1, 2, 1, 3, 2, 0, 0, 7,
+ 2, 1, 0, 3, 0, 8, 0, 8, 4, 5,
+ 5, 0, 6, 4, 4, 4, 0, 6, 1, 1,
+ 3, 1, 2, 1, 3, 1, 0, 2, 0, 2,
+ 0, 1, 0, 0, 12, 0, 0, 10, 0, 0,
+ 0, 1, 1, 0, 1, 1, 1, 0, 1, 0,
+ 2, 1, 2, 0, 3, 3, 0, 1, 3, 1,
+ 1, 3, 1, 3, 1, 3, 1, 1, 0, 1,
+ 1, 1, 1, 1, 0, 4, 0, 4, 0, 1,
+ 0, 1, 3, 1, 5, 3, 1, 1, 1, 1,
+ 0, 0, 0, 7, 5, 1, 0, 0, 0, 13,
+ 3, 1, 3, 3, 3, 1, 3, 0, 1, 0,
+ 3, 0, 3, 2, 3, 3, 2, 5, 0, 0,
+ 7, 0, 0, 8, 0, 0, 3, 1, 3, 2,
+ 4, 0, 2, 0, 2, 1, 1, 1, 0, 0,
+ 7, 0, 1, 0, 1, 1, 3, 1, 1, 2,
+ 2, 2, 1, 1, 1, 1, 0, 3, 0, 3,
+ 2, 4, 4, 3, 4, 4, 1, 3, 3, 3,
+ 3, 6, 2, 2, 0, 6, 0, 8, 5, 2,
+ 1, 1, 1, 5, 5, 2, 2, 1, 4, 3,
+ 2, 3, 2, 2, 1, 4, 4, 3, 3, 3,
+ 2, 2, 3, 4, 3, 3, 3, 3, 4, 4,
+ 3, 2, 3, 3, 3, 3, 3, 4, 4, 3,
+ 3, 4, 4, 3, 4, 4, 3, 1, 1, 1,
+ 1, 1, 0, 1, 0, 2, 0, 1, 1, 1,
+ 0, 2, 0, 2, 0, 3, 3, 0, 4, 0,
+ 4, 1, 1, 1, 1, 1, 1, 1, 1, 3,
+ 1, 2, 1, 1, 0, 3, 0, 1, 1, 5,
+ 0, 4, 0, 4, 1, 0, 1, 4, 0, 3,
+ 3, 1, 2, 2, 2, 2, 3, 4, 2, 1,
+ 1, 1, 1, 2, 1, 1, 1, 1, 1, 2,
+ 0, 1, 2, 2, 0, 3, 1, 0, 5, 0,
+ 1, 3, 1, 0, 3, 0, 3, 3, 1, 0,
+ 5, 0, 3, 2, 0, 1, 0, 2, 5, 0,
+ 6, 0, 4, 0, 1, 1, 2, 2, 3, 0,
+ 1, 1, 2, 0, 3, 0, 4, 2, 0, 0,
+ 0, 0, 23, 1, 1, 0, 1, 0, 1, 1,
+ 0, 1, 1, 0, 2, 2, 1, 3, 4, 3,
+ 3, 0, 2, 2, 1, 3, 3, 0, 4, 0,
+ 3, 1, 1, 0, 3, 2, 3, 1, 1, 2,
+ 0, 2, 3, 1, 5, 1, 1, 2, 2, 1,
+ 1, 1, 1, 1, 1, 2, 2, 2, 2, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 2, 1,
+ 1, 1, 1, 1, 2, 2, 2, 0, 4, 0,
+ 1, 1, 3, 7, 0, 0, 4, 0, 3, 1,
+ 1, 1, 3, 1, 1, 1, 3, 5, 3, 5,
+ 1, 1, 3, 4, 5, 4, 1, 3, 4, 4,
+ 5, 1, 5, 3, 2, 1, 3, 2, 2, 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,
+ 3, 2, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 0, 3, 1, 3, 0, 3, 0, 3,
+ 0, 5, 1, 3, 1, 3, 0, 3, 1, 3,
+ 0, 3, 1, 1, 1, 1, 0, 1, 1, 1,
+ 0, 2, 2, 2, 0, 4, 0, 6, 0, 6,
+ 0, 4, 0, 6, 0, 6, 0, 4, 0, 6,
+ 0, 6, 0, 5, 0, 7, 0, 9, 0, 9,
+ 2, 3, 2, 4, 3, 5, 2, 0, 4, 0,
+ 4, 0, 6, 1, 1, 3, 3, 1, 3, 2,
+ 2, 2, 2, 2, 1, 1, 4, 4, 1, 1,
+ 1, 1, 1, 0, 5, 0, 2, 1, 1, 1,
+ 1, 3, 3, 1, 1, 2, 2, 2, 0, 3,
+ 0, 3, 3, 2, 0, 6, 1, 2, 1, 1,
+ 1, 1, 1, 1, 0, 5, 1, 1, 1, 1,
+ 1, 3, 6, 6, 7, 5, 3, 4, 1, 3,
+ 8, 8, 6, 4, 0, 3, 0, 3, 1, 3,
+ 2, 1, 1, 1, 0, 1, 1, 2, 0, 1,
+ 1, 1, 3, 3, 4, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 2, 2, 1, 3, 2, 2,
+ 2, 2, 2, 2, 2, 2, 1, 1, 2, 2,
+ 2, 2, 2, 3, 2, 2, 2, 2, 3, 3,
+ 2, 0, 1, 3, 1, 2, 2, 2, 1, 3,
+ 3, 1, 1, 3, 1, 3, 1, 3, 1, 1,
+ 1, 1, 4, 5, 4, 1, 3, 1, 2, 0,
+ 2, 5, 0, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 1, 0, 2, 0, 2, 0, 3,
+ 2, 1, 2, 1, 0, 3, 1, 0, 1, 0,
+ 1, 0, 3, 2, 0, 1, 2, 4, 4, 5,
+ 4, 2, 3, 2, 2, 2, 0, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 0, 3, 3, 3, 3, 0, 1, 3, 3, 0,
+ 3, 1, 3, 0, 3, 0, 3, 4, 4, 1,
+ 1, 0, 2, 0, 0, 0, 0, 0, 20, 0,
+ 2, 4, 4, 3, 4, 3, 3, 0, 3, 1,
+ 3, 5, 1, 1, 1, 0, 1, 1, 0, 2,
+ 0, 0, 3, 0, 2, 6, 3, 4, 4, 1,
+ 0, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 0, 6, 4, 2, 1, 1,
+ 1, 2, 5, 6, 2, 1, 2, 3, 1, 6,
+ 8, 5, 7, 0, 4, 0, 0, 7, 6, 4,
+ 4, 0, 6, 0, 11, 0, 11, 10, 1, 3,
+ 2, 1, 4, 1, 0, 6, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 0, 7, 0, 5, 0, 7
+};
+
+
+enum { YYENOMEM = -2 };
+
+#define yyerrok (yyerrstatus = 0)
+#define yyclearin (yychar = YYEMPTY)
+
+#define YYACCEPT goto yyacceptlab
+#define YYABORT goto yyabortlab
+#define YYERROR goto yyerrorlab
+#define YYNOMEM goto yyexhaustedlab
+
+
+#define YYRECOVERING() (!!yyerrstatus)
+
+#define YYBACKUP(Token, Value) \
+ do \
+ if (yychar == YYEMPTY) \
+ { \
+ yychar = (Token); \
+ yylval = (Value); \
+ YYPOPSTACK (yylen); \
+ yystate = *yyssp; \
+ goto yybackup; \
+ } \
+ else \
+ { \
+ yyerror (thd, YY_("syntax error: cannot back up")); \
+ YYERROR; \
+ } \
+ while (0)
+
+/* Backward compatibility with an undocumented macro.
+ Use YYerror or YYUNDEF. */
+#define YYERRCODE YYUNDEF
+
+
+/* Enable debugging if requested. */
+#if YYDEBUG
+
+# ifndef YYFPRINTF
+# include <stdio.h> /* INFRINGES ON USER NAME SPACE */
+# define YYFPRINTF fprintf
+# endif
+
+# define YYDPRINTF(Args) \
+do { \
+ if (yydebug) \
+ YYFPRINTF Args; \
+} while (0)
+
+
+
+
+# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \
+do { \
+ if (yydebug) \
+ { \
+ YYFPRINTF (stderr, "%s ", Title); \
+ yy_symbol_print (stderr, \
+ Kind, Value, thd); \
+ YYFPRINTF (stderr, "\n"); \
+ } \
+} while (0)
+
+
+/*-----------------------------------.
+| Print this symbol's value on YYO. |
+`-----------------------------------*/
+
+static void
+yy_symbol_value_print (FILE *yyo,
+ yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep, THD *thd)
+{
+ FILE *yyoutput = yyo;
+ YY_USE (yyoutput);
+ YY_USE (thd);
+ if (!yyvaluep)
+ return;
+ YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+ YY_USE (yykind);
+ YY_IGNORE_MAYBE_UNINITIALIZED_END
+}
+
+
+/*---------------------------.
+| Print this symbol on YYO. |
+`---------------------------*/
+
+static void
+yy_symbol_print (FILE *yyo,
+ yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep, THD *thd)
+{
+ YYFPRINTF (yyo, "%s %s (",
+ yykind < YYNTOKENS ? "token" : "nterm", yysymbol_name (yykind));
+
+ yy_symbol_value_print (yyo, yykind, yyvaluep, thd);
+ YYFPRINTF (yyo, ")");
+}
+
+/*------------------------------------------------------------------.
+| yy_stack_print -- Print the state stack from its BOTTOM up to its |
+| TOP (included). |
+`------------------------------------------------------------------*/
+
+static void
+yy_stack_print (yy_state_t *yybottom, yy_state_t *yytop)
+{
+ YYFPRINTF (stderr, "Stack now");
+ for (; yybottom <= yytop; yybottom++)
+ {
+ int yybot = *yybottom;
+ YYFPRINTF (stderr, " %d", yybot);
+ }
+ YYFPRINTF (stderr, "\n");
+}
+
+# define YY_STACK_PRINT(Bottom, Top) \
+do { \
+ if (yydebug) \
+ yy_stack_print ((Bottom), (Top)); \
+} while (0)
+
+
+/*------------------------------------------------.
+| Report that the YYRULE is going to be reduced. |
+`------------------------------------------------*/
+
+static void
+yy_reduce_print (yy_state_t *yyssp, YYSTYPE *yyvsp,
+ int yyrule, THD *thd)
+{
+ int yylno = yyrline[yyrule];
+ int yynrhs = yyr2[yyrule];
+ int yyi;
+ YYFPRINTF (stderr, "Reducing stack by rule %d (line %d):\n",
+ yyrule - 1, yylno);
+ /* The symbols being reduced. */
+ for (yyi = 0; yyi < yynrhs; yyi++)
+ {
+ YYFPRINTF (stderr, " $%d = ", yyi + 1);
+ yy_symbol_print (stderr,
+ YY_ACCESSING_SYMBOL (+yyssp[yyi + 1 - yynrhs]),
+ &yyvsp[(yyi + 1) - (yynrhs)], thd);
+ YYFPRINTF (stderr, "\n");
+ }
+}
+
+# define YY_REDUCE_PRINT(Rule) \
+do { \
+ if (yydebug) \
+ yy_reduce_print (yyssp, yyvsp, Rule, thd); \
+} while (0)
+
+/* Nonzero means print parse trace. It is left uninitialized so that
+ multiple parsers can coexist. */
+int yydebug;
+#else /* !YYDEBUG */
+# define YYDPRINTF(Args) ((void) 0)
+# define YY_SYMBOL_PRINT(Title, Kind, Value, Location)
+# define YY_STACK_PRINT(Bottom, Top)
+# define YY_REDUCE_PRINT(Rule)
+#endif /* !YYDEBUG */
+
+
+/* YYINITDEPTH -- initial size of the parser's stacks. */
+#ifndef YYINITDEPTH
+# define YYINITDEPTH 200
+#endif
+
+/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
+ if the built-in stack extension method is used).
+
+ Do not make this value too large; the results are undefined if
+ YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
+ evaluated with infinite-precision integer arithmetic. */
+
+#ifndef YYMAXDEPTH
+# define YYMAXDEPTH 10000
+#endif
+
+
+
+
+
+
+/*-----------------------------------------------.
+| Release the memory associated to this symbol. |
+`-----------------------------------------------*/
+
+static void
+yydestruct (const char *yymsg,
+ yysymbol_kind_t yykind, YYSTYPE *yyvaluep, THD *thd)
+{
+ YY_USE (yyvaluep);
+ YY_USE (thd);
+ if (!yymsg)
+ yymsg = "Deleting";
+ YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp);
+
+ YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+ switch (yykind)
+ {
+ case YYSYMBOL_expr_lex: /* expr_lex */
+#line 1551 "/home/buildbot/git/mkdist/sql/yy_mariadb.yy"
+{
+ /*
+ In case of a syntax/oom error let's free the sp_expr_lex
+ instance, but only if it has not been linked to any structures
+ such as sp_instr_jump_if_not::m_lex_keeper yet, e.g.:
+ IF f1() THEN1
+ i.e. THEN1 came instead of the expected THEN causing a syntax error.
+ */
+ if (!((*yyvaluep).expr_lex)->sp_lex_in_use)
+ delete ((*yyvaluep).expr_lex);
+}
+#line 29430 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case YYSYMBOL_cursor_actual_parameters: /* cursor_actual_parameters */
+#line 1610 "/home/buildbot/git/mkdist/sql/yy_mariadb.yy"
+{
+ if (((*yyvaluep).sp_assignment_lex_list))
+ {
+ sp_assignment_lex *elem;
+ List_iterator<sp_assignment_lex> li(*((*yyvaluep).sp_assignment_lex_list));
+ while ((elem= li++))
+ {
+ if (!elem->sp_lex_in_use)
+ delete elem;
+ }
+ }
+}
+#line 29447 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case YYSYMBOL_opt_parenthesized_cursor_actual_parameters: /* opt_parenthesized_cursor_actual_parameters */
+#line 1610 "/home/buildbot/git/mkdist/sql/yy_mariadb.yy"
+{
+ if (((*yyvaluep).sp_assignment_lex_list))
+ {
+ sp_assignment_lex *elem;
+ List_iterator<sp_assignment_lex> li(*((*yyvaluep).sp_assignment_lex_list));
+ while ((elem= li++))
+ {
+ if (!elem->sp_lex_in_use)
+ delete elem;
+ }
+ }
+}
+#line 29464 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ default:
+ break;
+ }
+ YY_IGNORE_MAYBE_UNINITIALIZED_END
+}
+
+
+
+
+
+
+/*----------.
+| yyparse. |
+`----------*/
+
+int
+yyparse (THD *thd)
+{
+/* Lookahead token kind. */
+int yychar;
+
+
+/* The semantic value of the lookahead symbol. */
+/* Default value used for initialization, for pacifying older GCCs
+ or non-GCC compilers. */
+YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
+YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
+
+ /* Number of syntax errors so far. */
+ int yynerrs = 0;
+
+ yy_state_fast_t yystate = 0;
+ /* Number of tokens to shift before error messages enabled. */
+ int yyerrstatus = 0;
+
+ /* Refer to the stacks through separate pointers, to allow yyoverflow
+ to reallocate them elsewhere. */
+
+ /* Their size. */
+ YYPTRDIFF_T yystacksize = YYINITDEPTH;
+
+ /* The state stack: array, bottom, top. */
+ yy_state_t yyssa[YYINITDEPTH];
+ yy_state_t *yyss = yyssa;
+ yy_state_t *yyssp = yyss;
+
+ /* The semantic value stack: array, bottom, top. */
+ YYSTYPE yyvsa[YYINITDEPTH];
+ YYSTYPE *yyvs = yyvsa;
+ YYSTYPE *yyvsp = yyvs;
+
+ int yyn;
+ /* The return value of yyparse. */
+ int yyresult;
+ /* Lookahead symbol kind. */
+ yysymbol_kind_t yytoken = YYSYMBOL_YYEMPTY;
+ /* The variables used to return semantic value and location from the
+ action routines. */
+ YYSTYPE yyval;
+
+
+
+#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
+
+ /* The number of symbols on the RHS of the reduced rule.
+ Keep to zero when no symbol should be popped. */
+ int yylen = 0;
+
+ YYDPRINTF ((stderr, "Starting parse\n"));
+
+ yychar = YYEMPTY; /* Cause a token to be read. */
+
+ goto yysetstate;
+
+
+/*------------------------------------------------------------.
+| yynewstate -- push a new state, which is found in yystate. |
+`------------------------------------------------------------*/
+yynewstate:
+ /* In all cases, when you get here, the value and location stacks
+ have just been pushed. So pushing a state here evens the stacks. */
+ yyssp++;
+
+
+/*--------------------------------------------------------------------.
+| yysetstate -- set current state (the top of the stack) to yystate. |
+`--------------------------------------------------------------------*/
+yysetstate:
+ YYDPRINTF ((stderr, "Entering state %d\n", yystate));
+ YY_ASSERT (0 <= yystate && yystate < YYNSTATES);
+ YY_IGNORE_USELESS_CAST_BEGIN
+ *yyssp = YY_CAST (yy_state_t, yystate);
+ YY_IGNORE_USELESS_CAST_END
+ YY_STACK_PRINT (yyss, yyssp);
+
+ if (yyss + yystacksize - 1 <= yyssp)
+#if !defined yyoverflow && !defined YYSTACK_RELOCATE
+ YYNOMEM;
+#else
+ {
+ /* Get the current used size of the three stacks, in elements. */
+ YYPTRDIFF_T yysize = yyssp - yyss + 1;
+
+# if defined yyoverflow
+ {
+ /* Give user a chance to reallocate the stack. Use copies of
+ these so that the &'s don't force the real ones into
+ memory. */
+ yy_state_t *yyss1 = yyss;
+ YYSTYPE *yyvs1 = yyvs;
+
+ /* Each stack pointer address is followed by the size of the
+ data in use in that stack, in bytes. This used to be a
+ conditional around just the two extra args, but that might
+ be undefined if yyoverflow is a macro. */
+ yyoverflow (YY_("memory exhausted"),
+ &yyss1, yysize * YYSIZEOF (*yyssp),
+ &yyvs1, yysize * YYSIZEOF (*yyvsp),
+ &yystacksize);
+ yyss = yyss1;
+ yyvs = yyvs1;
+ }
+# else /* defined YYSTACK_RELOCATE */
+ /* Extend the stack our own way. */
+ if (YYMAXDEPTH <= yystacksize)
+ YYNOMEM;
+ yystacksize *= 2;
+ if (YYMAXDEPTH < yystacksize)
+ yystacksize = YYMAXDEPTH;
+
+ {
+ yy_state_t *yyss1 = yyss;
+ union yyalloc *yyptr =
+ YY_CAST (union yyalloc *,
+ YYSTACK_ALLOC (YY_CAST (YYSIZE_T, YYSTACK_BYTES (yystacksize))));
+ if (! yyptr)
+ YYNOMEM;
+ YYSTACK_RELOCATE (yyss_alloc, yyss);
+ YYSTACK_RELOCATE (yyvs_alloc, yyvs);
+# undef YYSTACK_RELOCATE
+ if (yyss1 != yyssa)
+ YYSTACK_FREE (yyss1);
+ }
+# endif
+
+ yyssp = yyss + yysize - 1;
+ yyvsp = yyvs + yysize - 1;
+
+ YY_IGNORE_USELESS_CAST_BEGIN
+ YYDPRINTF ((stderr, "Stack size increased to %ld\n",
+ YY_CAST (long, yystacksize)));
+ YY_IGNORE_USELESS_CAST_END
+
+ if (yyss + yystacksize - 1 <= yyssp)
+ YYABORT;
+ }
+#endif /* !defined yyoverflow && !defined YYSTACK_RELOCATE */
+
+
+ if (yystate == YYFINAL)
+ YYACCEPT;
+
+ goto yybackup;
+
+
+/*-----------.
+| yybackup. |
+`-----------*/
+yybackup:
+ /* Do appropriate processing given the current state. Read a
+ lookahead token if we need one and don't already have one. */
+
+ /* First try to decide what to do without reference to lookahead token. */
+ yyn = yypact[yystate];
+ if (yypact_value_is_default (yyn))
+ goto yydefault;
+
+ /* Not known => get a lookahead token if don't already have one. */
+
+ /* YYCHAR is either empty, or end-of-input, or a valid lookahead. */
+ if (yychar == YYEMPTY)
+ {
+ YYDPRINTF ((stderr, "Reading a token\n"));
+ yychar = yylex (&yylval, thd);
+ }
+
+ if (yychar <= YYEOF)
+ {
+ yychar = YYEOF;
+ yytoken = YYSYMBOL_YYEOF;
+ YYDPRINTF ((stderr, "Now at end of input.\n"));
+ }
+ else if (yychar == YYerror)
+ {
+ /* The scanner already issued an error message, process directly
+ to error recovery. But do not keep the error token as
+ lookahead, it is too special and may lead us to an endless
+ loop in error recovery. */
+ yychar = YYUNDEF;
+ yytoken = YYSYMBOL_YYerror;
+ goto yyerrlab1;
+ }
+ else
+ {
+ yytoken = YYTRANSLATE (yychar);
+ YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
+ }
+
+ /* If the proper action on seeing token YYTOKEN is to reduce or to
+ detect an error, take that action. */
+ yyn += yytoken;
+ if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
+ goto yydefault;
+ yyn = yytable[yyn];
+ if (yyn <= 0)
+ {
+ if (yytable_value_is_error (yyn))
+ goto yyerrlab;
+ yyn = -yyn;
+ goto yyreduce;
+ }
+
+ /* Count tokens shifted since error; after three, turn off error
+ status. */
+ if (yyerrstatus)
+ yyerrstatus--;
+
+ /* Shift the lookahead token. */
+ YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
+ yystate = yyn;
+ YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+ *++yyvsp = yylval;
+ YY_IGNORE_MAYBE_UNINITIALIZED_END
+
+ /* Discard the shifted token. */
+ yychar = YYEMPTY;
+ goto yynewstate;
+
+
+/*-----------------------------------------------------------.
+| yydefault -- do the default action for the current state. |
+`-----------------------------------------------------------*/
+yydefault:
+ yyn = yydefact[yystate];
+ if (yyn == 0)
+ goto yyerrlab;
+ goto yyreduce;
+
+
+/*-----------------------------.
+| yyreduce -- do a reduction. |
+`-----------------------------*/
+yyreduce:
+ /* yyn is the number of a rule to reduce with. */
+ yylen = yyr2[yyn];
+
+ /* If YYLEN is nonzero, implement the default value of the action:
+ '$$ = $1'.
+
+ Otherwise, the following line sets YYVAL to garbage.
+ This behavior is undocumented and Bison
+ users should not rely upon it. Assigning to YYVAL
+ unconditionally makes the parser a bit smaller, and it avoids a
+ GCC warning that YYVAL may be used uninitialized. */
+ yyval = yyvsp[1-yylen];
+
+
+ YY_REDUCE_PRINT (yyn);
+ switch (yyn)
+ {
+ case 2: /* query: END_OF_INPUT */
+#line 1976 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!thd->bootstrap &&
+ (!(thd->lex->lex_options & OPTION_LEX_FOUND_COMMENT)))
+ my_yyabort_error((ER_EMPTY_QUERY, MYF(0)));
+
+ thd->lex->sql_command= SQLCOM_EMPTY_QUERY;
+ YYLIP->found_semicolon= NULL;
+ }
+#line 29747 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3: /* $@1: %empty */
+#line 1985 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex_input_stream *lip = YYLIP;
+
+ if ((thd->client_capabilities & CLIENT_MULTI_QUERIES) &&
+ lip->multi_statements &&
+ ! lip->eof())
+ {
+ /*
+ We found a well formed query, and multi queries are allowed:
+ - force the parser to stop after the ';'
+ - mark the start of the next query for the next invocation
+ of the parser.
+ */
+ lip->next_state= MY_LEX_END;
+ lip->found_semicolon= lip->get_ptr();
+ }
+ else
+ {
+ /* Single query, terminated. */
+ lip->found_semicolon= NULL;
+ }
+ }
+#line 29774 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 5: /* query: directly_executable_statement END_OF_INPUT */
+#line 2010 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* Single query, not terminated. */
+ YYLIP->found_semicolon= NULL;
+ }
+#line 29783 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 71: /* deallocate: deallocate_or_drop PREPARE_SYM ident */
+#line 2093 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->stmt_deallocate_prepare((yyvsp[0].ident_sys));
+ }
+#line 29791 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 74: /* $@2: %empty */
+#line 2105 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->clause_that_disallows_subselect= "PREPARE..FROM"; }
+#line 29797 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 75: /* prepare: PREPARE_SYM ident FROM $@2 expr */
+#line 2107 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->clause_that_disallows_subselect= NULL;
+ if (Lex->stmt_prepare((yyvsp[-3].ident_sys), (yyvsp[0].item)))
+ MYSQL_YYABORT;
+ }
+#line 29807 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 76: /* execute: EXECUTE_SYM ident execute_using */
+#line 2116 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_execute((yyvsp[-1].ident_sys), (yyvsp[0].item_list)))
+ MYSQL_YYABORT;
+ }
+#line 29816 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 77: /* $@3: %empty */
+#line 2121 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->clause_that_disallows_subselect= "EXECUTE IMMEDIATE"; }
+#line 29822 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 78: /* $@4: %empty */
+#line 2123 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->clause_that_disallows_subselect= NULL; }
+#line 29828 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 79: /* execute: EXECUTE_SYM IMMEDIATE_SYM $@3 expr $@4 execute_using */
+#line 2125 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_execute_immediate((yyvsp[-2].item), (yyvsp[0].item_list)))
+ MYSQL_YYABORT;
+ }
+#line 29837 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 80: /* execute_using: %empty */
+#line 2132 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item_list)= NULL; }
+#line 29843 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 81: /* $@5: %empty */
+#line 2134 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->clause_that_disallows_subselect= "EXECUTE..USING"; }
+#line 29849 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 82: /* execute_using: USING $@5 execute_params */
+#line 2136 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item_list)= (yyvsp[0].item_list);
+ Lex->clause_that_disallows_subselect= NULL;
+ }
+#line 29858 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 83: /* execute_params: expr_or_ignore_or_default */
+#line 2144 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item_list)= List<Item>::make(thd->mem_root, (yyvsp[0].item)))))
+ MYSQL_YYABORT;
+ }
+#line 29867 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 84: /* execute_params: execute_params ',' expr_or_ignore_or_default */
+#line 2149 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (((yyval.item_list)= (yyvsp[-2].item_list))->push_back((yyvsp[0].item), thd->mem_root))
+ MYSQL_YYABORT;
+ }
+#line 29876 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 85: /* $@6: %empty */
+#line 2160 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sphead))
+ my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "HELP"));
+ }
+#line 29885 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 86: /* help: HELP_SYM $@6 ident_or_text */
+#line 2165 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_HELP;
+ lex->help_arg= (yyvsp[0].lex_str).str;
+ }
+#line 29895 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 87: /* $@7: %empty */
+#line 2176 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_CHANGE_MASTER;
+ }
+#line 29903 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 88: /* change: CHANGE MASTER_SYM optional_connection_name TO_SYM $@7 master_defs optional_for_channel */
+#line 2181 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 29909 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 91: /* master_def: MASTER_HOST_SYM '=' TEXT_STRING_sys */
+#line 2191 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.host = (yyvsp[0].lex_str).str;
+ }
+#line 29917 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 92: /* master_def: MASTER_USER_SYM '=' TEXT_STRING_sys */
+#line 2195 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.user = (yyvsp[0].lex_str).str;
+ }
+#line 29925 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 93: /* master_def: MASTER_PASSWORD_SYM '=' TEXT_STRING_sys */
+#line 2199 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.password = (yyvsp[0].lex_str).str;
+ }
+#line 29933 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 94: /* master_def: MASTER_PORT_SYM '=' ulong_num */
+#line 2203 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.port = (yyvsp[0].ulong_num);
+ }
+#line 29941 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 95: /* master_def: MASTER_CONNECT_RETRY_SYM '=' ulong_num */
+#line 2207 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.connect_retry = (yyvsp[0].ulong_num);
+ }
+#line 29949 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 96: /* master_def: MASTER_DELAY_SYM '=' ulong_num */
+#line 2211 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyvsp[0].ulong_num) > MASTER_DELAY_MAX)
+ {
+ my_error(ER_MASTER_DELAY_VALUE_OUT_OF_RANGE, MYF(0),
+ (ulong) (yyvsp[0].ulong_num), (ulong) MASTER_DELAY_MAX);
+ }
+ else
+ Lex->mi.sql_delay = (yyvsp[0].ulong_num);
+ }
+#line 29963 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 97: /* master_def: MASTER_SSL_SYM '=' ulong_num */
+#line 2221 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.ssl= (yyvsp[0].ulong_num) ?
+ LEX_MASTER_INFO::LEX_MI_ENABLE : LEX_MASTER_INFO::LEX_MI_DISABLE;
+ }
+#line 29972 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 98: /* master_def: MASTER_SSL_CA_SYM '=' TEXT_STRING_sys */
+#line 2226 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.ssl_ca= (yyvsp[0].lex_str).str;
+ }
+#line 29980 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 99: /* master_def: MASTER_SSL_CAPATH_SYM '=' TEXT_STRING_sys */
+#line 2230 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.ssl_capath= (yyvsp[0].lex_str).str;
+ }
+#line 29988 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 100: /* master_def: MASTER_SSL_CERT_SYM '=' TEXT_STRING_sys */
+#line 2234 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.ssl_cert= (yyvsp[0].lex_str).str;
+ }
+#line 29996 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 101: /* master_def: MASTER_SSL_CIPHER_SYM '=' TEXT_STRING_sys */
+#line 2238 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.ssl_cipher= (yyvsp[0].lex_str).str;
+ }
+#line 30004 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 102: /* master_def: MASTER_SSL_KEY_SYM '=' TEXT_STRING_sys */
+#line 2242 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.ssl_key= (yyvsp[0].lex_str).str;
+ }
+#line 30012 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 103: /* master_def: MASTER_SSL_VERIFY_SERVER_CERT_SYM '=' ulong_num */
+#line 2246 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.ssl_verify_server_cert= (yyvsp[0].ulong_num) ?
+ LEX_MASTER_INFO::LEX_MI_ENABLE : LEX_MASTER_INFO::LEX_MI_DISABLE;
+ }
+#line 30021 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 104: /* master_def: MASTER_SSL_CRL_SYM '=' TEXT_STRING_sys */
+#line 2251 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.ssl_crl= (yyvsp[0].lex_str).str;
+ }
+#line 30029 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 105: /* master_def: MASTER_SSL_CRLPATH_SYM '=' TEXT_STRING_sys */
+#line 2255 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.ssl_crlpath= (yyvsp[0].lex_str).str;
+ }
+#line 30037 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 106: /* master_def: MASTER_HEARTBEAT_PERIOD_SYM '=' NUM_literal */
+#line 2260 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.heartbeat_period= (float) (yyvsp[0].item_num)->val_real();
+ if (unlikely(Lex->mi.heartbeat_period >
+ SLAVE_MAX_HEARTBEAT_PERIOD) ||
+ unlikely(Lex->mi.heartbeat_period < 0.0))
+ my_yyabort_error((ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE, MYF(0),
+ SLAVE_MAX_HEARTBEAT_PERIOD));
+
+ if (unlikely(Lex->mi.heartbeat_period > slave_net_timeout))
+ {
+ push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
+ ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX,
+ ER_THD(thd, ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX));
+ }
+ if (unlikely(Lex->mi.heartbeat_period < 0.001))
+ {
+ if (unlikely(Lex->mi.heartbeat_period != 0.0))
+ {
+ push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
+ ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN,
+ ER_THD(thd, ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN));
+ Lex->mi.heartbeat_period= 0.0;
+ }
+ Lex->mi.heartbeat_opt= LEX_MASTER_INFO::LEX_MI_DISABLE;
+ }
+ Lex->mi.heartbeat_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
+ }
+#line 30069 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 107: /* master_def: IGNORE_SERVER_IDS_SYM '=' '(' ignore_server_id_list ')' */
+#line 2288 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.repl_ignore_server_ids_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
+ }
+#line 30077 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 108: /* master_def: DO_DOMAIN_IDS_SYM '=' '(' do_domain_id_list ')' */
+#line 2292 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.repl_do_domain_ids_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
+ }
+#line 30085 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 109: /* master_def: IGNORE_DOMAIN_IDS_SYM '=' '(' ignore_domain_id_list ')' */
+#line 2296 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.repl_ignore_domain_ids_opt= LEX_MASTER_INFO::LEX_MI_ENABLE;
+ }
+#line 30093 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 114: /* ignore_server_id: ulong_num */
+#line 2311 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ insert_dynamic(&Lex->mi.repl_ignore_server_ids, (uchar*) &((yyvsp[0].ulong_num)));
+ }
+#line 30101 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 118: /* do_domain_id: ulong_num */
+#line 2324 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ insert_dynamic(&Lex->mi.repl_do_domain_ids, (uchar*) &((yyvsp[0].ulong_num)));
+ }
+#line 30109 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 122: /* ignore_domain_id: ulong_num */
+#line 2337 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ insert_dynamic(&Lex->mi.repl_ignore_domain_ids, (uchar*) &((yyvsp[0].ulong_num)));
+ }
+#line 30117 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 123: /* master_file_def: MASTER_LOG_FILE_SYM '=' TEXT_STRING_sys */
+#line 2344 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.log_file_name = (yyvsp[0].lex_str).str;
+ }
+#line 30125 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 124: /* master_file_def: MASTER_LOG_POS_SYM '=' ulonglong_num */
+#line 2348 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ If the user specified a value < BIN_LOG_HEADER_SIZE, adjust it
+ instead of causing subsequent errors.
+ We need to do it in this file, because only there we know that
+ MASTER_LOG_POS has been explicitly specified. On the contrary
+ in change_master() (sql_repl.cc) we cannot distinguish between 0
+ (MASTER_LOG_POS explicitly specified as 0) and 0 (unspecified),
+ whereas we want to distinguish (specified 0 means "read the binlog
+ from 0" (4 in fact), unspecified means "don't change the position
+ (keep the preceding value)").
+ */
+ Lex->mi.pos= MY_MAX(BIN_LOG_HEADER_SIZE, (yyvsp[0].ulonglong_number));
+ }
+#line 30144 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 125: /* master_file_def: RELAY_LOG_FILE_SYM '=' TEXT_STRING_sys */
+#line 2363 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.relay_log_name = (yyvsp[0].lex_str).str;
+ }
+#line 30152 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 126: /* master_file_def: RELAY_LOG_POS_SYM '=' ulong_num */
+#line 2367 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.relay_log_pos = (yyvsp[0].ulong_num);
+ /* Adjust if < BIN_LOG_HEADER_SIZE (same comment as Lex->mi.pos) */
+ Lex->mi.relay_log_pos= MY_MAX(BIN_LOG_HEADER_SIZE, Lex->mi.relay_log_pos);
+ }
+#line 30162 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 127: /* master_file_def: MASTER_USE_GTID_SYM '=' CURRENT_POS_SYM */
+#line 2373 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->mi.use_gtid_opt != LEX_MASTER_INFO::LEX_GTID_UNCHANGED))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MASTER_use_gtid"));
+ Lex->mi.use_gtid_opt= LEX_MASTER_INFO::LEX_GTID_CURRENT_POS;
+ }
+#line 30172 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 128: /* master_file_def: MASTER_USE_GTID_SYM '=' SLAVE_POS_SYM */
+#line 2379 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->mi.use_gtid_opt != LEX_MASTER_INFO::LEX_GTID_UNCHANGED))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MASTER_use_gtid"));
+ Lex->mi.use_gtid_opt= LEX_MASTER_INFO::LEX_GTID_SLAVE_POS;
+ }
+#line 30182 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 129: /* master_file_def: MASTER_USE_GTID_SYM '=' NO_SYM */
+#line 2385 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->mi.use_gtid_opt != LEX_MASTER_INFO::LEX_GTID_UNCHANGED))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MASTER_use_gtid"));
+ Lex->mi.use_gtid_opt= LEX_MASTER_INFO::LEX_GTID_NO;
+ }
+#line 30192 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 130: /* master_file_def: MASTER_DEMOTE_TO_SLAVE_SYM '=' bool */
+#line 2391 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.is_demotion_opt= (bool) (yyvsp[0].ulong_num);
+ }
+#line 30200 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 131: /* optional_connection_name: %empty */
+#line 2398 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ lex->mi.connection_name= null_clex_str;
+ }
+#line 30209 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 133: /* connection_name: TEXT_STRING_sys */
+#line 2407 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.connection_name= (yyvsp[0].lex_str);
+#ifdef HAVE_REPLICATION
+ if (unlikely(check_master_connection_name(&(yyvsp[0].lex_str))))
+ my_yyabort_error((ER_WRONG_ARGUMENTS, MYF(0), "MASTER_CONNECTION_NAME"));
+#endif
+ }
+#line 30221 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 134: /* optional_for_channel: %empty */
+#line 2418 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*do nothing */
+ }
+#line 30229 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 136: /* for_channel: FOR_SYM CHANNEL_SYM TEXT_STRING_sys */
+#line 2427 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->mi.connection_name.str != NULL)
+ {
+ my_yyabort_error((ER_WRONG_ARGUMENTS, MYF(0), "CONNECTION_NAME AND FOR CHANNEL CAN NOT BE SPECIFIED AT THE SAME TIME)"));
+ }
+ else
+ {
+ Lex->mi.connection_name= (yyvsp[0].lex_str);
+#ifdef HAVE_REPLICATION
+ if (unlikely(check_master_connection_name(&(yyvsp[0].lex_str))))
+ my_yyabort_error((ER_WRONG_ARGUMENTS, MYF(0), "MASTER_CONNECTION_NAME"));
+#endif
+ }
+
+ }
+#line 30249 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 137: /* $@8: %empty */
+#line 2448 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ if (!(lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_create_table()))
+ MYSQL_YYABORT;
+ lex->create_info.init();
+ if (lex->main_select_push())
+ MYSQL_YYABORT;
+ lex->current_select->parsing_place= BEFORE_OPT_LIST;
+ if (lex->set_command_with_check(SQLCOM_CREATE_TABLE, (yyvsp[-2].num), (yyvsp[-3].object_ddl_options) | (yyvsp[0].object_ddl_options)))
+ MYSQL_YYABORT;
+ }
+#line 30265 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 138: /* $@9: %empty */
+#line 2460 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ if (!lex->first_select_lex()->
+ add_table_to_list(thd, (yyvsp[0].table), NULL, TL_OPTION_UPDATING,
+ TL_WRITE, MDL_SHARED_UPGRADABLE))
+ MYSQL_YYABORT;
+ lex->alter_info.reset();
+ /*
+ For CREATE TABLE we should not open the table even if it exists.
+ If the table exists, we should either not create it or replace it
+ */
+ lex->query_tables->open_strategy= TABLE_LIST::OPEN_STUB;
+ lex->name= null_clex_str;
+ lex->create_last_non_select_table= lex->last_table();
+ lex->inc_select_stack_outer_barrier();
+ }
+#line 30286 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 139: /* create: create_or_replace opt_temporary TABLE_SYM opt_if_not_exists $@8 table_ident $@9 create_body */
+#line 2477 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ create_table_set_open_action_and_adjust_tables(lex);
+ Lex->pop_select(); //main select
+ }
+#line 30296 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 140: /* $@10: %empty */
+#line 2483 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ if (lex->main_select_push())
+ MYSQL_YYABORT;
+ if (!(lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_create_sequence()))
+ MYSQL_YYABORT;
+ lex->create_info.init();
+ if (unlikely(lex->set_command_with_check(SQLCOM_CREATE_SEQUENCE, (yyvsp[-3].num),
+ (yyvsp[-4].object_ddl_options) | (yyvsp[-1].object_ddl_options))))
+ MYSQL_YYABORT;
+
+ if (!lex->first_select_lex()->
+ add_table_to_list(thd, (yyvsp[0].table), NULL, TL_OPTION_UPDATING,
+ TL_WRITE, MDL_EXCLUSIVE))
+ MYSQL_YYABORT;
+
+ /*
+ For CREATE TABLE, an non-existing table is not an error.
+ Instruct open_tables() to just take an MDL lock if the
+ table does not exist.
+ */
+ lex->alter_info.reset();
+ lex->query_tables->open_strategy= TABLE_LIST::OPEN_STUB;
+ lex->name= null_clex_str;
+ lex->create_last_non_select_table= lex->last_table();
+ if (unlikely(!(lex->create_info.seq_create_info=
+ new (thd->mem_root) sequence_definition())))
+ MYSQL_YYABORT;
+ }
+#line 30330 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 141: /* create: create_or_replace opt_temporary SEQUENCE_SYM opt_if_not_exists table_ident $@10 opt_sequence opt_create_table_options */
+#line 2513 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+
+ if (unlikely(lex->create_info.seq_create_info->check_and_adjust(1)))
+ {
+ my_error(ER_SEQUENCE_INVALID_DATA, MYF(0),
+ lex->first_select_lex()->table_list.first->db.str,
+ lex->first_select_lex()->table_list.first->
+ table_name.str);
+ MYSQL_YYABORT;
+ }
+
+ /* No fields specified, generate them */
+ if (unlikely(prepare_sequence_fields(thd,
+ &lex->alter_info.create_list)))
+ MYSQL_YYABORT;
+
+ /* CREATE SEQUENCE always creates a sequence */
+ Lex->create_info.used_fields|= HA_CREATE_USED_SEQUENCE;
+ Lex->create_info.sequence= 1;
+
+ create_table_set_open_action_and_adjust_tables(lex);
+ Lex->pop_select(); //main select
+ }
+#line 30359 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 142: /* $@11: %empty */
+#line 2538 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ }
+#line 30368 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 143: /* $@12: %empty */
+#line 2545 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->add_create_index_prepare((yyvsp[0].table)))
+ MYSQL_YYABORT;
+ if (Lex->add_create_index(Key::MULTIPLE, &(yyvsp[-3].ident_sys), (yyvsp[-2].key_alg), (yyvsp[-7].object_ddl_options) | (yyvsp[-5].object_ddl_options)))
+ MYSQL_YYABORT;
+ }
+#line 30379 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 144: /* create: create_or_replace INDEX_SYM opt_if_not_exists $@11 ident opt_key_algorithm_clause ON table_ident $@12 '(' key_list ')' opt_lock_wait_timeout normal_key_options opt_index_lock_algorithm */
+#line 2553 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 30387 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 145: /* $@13: %empty */
+#line 2557 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ }
+#line 30396 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 146: /* $@14: %empty */
+#line 2564 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->add_create_index_prepare((yyvsp[0].table)))
+ MYSQL_YYABORT;
+ if (Lex->add_create_index(Key::UNIQUE, &(yyvsp[-3].ident_sys), (yyvsp[-2].key_alg), (yyvsp[-8].object_ddl_options) | (yyvsp[-5].object_ddl_options)))
+ MYSQL_YYABORT;
+ }
+#line 30407 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 147: /* create: create_or_replace UNIQUE_SYM INDEX_SYM opt_if_not_exists $@13 ident opt_key_algorithm_clause ON table_ident $@14 '(' key_list opt_without_overlaps ')' opt_lock_wait_timeout normal_key_options opt_index_lock_algorithm */
+#line 2573 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 30415 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 148: /* $@15: %empty */
+#line 2577 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ }
+#line 30424 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 149: /* $@16: %empty */
+#line 2583 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->add_create_index_prepare((yyvsp[0].table)))
+ MYSQL_YYABORT;
+ if (Lex->add_create_index((yyvsp[-6].key_type), &(yyvsp[-2].ident_sys), HA_KEY_ALG_UNDEF, (yyvsp[-7].object_ddl_options) | (yyvsp[-3].object_ddl_options)))
+ MYSQL_YYABORT;
+ }
+#line 30435 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 150: /* create: create_or_replace fulltext INDEX_SYM $@15 opt_if_not_exists ident ON table_ident $@16 '(' key_list ')' opt_lock_wait_timeout fulltext_key_options opt_index_lock_algorithm */
+#line 2591 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 30443 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 151: /* $@17: %empty */
+#line 2595 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ }
+#line 30452 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 152: /* $@18: %empty */
+#line 2601 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->add_create_index_prepare((yyvsp[0].table)))
+ MYSQL_YYABORT;
+ if (Lex->add_create_index((yyvsp[-6].key_type), &(yyvsp[-2].ident_sys), HA_KEY_ALG_UNDEF, (yyvsp[-7].object_ddl_options) | (yyvsp[-3].object_ddl_options)))
+ MYSQL_YYABORT;
+ }
+#line 30463 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 153: /* create: create_or_replace spatial INDEX_SYM $@17 opt_if_not_exists ident ON table_ident $@18 '(' key_list ')' opt_lock_wait_timeout spatial_key_options opt_index_lock_algorithm */
+#line 2609 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 30471 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 154: /* $@19: %empty */
+#line 2613 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.init();
+ }
+#line 30479 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 155: /* create: create_or_replace DATABASE opt_if_not_exists ident $@19 opt_create_database_options */
+#line 2617 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ if (unlikely(lex->set_command_with_check(SQLCOM_CREATE_DB, 0,
+ (yyvsp[-5].object_ddl_options) | (yyvsp[-3].object_ddl_options))))
+ MYSQL_YYABORT;
+ lex->name= (yyvsp[-2].ident_sys);
+ }
+#line 30491 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 156: /* $@20: %empty */
+#line 2626 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ Lex->inc_select_stack_outer_barrier();
+ if (Lex->add_create_view(thd, (yyvsp[-5].object_ddl_options) | (yyvsp[-1].object_ddl_options),
+ DTYPE_ALGORITHM_UNDEFINED, (yyvsp[-3].view_suid), (yyvsp[0].table)))
+ MYSQL_YYABORT;
+ }
+#line 30504 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 157: /* create: create_or_replace definer_opt opt_view_suid VIEW_SYM opt_if_not_exists table_ident $@20 view_list_opt AS view_select */
+#line 2635 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 30512 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 158: /* $@21: %empty */
+#line 2640 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->add_create_view(thd, (yyvsp[-6].object_ddl_options) | (yyvsp[-1].object_ddl_options), (yyvsp[-5].num), (yyvsp[-3].view_suid), (yyvsp[0].table))))
+ MYSQL_YYABORT;
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ Lex->inc_select_stack_outer_barrier();
+ }
+#line 30524 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 159: /* create: create_or_replace view_algorithm definer_opt opt_view_suid VIEW_SYM opt_if_not_exists table_ident $@21 view_list_opt AS view_select */
+#line 2648 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 30532 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 160: /* $@22: %empty */
+#line 2652 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ Lex->create_info.set((yyvsp[-2].object_ddl_options));
+ }
+#line 30542 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 161: /* create: create_or_replace definer_opt TRIGGER_SYM $@22 trigger_tail */
+#line 2658 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 30550 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 162: /* $@23: %empty */
+#line 2662 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ Lex->create_info.set((yyvsp[-2].object_ddl_options));
+ }
+#line 30560 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 163: /* create: create_or_replace definer_opt EVENT_SYM $@23 event_tail */
+#line 2668 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 30568 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 164: /* create: create_or_replace USER_SYM opt_if_not_exists clear_privileges grant_list opt_require_clause opt_resource_options opt_account_locking_and_opt_password_expiration */
+#line 2673 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->set_command_with_check(SQLCOM_CREATE_USER,
+ (yyvsp[-7].object_ddl_options) | (yyvsp[-5].object_ddl_options))))
+ MYSQL_YYABORT;
+ }
+#line 30578 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 165: /* create: create_or_replace ROLE_SYM opt_if_not_exists clear_privileges role_list opt_with_admin */
+#line 2680 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->set_command_with_check(SQLCOM_CREATE_ROLE,
+ (yyvsp[-5].object_ddl_options) | (yyvsp[-3].object_ddl_options))))
+ MYSQL_YYABORT;
+ }
+#line 30588 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 166: /* $@24: %empty */
+#line 2685 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->set_command(SQLCOM_CREATE_SERVER, (yyvsp[0].object_ddl_options)); }
+#line 30594 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 167: /* create: create_or_replace $@24 server_def */
+#line 2687 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 30600 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 169: /* opt_sequence: %empty */
+#line 2692 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 30606 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 173: /* sequence_def: MINVALUE_SYM opt_equal longlong_num */
+#line 2703 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.seq_create_info->min_value= (yyvsp[0].longlong_number);
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_min_value;
+ }
+#line 30615 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 174: /* sequence_def: NO_SYM MINVALUE_SYM */
+#line 2708 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.seq_create_info->used_fields & seq_field_used_min_value))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MINVALUE"));
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_min_value;
+ }
+#line 30625 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 175: /* sequence_def: NOMINVALUE_SYM */
+#line 2714 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.seq_create_info->used_fields & seq_field_used_min_value))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MINVALUE"));
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_min_value;
+ }
+#line 30635 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 176: /* sequence_def: MAXVALUE_SYM opt_equal longlong_num */
+#line 2720 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.seq_create_info->used_fields &
+ seq_field_used_max_value))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MAXVALUE"));
+ Lex->create_info.seq_create_info->max_value= (yyvsp[0].longlong_number);
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_max_value;
+ }
+#line 30647 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 177: /* sequence_def: NO_SYM MAXVALUE_SYM */
+#line 2728 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.seq_create_info->used_fields & seq_field_used_max_value))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MAXVALUE"));
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_max_value;
+ }
+#line 30657 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 178: /* sequence_def: NOMAXVALUE_SYM */
+#line 2734 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.seq_create_info->used_fields & seq_field_used_max_value))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "MAXVALUE"));
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_max_value;
+ }
+#line 30667 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 179: /* sequence_def: START_SYM opt_with longlong_num */
+#line 2740 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.seq_create_info->used_fields &
+ seq_field_used_start))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "START"));
+ Lex->create_info.seq_create_info->start= (yyvsp[0].longlong_number);
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_start;
+ }
+#line 30679 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 180: /* sequence_def: INCREMENT_SYM opt_by longlong_num */
+#line 2748 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.seq_create_info->used_fields &
+ seq_field_used_increment))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "INCREMENT"));
+ Lex->create_info.seq_create_info->increment= (yyvsp[0].longlong_number);
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_increment;
+ }
+#line 30691 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 181: /* sequence_def: CACHE_SYM opt_equal longlong_num */
+#line 2756 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.seq_create_info->used_fields &
+ seq_field_used_cache))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "CACHE"));
+ Lex->create_info.seq_create_info->cache= (yyvsp[0].longlong_number);
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_cache;
+ }
+#line 30703 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 182: /* sequence_def: NOCACHE_SYM */
+#line 2764 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.seq_create_info->used_fields &
+ seq_field_used_cache))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "CACHE"));
+ Lex->create_info.seq_create_info->cache= 0;
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_cache;
+ }
+#line 30715 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 183: /* sequence_def: CYCLE_SYM */
+#line 2772 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.seq_create_info->used_fields &
+ seq_field_used_cycle))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "CYCLE"));
+ Lex->create_info.seq_create_info->cycle= 1;
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_cycle;
+ }
+#line 30727 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 184: /* sequence_def: NOCYCLE_SYM */
+#line 2780 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.seq_create_info->used_fields &
+ seq_field_used_cycle))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "CYCLE"));
+ Lex->create_info.seq_create_info->cycle= 0;
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_cycle;
+ }
+#line 30739 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 185: /* sequence_def: RESTART_SYM */
+#line 2788 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sql_command != SQLCOM_ALTER_SEQUENCE))
+ {
+ thd->parse_error(ER_SYNTAX_ERROR, "RESTART");
+ MYSQL_YYABORT;
+ }
+ if (unlikely(Lex->create_info.seq_create_info->used_fields &
+ seq_field_used_restart))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "RESTART"));
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_restart;
+ }
+#line 30755 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 186: /* sequence_def: RESTART_SYM opt_with longlong_num */
+#line 2800 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sql_command != SQLCOM_ALTER_SEQUENCE))
+ {
+ thd->parse_error(ER_SYNTAX_ERROR, "RESTART");
+ MYSQL_YYABORT;
+ }
+ if (unlikely(Lex->create_info.seq_create_info->used_fields &
+ seq_field_used_restart))
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "RESTART"));
+ Lex->create_info.seq_create_info->restart= (yyvsp[0].longlong_number);
+ Lex->create_info.seq_create_info->used_fields|= seq_field_used_restart | seq_field_used_restart_value;
+ }
+#line 30772 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 187: /* force_lookahead: %empty */
+#line 2815 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 30778 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 188: /* force_lookahead: FORCE_LOOKAHEAD */
+#line 2815 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 30784 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 189: /* $@25: %empty */
+#line 2819 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->add_create_options_with_check((yyvsp[-1].object_ddl_options))))
+ MYSQL_YYABORT;
+ Lex->server_options.reset((yyvsp[0].lex_str));
+ }
+#line 30794 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 190: /* server_def: SERVER_SYM opt_if_not_exists ident_or_text $@25 FOREIGN DATA_SYM WRAPPER_SYM ident_or_text OPTIONS_SYM '(' server_options_list ')' */
+#line 2826 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->server_options.scheme= (yyvsp[-4].lex_str); }
+#line 30800 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 193: /* server_option: USER_SYM TEXT_STRING_sys */
+#line 2836 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS(Lex->server_options.username.str == 0);
+ Lex->server_options.username= (yyvsp[0].lex_str);
+ }
+#line 30809 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 194: /* server_option: HOST_SYM TEXT_STRING_sys */
+#line 2841 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS(Lex->server_options.host.str == 0);
+ Lex->server_options.host= (yyvsp[0].lex_str);
+ }
+#line 30818 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 195: /* server_option: DATABASE TEXT_STRING_sys */
+#line 2846 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS(Lex->server_options.db.str == 0);
+ Lex->server_options.db= (yyvsp[0].lex_str);
+ }
+#line 30827 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 196: /* server_option: OWNER_SYM TEXT_STRING_sys */
+#line 2851 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS(Lex->server_options.owner.str == 0);
+ Lex->server_options.owner= (yyvsp[0].lex_str);
+ }
+#line 30836 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 197: /* server_option: PASSWORD_SYM TEXT_STRING_sys */
+#line 2856 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS(Lex->server_options.password.str == 0);
+ Lex->server_options.password= (yyvsp[0].lex_str);
+ }
+#line 30845 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 198: /* server_option: SOCKET_SYM TEXT_STRING_sys */
+#line 2861 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS(Lex->server_options.socket.str == 0);
+ Lex->server_options.socket= (yyvsp[0].lex_str);
+ }
+#line 30854 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 199: /* server_option: PORT_SYM ulong_num */
+#line 2866 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->server_options.port= (yyvsp[0].ulong_num);
+ }
+#line 30862 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 200: /* $@26: %empty */
+#line 2873 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+
+ lex->stmt_definition_begin= (yyvsp[-2].simple_string);
+ if (unlikely(lex->add_create_options_with_check((yyvsp[-1].object_ddl_options))))
+ MYSQL_YYABORT;
+ if (unlikely(!(lex->event_parse_data=
+ Event_parse_data::new_instance(thd))))
+ MYSQL_YYABORT;
+ lex->event_parse_data->identifier= (yyvsp[0].spname);
+ lex->event_parse_data->on_completion=
+ Event_parse_data::ON_COMPLETION_DROP;
+
+ lex->sql_command= SQLCOM_CREATE_EVENT;
+ /* We need that for disallowing subqueries */
+ }
+#line 30883 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 201: /* event_tail: remember_name opt_if_not_exists sp_name $@26 ON SCHEDULE_SYM ev_schedule_time opt_ev_on_completion opt_ev_status opt_ev_comment DO_SYM ev_sql_stmt */
+#line 2894 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ sql_command is set here because some rules in ev_sql_stmt
+ can overwrite it
+ */
+ Lex->sql_command= SQLCOM_CREATE_EVENT;
+ }
+#line 30895 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 202: /* $@27: %empty */
+#line 2905 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->event_parse_data->item_expression= (yyvsp[-1].item);
+ Lex->event_parse_data->interval= (yyvsp[0].interval);
+ }
+#line 30904 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 204: /* ev_schedule_time: AT_SYM expr */
+#line 2912 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->event_parse_data->item_execute_at= (yyvsp[0].item);
+ }
+#line 30912 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 205: /* opt_ev_status: %empty */
+#line 2918 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 30918 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 206: /* opt_ev_status: ENABLE_SYM */
+#line 2920 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->event_parse_data->status= Event_parse_data::ENABLED;
+ Lex->event_parse_data->status_changed= true;
+ (yyval.num)= 1;
+ }
+#line 30928 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 207: /* opt_ev_status: DISABLE_SYM ON SLAVE */
+#line 2926 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->event_parse_data->status= Event_parse_data::SLAVESIDE_DISABLED;
+ Lex->event_parse_data->status_changed= true;
+ (yyval.num)= 1;
+ }
+#line 30938 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 208: /* opt_ev_status: DISABLE_SYM */
+#line 2932 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->event_parse_data->status= Event_parse_data::DISABLED;
+ Lex->event_parse_data->status_changed= true;
+ (yyval.num)= 1;
+ }
+#line 30948 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 209: /* ev_starts: %empty */
+#line 2941 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *item= new (thd->mem_root) Item_func_now_local(thd, 0);
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ Lex->event_parse_data->item_starts= item;
+ }
+#line 30959 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 210: /* ev_starts: STARTS_SYM expr */
+#line 2948 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->event_parse_data->item_starts= (yyvsp[0].item);
+ }
+#line 30967 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 212: /* ev_ends: ENDS_SYM expr */
+#line 2956 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->event_parse_data->item_ends= (yyvsp[0].item);
+ }
+#line 30975 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 213: /* opt_ev_on_completion: %empty */
+#line 2962 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 30981 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 215: /* ev_on_completion: ON COMPLETION_SYM opt_not PRESERVE_SYM */
+#line 2968 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->event_parse_data->on_completion= (yyvsp[-1].num)
+ ? Event_parse_data::ON_COMPLETION_DROP
+ : Event_parse_data::ON_COMPLETION_PRESERVE;
+ (yyval.num)= 1;
+ }
+#line 30992 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 216: /* opt_ev_comment: %empty */
+#line 2977 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 30998 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 217: /* opt_ev_comment: COMMENT_SYM TEXT_STRING_sys */
+#line 2979 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->comment= Lex->event_parse_data->comment= (yyvsp[0].lex_str);
+ (yyval.num)= 1;
+ }
+#line 31007 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 218: /* $@28: %empty */
+#line 2986 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ Lex_input_stream *lip= YYLIP;
+
+ /*
+ This stops the following :
+ - CREATE EVENT ... DO CREATE EVENT ...;
+ - ALTER EVENT ... DO CREATE EVENT ...;
+ - CREATE EVENT ... DO ALTER EVENT DO ....;
+ - CREATE PROCEDURE ... BEGIN CREATE EVENT ... END|
+ This allows:
+ - CREATE EVENT ... DO DROP EVENT yyy;
+ - CREATE EVENT ... DO ALTER EVENT yyy;
+ (the nested ALTER EVENT can have anything but DO clause)
+ - ALTER EVENT ... DO ALTER EVENT yyy;
+ (the nested ALTER EVENT can have anything but DO clause)
+ - ALTER EVENT ... DO DROP EVENT yyy;
+ - CREATE PROCEDURE ... BEGIN ALTER EVENT ... END|
+ (the nested ALTER EVENT can have anything but DO clause)
+ - CREATE PROCEDURE ... BEGIN DROP EVENT ... END|
+ */
+ if (unlikely(lex->sphead))
+ my_yyabort_error((ER_EVENT_RECURSION_FORBIDDEN, MYF(0)));
+
+ if (unlikely(!lex->make_sp_head(thd,
+ lex->event_parse_data->identifier,
+ &sp_handler_procedure,
+ DEFAULT_AGGREGATE)))
+ MYSQL_YYABORT;
+
+ lex->sphead->set_body_start(thd, lip->get_cpp_ptr());
+ }
+#line 31044 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 219: /* ev_sql_stmt: $@28 sp_proc_stmt force_lookahead */
+#line 3019 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* return back to the original memory root ASAP */
+ if (Lex->sp_body_finalize_event(thd))
+ MYSQL_YYABORT;
+ }
+#line 31054 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 220: /* clear_privileges: %empty */
+#line 3028 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->users_list.empty();
+ lex->first_select_lex()->db= null_clex_str;
+ lex->account_options.reset();
+ }
+#line 31065 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 221: /* opt_aggregate: %empty */
+#line 3037 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.sp_aggregate_type)= NOT_AGGREGATE; }
+#line 31071 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 222: /* opt_aggregate: AGGREGATE_SYM */
+#line 3038 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.sp_aggregate_type)= GROUP_AGGREGATE; }
+#line 31077 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 223: /* sp_handler: FUNCTION_SYM */
+#line 3043 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.sp_handler)= &sp_handler_function; }
+#line 31083 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 224: /* sp_handler: PROCEDURE_SYM */
+#line 3044 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.sp_handler)= &sp_handler_procedure; }
+#line 31089 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 225: /* sp_handler: PACKAGE_ORACLE_SYM */
+#line 3045 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.sp_handler)= &sp_handler_package_spec; }
+#line 31095 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 226: /* sp_handler: PACKAGE_ORACLE_SYM BODY_ORACLE_SYM */
+#line 3046 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.sp_handler)= &sp_handler_package_body; }
+#line 31101 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 227: /* sp_name: ident '.' ident */
+#line 3052 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.spname)= Lex->make_sp_name(thd, &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 31110 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 228: /* sp_name: ident */
+#line 3057 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.spname)= Lex->make_sp_name(thd, &(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 31119 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 229: /* sp_a_chistics: %empty */
+#line 3064 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 31125 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 230: /* sp_a_chistics: sp_a_chistics sp_chistic */
+#line 3065 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 31131 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 231: /* sp_c_chistics: %empty */
+#line 3069 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 31137 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 232: /* sp_c_chistics: sp_c_chistics sp_c_chistic */
+#line 3070 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 31143 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 233: /* sp_chistic: COMMENT_SYM TEXT_STRING_sys */
+#line 3076 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sp_chistics.comment= (yyvsp[0].lex_str); }
+#line 31149 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 234: /* sp_chistic: LANGUAGE_SYM SQL_SYM */
+#line 3078 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* Just parse it, we only have one language for now. */ }
+#line 31155 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 235: /* sp_chistic: NO_SYM SQL_SYM */
+#line 3080 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sp_chistics.daccess= SP_NO_SQL; }
+#line 31161 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 236: /* sp_chistic: CONTAINS_SYM SQL_SYM */
+#line 3082 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sp_chistics.daccess= SP_CONTAINS_SQL; }
+#line 31167 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 237: /* sp_chistic: READS_SYM SQL_SYM DATA_SYM */
+#line 3084 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sp_chistics.daccess= SP_READS_SQL_DATA; }
+#line 31173 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 238: /* sp_chistic: MODIFIES_SYM SQL_SYM DATA_SYM */
+#line 3086 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sp_chistics.daccess= SP_MODIFIES_SQL_DATA; }
+#line 31179 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 239: /* sp_chistic: sp_suid */
+#line 3088 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sp_chistics.suid= (yyvsp[0].sp_suid); }
+#line 31185 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 240: /* sp_c_chistic: sp_chistic */
+#line 3093 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 31191 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 241: /* sp_c_chistic: opt_not DETERMINISTIC_SYM */
+#line 3094 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sp_chistics.detistic= ! (yyvsp[-1].num); }
+#line 31197 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 242: /* sp_suid: SQL_SYM SECURITY_SYM DEFINER_SYM */
+#line 3098 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.sp_suid)= SP_IS_SUID; }
+#line 31203 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 243: /* sp_suid: SQL_SYM SECURITY_SYM INVOKER_SYM */
+#line 3099 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.sp_suid)= SP_IS_NOT_SUID; }
+#line 31209 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 244: /* $@29: %empty */
+#line 3104 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->call_statement_start(thd, &(yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 31218 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 245: /* call: CALL_SYM ident $@29 opt_sp_cparam_list */
+#line 3109 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->check_cte_dependencies_and_resolve_references())
+ MYSQL_YYABORT;
+ }
+#line 31227 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 246: /* $@30: %empty */
+#line 3114 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->call_statement_start(thd, &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 31236 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 247: /* call: CALL_SYM ident '.' ident $@30 opt_sp_cparam_list */
+#line 3119 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->check_cte_dependencies_and_resolve_references())
+ MYSQL_YYABORT;
+ }
+#line 31245 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 248: /* $@31: %empty */
+#line 3124 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->call_statement_start(thd, &(yyvsp[-4].ident_sys), &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 31254 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 249: /* call: CALL_SYM ident '.' ident '.' ident $@31 opt_sp_cparam_list */
+#line 3129 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->check_cte_dependencies_and_resolve_references())
+ MYSQL_YYABORT;
+ }
+#line 31263 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 254: /* sp_cparams: sp_cparams ',' expr */
+#line 3148 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->value_list.push_back((yyvsp[0].item), thd->mem_root);
+ }
+#line 31271 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 255: /* sp_cparams: expr */
+#line 3152 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->value_list.push_back((yyvsp[0].item), thd->mem_root);
+ }
+#line 31279 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 256: /* sp_fdparam_list: %empty */
+#line 3160 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sphead->m_param_begin= YYLIP->get_cpp_tok_start();
+ Lex->sphead->m_param_end= Lex->sphead->m_param_begin;
+ }
+#line 31288 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 257: /* $@32: %empty */
+#line 3165 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sphead->m_param_begin= YYLIP->get_cpp_tok_start();
+ }
+#line 31296 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 258: /* sp_fdparam_list: $@32 sp_fdparams */
+#line 3169 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sphead->m_param_end= YYLIP->get_cpp_tok_start();
+ }
+#line 31304 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 261: /* sp_param_name: ident */
+#line 3181 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.spvar)= Lex->sp_param_init(&(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 31313 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 266: /* sp_parameter_type: IN_SYM */
+#line 3199 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.spvar_mode)= sp_variable::MODE_IN; }
+#line 31319 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 267: /* sp_parameter_type: OUT_SYM */
+#line 3200 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.spvar_mode)= sp_variable::MODE_OUT; }
+#line 31325 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 268: /* sp_parameter_type: INOUT_SYM */
+#line 3201 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.spvar_mode)= sp_variable::MODE_INOUT; }
+#line 31331 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 269: /* $@33: %empty */
+#line 3206 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sphead->m_param_begin= YYLIP->get_cpp_tok_start() + 1;
+ }
+#line 31339 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 270: /* sp_parenthesized_pdparam_list: '(' $@33 sp_pdparam_list ')' */
+#line 3211 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sphead->m_param_end= YYLIP->get_cpp_tok_start();
+ }
+#line 31347 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 272: /* sp_proc_stmts: %empty */
+#line 3221 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 31353 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 274: /* sp_proc_stmts1: sp_proc_stmt ';' */
+#line 3226 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 31359 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 276: /* optionally_qualified_column_ident: sp_decl_ident */
+#line 3233 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.qualified_column_ident)= new (thd->mem_root)
+ Qualified_column_ident(&(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 31369 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 277: /* optionally_qualified_column_ident: sp_decl_ident '.' ident */
+#line 3239 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.qualified_column_ident)= new (thd->mem_root)
+ Qualified_column_ident(&(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 31379 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 278: /* optionally_qualified_column_ident: sp_decl_ident '.' ident '.' ident */
+#line 3245 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.qualified_column_ident)= new (thd->mem_root)
+ Qualified_column_ident(thd, &(yyvsp[-4].ident_sys), &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 31389 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 279: /* row_field_definition: row_field_name field_type */
+#line 3255 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->set_attributes(thd, (yyvsp[0].Lex_field_type),
+ COLUMN_DEFINITION_ROUTINE_LOCAL);
+ }
+#line 31398 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 280: /* row_field_definition_list: row_field_definition */
+#line 3263 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.spvar_definition_list)= Row_definition_list::make(thd->mem_root, (yyvsp[0].spvar_definition))))
+ MYSQL_YYABORT;
+ }
+#line 31407 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 281: /* row_field_definition_list: row_field_definition_list ',' row_field_definition */
+#line 3268 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (((yyval.spvar_definition_list)= (yyvsp[-2].spvar_definition_list))->append_uniq(thd->mem_root, (yyvsp[0].spvar_definition)))
+ MYSQL_YYABORT;
+ }
+#line 31416 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 282: /* row_type_body: '(' row_field_definition_list ')' */
+#line 3275 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.spvar_definition_list)= (yyvsp[-1].spvar_definition_list); }
+#line 31422 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 283: /* sp_decl_idents_init_vars: sp_decl_idents */
+#line 3280 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sp_variable_declarations_init(thd, (yyvsp[0].num));
+ }
+#line 31430 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 284: /* $@34: %empty */
+#line 3288 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->set_attributes(thd, (yyvsp[0].Lex_field_type),
+ COLUMN_DEFINITION_ROUTINE_LOCAL);
+ }
+#line 31439 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 285: /* sp_decl_variable_list: sp_decl_idents_init_vars field_type $@34 sp_opt_default */
+#line 3293 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_variable_declarations_finalize(thd, (yyvsp[-3].num),
+ &Lex->last_field[0],
+ (yyvsp[0].item))))
+ MYSQL_YYABORT;
+ (yyval.spblock).init_using_vars((yyvsp[-3].num));
+ }
+#line 31451 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 286: /* sp_decl_variable_list: sp_decl_idents_init_vars ROW_SYM row_type_body sp_opt_default */
+#line 3303 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_variable_declarations_row_finalize(thd, (yyvsp[-3].num), (yyvsp[-1].spvar_definition_list), (yyvsp[0].item))))
+ MYSQL_YYABORT;
+ (yyval.spblock).init_using_vars((yyvsp[-3].num));
+ }
+#line 31461 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 288: /* $@35: %empty */
+#line 3313 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_handler_declaration_init(thd, (yyvsp[-2].num))))
+ MYSQL_YYABORT;
+ }
+#line 31470 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 289: /* sp_decl_handler: sp_handler_type HANDLER_SYM FOR_SYM $@35 sp_hcond_list sp_proc_stmt */
+#line 3318 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_handler_declaration_finalize(thd, (yyvsp[-5].num))))
+ MYSQL_YYABORT;
+ (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).curs= 0;
+ (yyval.spblock).hndlrs= 1;
+ }
+#line 31481 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 292: /* sp_cursor_stmt_lex: %empty */
+#line 3333 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(thd->lex->sphead);
+ if (unlikely(!((yyval.sp_cursor_stmt)= new (thd->mem_root)
+ sp_lex_cursor(thd, thd->lex))))
+ MYSQL_YYABORT;
+ }
+#line 31492 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 293: /* $@36: %empty */
+#line 3343 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(thd->free_list == NULL);
+ Lex->sphead->reset_lex(thd, (yyvsp[0].sp_cursor_stmt));
+ if (Lex->main_select_push(true))
+ MYSQL_YYABORT;
+ }
+#line 31503 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 294: /* sp_cursor_stmt: sp_cursor_stmt_lex $@36 select */
+#line 3350 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(Lex == (yyvsp[-2].sp_cursor_stmt));
+ Lex->pop_select(); //main select
+ if (unlikely((yyvsp[-2].sp_cursor_stmt)->stmt_finalize(thd)) ||
+ unlikely((yyvsp[-2].sp_cursor_stmt)->sphead->restore_lex(thd)))
+ MYSQL_YYABORT;
+ (yyval.sp_cursor_stmt)= (yyvsp[-2].sp_cursor_stmt);
+ }
+#line 31516 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 295: /* sp_handler_type: EXIT_MARIADB_SYM */
+#line 3361 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= sp_handler::EXIT; }
+#line 31522 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 296: /* sp_handler_type: CONTINUE_MARIADB_SYM */
+#line 3362 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= sp_handler::CONTINUE; }
+#line 31528 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 297: /* sp_handler_type: EXIT_ORACLE_SYM */
+#line 3363 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= sp_handler::EXIT; }
+#line 31534 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 298: /* sp_handler_type: CONTINUE_ORACLE_SYM */
+#line 3364 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= sp_handler::CONTINUE; }
+#line 31540 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 299: /* sp_hcond_list: sp_hcond_element */
+#line 3370 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 31546 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 300: /* sp_hcond_list: sp_hcond_list ',' sp_hcond_element */
+#line 3372 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)+= 1; }
+#line 31552 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 301: /* sp_hcond_element: sp_hcond */
+#line 3377 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ sp_head *sp= lex->sphead;
+ sp_pcontext *ctx= lex->spcont->parent_context();
+
+ if (unlikely(ctx->check_duplicate_handler((yyvsp[0].spcondvalue))))
+ my_yyabort_error((ER_SP_DUP_HANDLER, MYF(0)));
+
+ sp_instr_hpush_jump *i= (sp_instr_hpush_jump *)sp->last_instruction();
+ i->add_condition((yyvsp[0].spcondvalue));
+ }
+#line 31568 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 302: /* sp_cond: ulong_num */
+#line 3392 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* mysql errno */
+ if (unlikely((yyvsp[0].ulong_num) == 0))
+ my_yyabort_error((ER_WRONG_VALUE, MYF(0), "CONDITION", "0"));
+ (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value((yyvsp[0].ulong_num));
+ if (unlikely((yyval.spcondvalue) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 31580 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 304: /* sqlstate: SQLSTATE_SYM opt_value TEXT_STRING_literal */
+#line 3404 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* SQLSTATE */
+
+ /*
+ An error is triggered:
+ - if the specified string is not a valid SQLSTATE,
+ - or if it represents the completion condition -- it is not
+ allowed to SIGNAL, or declare a handler for the completion
+ condition.
+ */
+ if (unlikely(!is_sqlstate_valid(&(yyvsp[0].lex_str)) ||
+ is_sqlstate_completion((yyvsp[0].lex_str).str)))
+ my_yyabort_error((ER_SP_BAD_SQLSTATE, MYF(0), (yyvsp[0].lex_str).str));
+ (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value((yyvsp[0].lex_str).str);
+ if (unlikely((yyval.spcondvalue) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 31601 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 305: /* opt_value: %empty */
+#line 3423 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 31607 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 306: /* opt_value: VALUE_SYM */
+#line 3424 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 31613 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 307: /* sp_hcond: sp_cond */
+#line 3429 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.spcondvalue)= (yyvsp[0].spcondvalue);
+ }
+#line 31621 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 308: /* sp_hcond: ident */
+#line 3433 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.spcondvalue)= Lex->spcont->find_declared_or_predefined_condition(thd, &(yyvsp[0].ident_sys));
+ if (unlikely((yyval.spcondvalue) == NULL))
+ my_yyabort_error((ER_SP_COND_MISMATCH, MYF(0), (yyvsp[0].ident_sys).str));
+ }
+#line 31631 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 309: /* sp_hcond: SQLWARNING_SYM */
+#line 3439 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value(sp_condition_value::WARNING);
+ if (unlikely((yyval.spcondvalue) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 31641 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 310: /* sp_hcond: not FOUND_SYM */
+#line 3445 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value(sp_condition_value::NOT_FOUND);
+ if (unlikely((yyval.spcondvalue) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 31651 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 311: /* sp_hcond: SQLEXCEPTION_SYM */
+#line 3451 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value(sp_condition_value::EXCEPTION);
+ if (unlikely((yyval.spcondvalue) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 31661 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 312: /* sp_hcond: OTHERS_ORACLE_SYM */
+#line 3457 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.spcondvalue)= new (thd->mem_root) sp_condition_value(sp_condition_value::EXCEPTION);
+ if (unlikely((yyval.spcondvalue) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 31671 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 313: /* raise_stmt_oracle: RAISE_ORACLE_SYM opt_set_signal_information */
+#line 3467 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->add_resignal_statement(thd, NULL)))
+ MYSQL_YYABORT;
+ }
+#line 31680 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 314: /* raise_stmt_oracle: RAISE_ORACLE_SYM signal_value opt_set_signal_information */
+#line 3472 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->add_signal_statement(thd, (yyvsp[-1].spcondvalue))))
+ MYSQL_YYABORT;
+ }
+#line 31689 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 315: /* signal_stmt: SIGNAL_SYM signal_value opt_set_signal_information */
+#line 3480 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->add_signal_statement(thd, (yyvsp[-1].spcondvalue)))
+ MYSQL_YYABORT;
+ }
+#line 31698 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 316: /* signal_value: ident */
+#line 3488 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.spcondvalue)= Lex->stmt_signal_value((yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 31707 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 317: /* signal_value: sqlstate */
+#line 3493 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.spcondvalue)= (yyvsp[0].spcondvalue); }
+#line 31713 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 318: /* opt_signal_value: %empty */
+#line 3498 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.spcondvalue)= NULL; }
+#line 31719 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 319: /* opt_signal_value: signal_value */
+#line 3500 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.spcondvalue)= (yyvsp[0].spcondvalue); }
+#line 31725 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 320: /* opt_set_signal_information: %empty */
+#line 3505 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ thd->m_parser_state->m_yacc.m_set_signal_info.clear();
+ }
+#line 31733 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 322: /* signal_information_item_list: signal_condition_information_item_name '=' signal_allowed_expr */
+#line 3513 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Set_signal_information *info;
+ info= &thd->m_parser_state->m_yacc.m_set_signal_info;
+ int index= (int) (yyvsp[-2].diag_condition_item_name);
+ info->clear();
+ info->m_item[index]= (yyvsp[0].item);
+ }
+#line 31745 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 323: /* signal_information_item_list: signal_information_item_list ',' signal_condition_information_item_name '=' signal_allowed_expr */
+#line 3522 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Set_signal_information *info;
+ info= &thd->m_parser_state->m_yacc.m_set_signal_info;
+ int index= (int) (yyvsp[-2].diag_condition_item_name);
+ if (unlikely(info->m_item[index] != NULL))
+ my_yyabort_error((ER_DUP_SIGNAL_SET, MYF(0),
+ Diag_condition_item_names[index].str));
+ info->m_item[index]= (yyvsp[0].item);
+ }
+#line 31759 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 324: /* signal_allowed_expr: literal */
+#line 3538 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)= (yyvsp[0].item); }
+#line 31765 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 325: /* signal_allowed_expr: variable */
+#line 3540 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyvsp[0].item)->type() == Item::FUNC_ITEM)
+ {
+ Item_func *item= (Item_func*) (yyvsp[0].item);
+ if (unlikely(item->functype() == Item_func::SUSERVAR_FUNC))
+ {
+ /*
+ Don't allow the following syntax:
+ SIGNAL/RESIGNAL ...
+ SET <signal condition item name> = @foo := expr
+ */
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ }
+ (yyval.item)= (yyvsp[0].item);
+ }
+#line 31787 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 326: /* signal_allowed_expr: simple_ident */
+#line 3558 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)= (yyvsp[0].item); }
+#line 31793 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 327: /* signal_condition_information_item_name: CLASS_ORIGIN_SYM */
+#line 3564 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_CLASS_ORIGIN; }
+#line 31799 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 328: /* signal_condition_information_item_name: SUBCLASS_ORIGIN_SYM */
+#line 3566 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_SUBCLASS_ORIGIN; }
+#line 31805 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 329: /* signal_condition_information_item_name: CONSTRAINT_CATALOG_SYM */
+#line 3568 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_CATALOG; }
+#line 31811 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 330: /* signal_condition_information_item_name: CONSTRAINT_SCHEMA_SYM */
+#line 3570 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_SCHEMA; }
+#line 31817 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 331: /* signal_condition_information_item_name: CONSTRAINT_NAME_SYM */
+#line 3572 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_CONSTRAINT_NAME; }
+#line 31823 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 332: /* signal_condition_information_item_name: CATALOG_NAME_SYM */
+#line 3574 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_CATALOG_NAME; }
+#line 31829 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 333: /* signal_condition_information_item_name: SCHEMA_NAME_SYM */
+#line 3576 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_SCHEMA_NAME; }
+#line 31835 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 334: /* signal_condition_information_item_name: TABLE_NAME_SYM */
+#line 3578 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_TABLE_NAME; }
+#line 31841 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 335: /* signal_condition_information_item_name: COLUMN_NAME_SYM */
+#line 3580 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_COLUMN_NAME; }
+#line 31847 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 336: /* signal_condition_information_item_name: CURSOR_NAME_SYM */
+#line 3582 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_CURSOR_NAME; }
+#line 31853 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 337: /* signal_condition_information_item_name: MESSAGE_TEXT_SYM */
+#line 3584 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_MESSAGE_TEXT; }
+#line 31859 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 338: /* signal_condition_information_item_name: MYSQL_ERRNO_SYM */
+#line 3586 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_MYSQL_ERRNO; }
+#line 31865 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 339: /* signal_condition_information_item_name: ROW_NUMBER_SYM */
+#line 3588 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_condition_item_name)= DIAG_ROW_NUMBER; }
+#line 31871 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 340: /* resignal_stmt: RESIGNAL_SYM opt_signal_value opt_set_signal_information */
+#line 3593 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->add_resignal_statement(thd, (yyvsp[-1].spcondvalue))))
+ MYSQL_YYABORT;
+ }
+#line 31880 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 341: /* get_diagnostics: GET_SYM which_area DIAGNOSTICS_SYM diagnostics_information */
+#line 3601 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Diagnostics_information *info= (yyvsp[0].diag_info);
+
+ info->set_which_da((yyvsp[-2].diag_area));
+
+ Lex->sql_command= SQLCOM_GET_DIAGNOSTICS;
+ Lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_get_diagnostics(info);
+
+ if (unlikely(Lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 31896 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 342: /* which_area: %empty */
+#line 3616 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_area)= Diagnostics_information::CURRENT_AREA; }
+#line 31902 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 343: /* which_area: CURRENT_SYM */
+#line 3618 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.diag_area)= Diagnostics_information::CURRENT_AREA; }
+#line 31908 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 344: /* diagnostics_information: statement_information */
+#line 3623 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.diag_info)= new (thd->mem_root) Statement_information((yyvsp[0].stmt_info_list));
+ if (unlikely((yyval.diag_info) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 31918 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 345: /* diagnostics_information: CONDITION_SYM condition_number condition_information */
+#line 3629 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.diag_info)= new (thd->mem_root) Condition_information((yyvsp[-1].item), (yyvsp[0].cond_info_list));
+ if (unlikely((yyval.diag_info) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 31928 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 346: /* statement_information: statement_information_item */
+#line 3638 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.stmt_info_list)= new (thd->mem_root) List<Statement_information_item>;
+ if (unlikely((yyval.stmt_info_list) == NULL) ||
+ unlikely((yyval.stmt_info_list)->push_back((yyvsp[0].stmt_info_item), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 31939 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 347: /* statement_information: statement_information ',' statement_information_item */
+#line 3645 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[-2].stmt_info_list)->push_back((yyvsp[0].stmt_info_item), thd->mem_root)))
+ MYSQL_YYABORT;
+ (yyval.stmt_info_list)= (yyvsp[-2].stmt_info_list);
+ }
+#line 31949 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 348: /* statement_information_item: simple_target_specification '=' statement_information_item_name */
+#line 3654 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.stmt_info_item)= new (thd->mem_root) Statement_information_item((yyvsp[0].stmt_info_item_name), (yyvsp[-2].item));
+ if (unlikely((yyval.stmt_info_item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 31959 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 349: /* simple_target_specification: ident_cli */
+#line 3663 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= thd->lex->create_item_for_sp_var(&(yyvsp[0].ident_cli), NULL))))
+ MYSQL_YYABORT;
+ }
+#line 31968 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 350: /* simple_target_specification: '@' ident_or_text */
+#line 3668 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!(yyvsp[0].lex_str).length)
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ (yyval.item)= new (thd->mem_root) Item_func_get_user_var(thd, &(yyvsp[0].lex_str));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 31983 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 351: /* statement_information_item_name: NUMBER_MARIADB_SYM */
+#line 3682 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.stmt_info_item_name)= Statement_information_item::NUMBER; }
+#line 31989 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 352: /* statement_information_item_name: NUMBER_ORACLE_SYM */
+#line 3684 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.stmt_info_item_name)= Statement_information_item::NUMBER; }
+#line 31995 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 353: /* statement_information_item_name: ROW_COUNT_SYM */
+#line 3686 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.stmt_info_item_name)= Statement_information_item::ROW_COUNT; }
+#line 32001 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 354: /* condition_number: signal_allowed_expr */
+#line 3695 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)= (yyvsp[0].item); }
+#line 32007 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 355: /* condition_information: condition_information_item */
+#line 3700 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.cond_info_list)= new (thd->mem_root) List<Condition_information_item>;
+ if (unlikely((yyval.cond_info_list) == NULL) ||
+ unlikely((yyval.cond_info_list)->push_back((yyvsp[0].cond_info_item), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 32018 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 356: /* condition_information: condition_information ',' condition_information_item */
+#line 3707 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[-2].cond_info_list)->push_back((yyvsp[0].cond_info_item), thd->mem_root)))
+ MYSQL_YYABORT;
+ (yyval.cond_info_list)= (yyvsp[-2].cond_info_list);
+ }
+#line 32028 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 357: /* condition_information_item: simple_target_specification '=' condition_information_item_name */
+#line 3716 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.cond_info_item)= new (thd->mem_root) Condition_information_item((yyvsp[0].cond_info_item_name), (yyvsp[-2].item));
+ if (unlikely((yyval.cond_info_item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 32038 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 358: /* condition_information_item_name: CLASS_ORIGIN_SYM */
+#line 3725 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::CLASS_ORIGIN; }
+#line 32044 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 359: /* condition_information_item_name: SUBCLASS_ORIGIN_SYM */
+#line 3727 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::SUBCLASS_ORIGIN; }
+#line 32050 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 360: /* condition_information_item_name: CONSTRAINT_CATALOG_SYM */
+#line 3729 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_CATALOG; }
+#line 32056 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 361: /* condition_information_item_name: CONSTRAINT_SCHEMA_SYM */
+#line 3731 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_SCHEMA; }
+#line 32062 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 362: /* condition_information_item_name: CONSTRAINT_NAME_SYM */
+#line 3733 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_NAME; }
+#line 32068 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 363: /* condition_information_item_name: CATALOG_NAME_SYM */
+#line 3735 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::CATALOG_NAME; }
+#line 32074 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 364: /* condition_information_item_name: SCHEMA_NAME_SYM */
+#line 3737 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::SCHEMA_NAME; }
+#line 32080 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 365: /* condition_information_item_name: TABLE_NAME_SYM */
+#line 3739 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::TABLE_NAME; }
+#line 32086 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 366: /* condition_information_item_name: COLUMN_NAME_SYM */
+#line 3741 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::COLUMN_NAME; }
+#line 32092 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 367: /* condition_information_item_name: CURSOR_NAME_SYM */
+#line 3743 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::CURSOR_NAME; }
+#line 32098 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 368: /* condition_information_item_name: MESSAGE_TEXT_SYM */
+#line 3745 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::MESSAGE_TEXT; }
+#line 32104 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 369: /* condition_information_item_name: MYSQL_ERRNO_SYM */
+#line 3747 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::MYSQL_ERRNO; }
+#line 32110 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 370: /* condition_information_item_name: RETURNED_SQLSTATE_SYM */
+#line 3749 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::RETURNED_SQLSTATE; }
+#line 32116 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 371: /* condition_information_item_name: ROW_NUMBER_SYM */
+#line 3751 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.cond_info_item_name)= Condition_information_item::ROW_NUMBER; }
+#line 32122 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 373: /* sp_decl_ident: keyword_sp_decl */
+#line 3757 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyval.ident_sys).copy_ident_cli(thd, &(yyvsp[0].kwd))))
+ MYSQL_YYABORT;
+ }
+#line 32131 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 374: /* sp_decl_idents: sp_decl_ident */
+#line 3765 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* NOTE: field definition is filled in sp_decl section. */
+
+ LEX *lex= Lex;
+ sp_pcontext *spc= lex->spcont;
+
+ if (unlikely(spc->find_variable(&(yyvsp[0].ident_sys), TRUE)))
+ my_yyabort_error((ER_SP_DUP_VAR, MYF(0), (yyvsp[0].ident_sys).str));
+ spc->add_variable(thd, &(yyvsp[0].ident_sys));
+ (yyval.num)= 1;
+ }
+#line 32147 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 375: /* sp_decl_idents: sp_decl_idents ',' ident */
+#line 3777 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* NOTE: field definition is filled in sp_decl section. */
+
+ LEX *lex= Lex;
+ sp_pcontext *spc= lex->spcont;
+
+ if (unlikely(spc->find_variable(&(yyvsp[0].ident_sys), TRUE)))
+ my_yyabort_error((ER_SP_DUP_VAR, MYF(0), (yyvsp[0].ident_sys).str));
+ spc->add_variable(thd, &(yyvsp[0].ident_sys));
+ (yyval.num)= (yyvsp[-2].num) + 1;
+ }
+#line 32163 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 376: /* $@37: %empty */
+#line 3792 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->maybe_start_compound_statement(thd)))
+ MYSQL_YYABORT;
+ Lex->sphead->new_cont_backpatch(NULL);
+ }
+#line 32173 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 377: /* sp_proc_stmt_if: IF_SYM $@37 sp_if END IF_SYM */
+#line 3798 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sphead->do_cont_backpatch(); }
+#line 32179 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 378: /* $@38: %empty */
+#line 3802 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ Lex_input_stream *lip= YYLIP;
+
+ lex->sphead->reset_lex(thd);
+ /*
+ We should not push main select here, it will be done or not
+ done by the statement, we just provide only a new LEX for the
+ statement here as if it is start of parsing a new statement.
+ */
+ lex->sphead->m_tmp_query= lip->get_tok_start();
+ }
+#line 32196 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 379: /* sp_proc_stmt_statement: $@38 sp_statement */
+#line 3815 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->sp_proc_stmt_statement_finalize(thd, yychar == YYEMPTY) ||
+ Lex->sphead->restore_lex(thd))
+ MYSQL_YYABORT;
+ }
+#line 32206 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 382: /* $@39: %empty */
+#line 3830 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ sp_head *sp= (yyvsp[0].expr_lex)->sphead;
+ if (unlikely(sp->m_handler->add_instr_freturn(thd, sp, (yyvsp[0].expr_lex)->spcont,
+ (yyvsp[0].expr_lex)->get_item(), (yyvsp[0].expr_lex))))
+ MYSQL_YYABORT;
+ }
+#line 32217 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 383: /* sp_proc_stmt_return: RETURN_ALLMODES_SYM expr_lex $@39 */
+#line 3836 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* See the comment 'COMMENT_FOR_DESCTRUCTOR' near %destructor */ }
+#line 32223 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 384: /* sp_proc_stmt_return: RETURN_ORACLE_SYM */
+#line 3838 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ sp_head *sp= lex->sphead;
+ if (unlikely(sp->m_handler->add_instr_preturn(thd, sp,
+ lex->spcont)))
+ MYSQL_YYABORT;
+ }
+#line 32235 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 385: /* sp_proc_stmt_exit_oracle: EXIT_ORACLE_SYM */
+#line 3849 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_exit_statement(thd, NULL)))
+ MYSQL_YYABORT;
+ }
+#line 32244 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 386: /* sp_proc_stmt_exit_oracle: EXIT_ORACLE_SYM label_ident */
+#line 3854 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_exit_statement(thd, &(yyvsp[0].ident_sys), NULL)))
+ MYSQL_YYABORT;
+ }
+#line 32253 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 387: /* $@40: %empty */
+#line 3859 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[0].expr_lex)->sp_exit_statement(thd, (yyvsp[0].expr_lex)->get_item())))
+ MYSQL_YYABORT;
+ }
+#line 32262 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 388: /* sp_proc_stmt_exit_oracle: EXIT_ORACLE_SYM WHEN_SYM expr_lex $@40 */
+#line 3863 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* See the comment 'COMMENT_FOR_DESCTRUCTOR' near %destructor */ }
+#line 32268 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 389: /* $@41: %empty */
+#line 3865 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[0].expr_lex)->sp_exit_statement(thd, &(yyvsp[-2].ident_sys), (yyvsp[0].expr_lex)->get_item())))
+ MYSQL_YYABORT;
+ }
+#line 32277 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 390: /* sp_proc_stmt_exit_oracle: EXIT_ORACLE_SYM label_ident WHEN_SYM expr_lex $@41 */
+#line 3869 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* See the comment 'COMMENT_FOR_DESCTRUCTOR' near %destructor */ }
+#line 32283 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 391: /* sp_proc_stmt_continue_oracle: CONTINUE_ORACLE_SYM */
+#line 3874 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_continue_statement(thd)))
+ MYSQL_YYABORT;
+ }
+#line 32292 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 392: /* sp_proc_stmt_continue_oracle: CONTINUE_ORACLE_SYM label_ident */
+#line 3879 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_continue_statement(thd, &(yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 32301 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 393: /* $@42: %empty */
+#line 3884 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[0].expr_lex)->sp_continue_when_statement(thd)))
+ MYSQL_YYABORT;
+ }
+#line 32310 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 394: /* sp_proc_stmt_continue_oracle: CONTINUE_ORACLE_SYM WHEN_SYM expr_lex $@42 */
+#line 3888 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* See the comment 'COMMENT_FOR_DESCTRUCTOR' near %destructor */ }
+#line 32316 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 395: /* $@43: %empty */
+#line 3890 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[0].expr_lex)->sp_continue_when_statement(thd, &(yyvsp[-2].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 32325 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 396: /* sp_proc_stmt_continue_oracle: CONTINUE_ORACLE_SYM label_ident WHEN_SYM expr_lex $@43 */
+#line 3894 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* See the comment 'COMMENT_FOR_DESCTRUCTOR' near %destructor */ }
+#line 32331 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 397: /* sp_proc_stmt_leave: LEAVE_SYM label_ident */
+#line 3900 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_leave_statement(thd, &(yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 32340 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 398: /* sp_proc_stmt_iterate: ITERATE_SYM label_ident */
+#line 3908 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_iterate_statement(thd, &(yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 32349 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 399: /* sp_proc_stmt_goto_oracle: GOTO_ORACLE_SYM label_ident */
+#line 3916 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_goto_statement(thd, &(yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 32358 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 400: /* @44: %empty */
+#line 3924 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(Lex->sphead);
+ if (unlikely(!((yyval.expr_lex)= new (thd->mem_root)
+ sp_expr_lex(thd, thd->lex))))
+ MYSQL_YYABORT;
+ Lex->sphead->reset_lex(thd, (yyval.expr_lex));
+ if (Lex->main_select_push(true))
+ MYSQL_YYABORT;
+ }
+#line 32372 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 401: /* expr_lex: @44 expr */
+#line 3934 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.expr_lex)= (yyvsp[-1].expr_lex);
+ (yyval.expr_lex)->set_item((yyvsp[0].item));
+ Lex->pop_select(); //min select
+ if (Lex->check_cte_dependencies_and_resolve_references())
+ MYSQL_YYABORT;
+ if ((yyval.expr_lex)->sphead->restore_lex(thd))
+ MYSQL_YYABORT;
+ }
+#line 32386 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 402: /* assignment_source_lex: %empty */
+#line 3947 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(Lex->sphead);
+ if (unlikely(!((yyval.assignment_lex)= new (thd->mem_root)
+ sp_assignment_lex(thd, thd->lex))))
+ MYSQL_YYABORT;
+ }
+#line 32397 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 403: /* $@45: %empty */
+#line 3957 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(thd->free_list == NULL);
+ Lex->sphead->reset_lex(thd, (yyvsp[0].assignment_lex));
+ if (Lex->main_select_push(true))
+ MYSQL_YYABORT;
+ }
+#line 32408 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 404: /* assignment_source_expr: assignment_source_lex $@45 expr */
+#line 3964 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT((yyvsp[-2].assignment_lex) == thd->lex);
+ (yyval.assignment_lex)= (yyvsp[-2].assignment_lex);
+ (yyval.assignment_lex)->set_item_and_free_list((yyvsp[0].item), thd->free_list);
+ thd->free_list= NULL;
+ Lex->pop_select(); //min select
+ if ((yyval.assignment_lex)->sphead->restore_lex(thd))
+ MYSQL_YYABORT;
+ }
+#line 32422 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 405: /* $@46: %empty */
+#line 3977 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sphead->reset_lex(thd, (yyvsp[0].assignment_lex));
+ if (Lex->main_select_push(true))
+ MYSQL_YYABORT;
+ Lex->current_select->parsing_place= FOR_LOOP_BOUND;
+ }
+#line 32433 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 406: /* for_loop_bound_expr: assignment_source_lex $@46 expr */
+#line 3984 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT((yyvsp[-2].assignment_lex) == thd->lex);
+ (yyval.assignment_lex)= (yyvsp[-2].assignment_lex);
+ (yyval.assignment_lex)->set_item_and_free_list((yyvsp[0].item), NULL);
+ Lex->pop_select(); //main select
+ if (unlikely((yyval.assignment_lex)->sphead->restore_lex(thd)))
+ MYSQL_YYABORT;
+ Lex->current_select->parsing_place= NO_MATTER;
+ }
+#line 32447 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 407: /* cursor_actual_parameters: assignment_source_expr */
+#line 3997 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.sp_assignment_lex_list)= new (thd->mem_root) List<sp_assignment_lex>)))
+ MYSQL_YYABORT;
+ (yyval.sp_assignment_lex_list)->push_back((yyvsp[0].assignment_lex), thd->mem_root);
+ }
+#line 32457 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 408: /* cursor_actual_parameters: cursor_actual_parameters ',' assignment_source_expr */
+#line 4003 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.sp_assignment_lex_list)= (yyvsp[-2].sp_assignment_lex_list);
+ (yyval.sp_assignment_lex_list)->push_back((yyvsp[0].assignment_lex), thd->mem_root);
+ }
+#line 32466 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 409: /* opt_parenthesized_cursor_actual_parameters: %empty */
+#line 4010 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.sp_assignment_lex_list)= NULL; }
+#line 32472 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 410: /* opt_parenthesized_cursor_actual_parameters: '(' cursor_actual_parameters ')' */
+#line 4011 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.sp_assignment_lex_list)= (yyvsp[-1].sp_assignment_lex_list); }
+#line 32478 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 414: /* sp_proc_stmt_open: OPEN_SYM ident opt_parenthesized_cursor_actual_parameters */
+#line 4022 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_open_cursor(thd, &(yyvsp[-1].ident_sys), (yyvsp[0].sp_assignment_lex_list))))
+ MYSQL_YYABORT;
+ }
+#line 32487 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 415: /* sp_proc_stmt_fetch_head: FETCH_SYM ident INTO */
+#line 4030 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_add_cfetch(thd, &(yyvsp[-1].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 32496 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 416: /* sp_proc_stmt_fetch_head: FETCH_SYM FROM ident INTO */
+#line 4035 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_add_cfetch(thd, &(yyvsp[-1].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 32505 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 417: /* sp_proc_stmt_fetch_head: FETCH_SYM NEXT_SYM FROM ident INTO */
+#line 4040 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_add_cfetch(thd, &(yyvsp[-1].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 32514 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 418: /* sp_proc_stmt_fetch: sp_proc_stmt_fetch_head sp_fetch_list */
+#line 4047 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 32520 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 419: /* sp_proc_stmt_fetch: FETCH_SYM GROUP_SYM NEXT_SYM ROW_SYM */
+#line 4049 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_add_agg_cfetch()))
+ MYSQL_YYABORT;
+ }
+#line 32529 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 420: /* sp_proc_stmt_close: CLOSE_SYM ident */
+#line 4057 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ sp_head *sp= lex->sphead;
+ uint offset;
+ sp_instr_cclose *i;
+
+ if (unlikely(!lex->spcont->find_cursor(&(yyvsp[0].ident_sys), &offset, false)))
+ my_yyabort_error((ER_SP_CURSOR_MISMATCH, MYF(0), (yyvsp[0].ident_sys).str));
+ i= new (thd->mem_root)
+ sp_instr_cclose(sp->instructions(), lex->spcont, offset);
+ if (unlikely(i == NULL) ||
+ unlikely(sp->add_instr(i)))
+ MYSQL_YYABORT;
+ }
+#line 32548 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 421: /* sp_fetch_list: ident */
+#line 4075 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ sp_head *sp= lex->sphead;
+ sp_pcontext *spc= lex->spcont;
+ sp_variable *spv= likely(spc != NULL)
+ ? spc->find_variable(&(yyvsp[0].ident_sys), false)
+ : NULL;
+
+ if (unlikely(!spv))
+ my_yyabort_error((ER_SP_UNDECLARED_VAR, MYF(0), (yyvsp[0].ident_sys).str));
+
+ /* An SP local variable */
+ sp_instr_cfetch *i= (sp_instr_cfetch *)sp->last_instruction();
+ i->add_to_varlist(spv);
+ }
+#line 32568 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 422: /* sp_fetch_list: sp_fetch_list ',' ident */
+#line 4091 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ sp_head *sp= lex->sphead;
+ sp_pcontext *spc= lex->spcont;
+ sp_variable *spv= likely(spc != NULL)
+ ? spc->find_variable(&(yyvsp[0].ident_sys), false)
+ : NULL;
+
+ if (unlikely(!spv))
+ my_yyabort_error((ER_SP_UNDECLARED_VAR, MYF(0), (yyvsp[0].ident_sys).str));
+
+ /* An SP local variable */
+ sp_instr_cfetch *i= (sp_instr_cfetch *)sp->last_instruction();
+ i->add_to_varlist(spv);
+ }
+#line 32588 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 423: /* $@47: %empty */
+#line 4110 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[-1].expr_lex)->sp_if_expr(thd)))
+ MYSQL_YYABORT;
+ }
+#line 32597 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 424: /* $@48: %empty */
+#line 4115 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[-3].expr_lex)->sp_if_after_statements(thd)))
+ MYSQL_YYABORT;
+ }
+#line 32606 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 425: /* sp_if: expr_lex THEN_SYM $@47 sp_if_then_statements $@48 sp_elseifs */
+#line 4120 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+
+ lex->sphead->backpatch(lex->spcont->pop_label());
+ }
+#line 32616 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 430: /* $@49: %empty */
+#line 4136 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->maybe_start_compound_statement(thd)))
+ MYSQL_YYABORT;
+
+ /**
+ An example of the CASE statement in use is
+ <pre>
+ CREATE PROCEDURE proc_19194_simple(i int)
+ BEGIN
+ DECLARE str CHAR(10);
+
+ CASE i
+ WHEN 1 THEN SET str="1";
+ WHEN 2 THEN SET str="2";
+ WHEN 3 THEN SET str="3";
+ ELSE SET str="unknown";
+ END CASE;
+
+ SELECT str;
+ END
+ </pre>
+ The actions are used to generate the following code:
+ <pre>
+ SHOW PROCEDURE CODE proc_19194_simple;
+ Pos Instruction
+ 0 set str@1 NULL
+ 1 set_case_expr (12) 0 i@0
+ 2 jump_if_not 5(12) (case_expr@0 = 1)
+ 3 set str@1 _latin1'1'
+ 4 jump 12
+ 5 jump_if_not 8(12) (case_expr@0 = 2)
+ 6 set str@1 _latin1'2'
+ 7 jump 12
+ 8 jump_if_not 11(12) (case_expr@0 = 3)
+ 9 set str@1 _latin1'3'
+ 10 jump 12
+ 11 set str@1 _latin1'unknown'
+ 12 stmt 0 "SELECT str"
+ </pre>
+ */
+
+ Lex->sphead->new_cont_backpatch(NULL);
+
+ /*
+ BACKPATCH: Creating target label for the jump to after END CASE
+ (instruction 12 in the example)
+ */
+ Lex->spcont->push_label(thd, &empty_clex_str, Lex->sphead->instructions());
+ }
+#line 32670 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 431: /* case_stmt_specification: CASE_SYM $@49 case_stmt_body else_clause_opt END CASE_SYM */
+#line 4189 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ BACKPATCH: Resolving forward jump from
+ "case_stmt_action_then" to after END CASE
+ (jump from instruction 4 to 12, 7 to 12 ... in the example)
+ */
+ Lex->sphead->backpatch(Lex->spcont->pop_label());
+
+ if ((yyvsp[-3].num))
+ Lex->spcont->pop_case_expr_id();
+
+ Lex->sphead->do_cont_backpatch();
+ }
+#line 32688 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 432: /* $@50: %empty */
+#line 4206 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[0].expr_lex)->case_stmt_action_expr()))
+ MYSQL_YYABORT;
+ }
+#line 32697 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 433: /* case_stmt_body: expr_lex $@50 simple_when_clause_list */
+#line 4211 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 32703 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 434: /* case_stmt_body: searched_when_clause_list */
+#line 4213 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 32709 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 439: /* $@51: %empty */
+#line 4228 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* Simple case: <caseval> = <whenval> */
+ if (unlikely((yyvsp[0].expr_lex)->case_stmt_action_when(true)))
+ MYSQL_YYABORT;
+ }
+#line 32719 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 440: /* simple_when_clause: WHEN_SYM expr_lex $@51 THEN_SYM sp_case_then_statements */
+#line 4235 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->case_stmt_action_then()))
+ MYSQL_YYABORT;
+ }
+#line 32728 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 441: /* $@52: %empty */
+#line 4243 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[0].expr_lex)->case_stmt_action_when(false)))
+ MYSQL_YYABORT;
+ }
+#line 32737 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 442: /* searched_when_clause: WHEN_SYM expr_lex $@52 THEN_SYM sp_case_then_statements */
+#line 4249 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->case_stmt_action_then()))
+ MYSQL_YYABORT;
+ }
+#line 32746 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 443: /* else_clause_opt: %empty */
+#line 4257 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ sp_head *sp= lex->sphead;
+ uint ip= sp->instructions();
+ sp_instr_error *i= new (thd->mem_root)
+ sp_instr_error(ip, lex->spcont, ER_SP_CASE_NOT_FOUND);
+ if (unlikely(i == NULL) ||
+ unlikely(sp->add_instr(i)))
+ MYSQL_YYABORT;
+ }
+#line 32761 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 445: /* sp_opt_label: %empty */
+#line 4271 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= null_clex_str; }
+#line 32767 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 446: /* sp_opt_label: label_ident */
+#line 4272 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= (yyvsp[0].ident_sys); }
+#line 32773 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 447: /* opt_sp_for_loop_direction: %empty */
+#line 4277 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 32779 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 448: /* opt_sp_for_loop_direction: REVERSE_SYM */
+#line 4278 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= -1; }
+#line 32785 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 449: /* sp_for_loop_index_and_bounds: ident_for_loop_index sp_for_loop_bounds */
+#line 4283 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_for_loop_declarations(thd, &(yyval.for_loop), &(yyvsp[-1].ident_sys), (yyvsp[0].for_loop_bounds))))
+ MYSQL_YYABORT;
+ }
+#line 32794 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 450: /* sp_for_loop_bounds: IN_SYM opt_sp_for_loop_direction for_loop_bound_expr DOT_DOT_SYM for_loop_bound_expr */
+#line 4292 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.for_loop_bounds)= Lex_for_loop_bounds_intrange((yyvsp[-3].num), (yyvsp[-2].assignment_lex), (yyvsp[0].assignment_lex));
+ }
+#line 32802 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 451: /* sp_for_loop_bounds: IN_SYM opt_sp_for_loop_direction for_loop_bound_expr */
+#line 4296 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.for_loop_bounds).m_direction= (yyvsp[-1].num);
+ (yyval.for_loop_bounds).m_index= (yyvsp[0].assignment_lex);
+ (yyval.for_loop_bounds).m_target_bound= NULL;
+ (yyval.for_loop_bounds).m_implicit_cursor= false;
+ }
+#line 32813 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 452: /* sp_for_loop_bounds: IN_SYM opt_sp_for_loop_direction '(' sp_cursor_stmt ')' */
+#line 4303 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_for_loop_implicit_cursor_statement(thd, &(yyval.for_loop_bounds),
+ (yyvsp[-1].sp_cursor_stmt))))
+ MYSQL_YYABORT;
+ }
+#line 32823 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 453: /* loop_body: sp_proc_stmts1 END LOOP_SYM */
+#line 4312 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ uint ip= lex->sphead->instructions();
+ sp_label *lab= lex->spcont->last_label(); /* Jumping back */
+ sp_instr_jump *i= new (thd->mem_root)
+ sp_instr_jump(ip, lex->spcont, lab->ip);
+ if (unlikely(i == NULL) ||
+ unlikely(lex->sphead->add_instr(i)))
+ MYSQL_YYABORT;
+ }
+#line 32838 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 454: /* repeat_body: sp_proc_stmts1 UNTIL_SYM expr_lex END REPEAT_SYM */
+#line 4326 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyvsp[-2].expr_lex)->sp_repeat_loop_finalize(thd))
+ MYSQL_YYABORT;
+ }
+#line 32847 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 455: /* pop_sp_loop_label: sp_opt_label */
+#line 4334 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_pop_loop_label(thd, &(yyvsp[0].lex_str))))
+ MYSQL_YYABORT;
+ }
+#line 32856 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 456: /* $@53: %empty */
+#line 4342 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_push_loop_label(thd, &(yyvsp[-1].lex_str))))
+ MYSQL_YYABORT;
+ }
+#line 32865 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 457: /* sp_labeled_control: sp_control_label LOOP_SYM $@53 loop_body pop_sp_loop_label */
+#line 4347 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 32871 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 458: /* $@54: %empty */
+#line 4349 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_push_loop_label(thd, &(yyvsp[-1].lex_str))))
+ MYSQL_YYABORT;
+ }
+#line 32880 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 459: /* sp_labeled_control: sp_control_label WHILE_SYM $@54 while_body pop_sp_loop_label */
+#line 4354 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 32886 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 460: /* $@55: %empty */
+#line 4356 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ // See "The FOR LOOP statement" comments in sql_lex.cc
+ Lex->sp_block_init(thd); // The outer DECLARE..BEGIN..END block
+ }
+#line 32895 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 461: /* $@56: %empty */
+#line 4361 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_push_loop_label(thd, &(yyvsp[-3].lex_str)))) // The inner WHILE block
+ MYSQL_YYABORT;
+ if (unlikely(Lex->sp_for_loop_condition_test(thd, (yyvsp[0].for_loop))))
+ MYSQL_YYABORT;
+ }
+#line 32906 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 462: /* $@57: %empty */
+#line 4368 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_for_loop_finalize(thd, (yyvsp[-2].for_loop))))
+ MYSQL_YYABORT;
+ }
+#line 32915 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 463: /* sp_labeled_control: sp_control_label FOR_SYM $@55 sp_for_loop_index_and_bounds $@56 for_loop_statements $@57 pop_sp_loop_label */
+#line 4373 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_for_loop_outer_block_finalize(thd, (yyvsp[-4].for_loop))))
+ MYSQL_YYABORT;
+ }
+#line 32924 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 464: /* $@58: %empty */
+#line 4378 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_push_loop_label(thd, &(yyvsp[-1].lex_str))))
+ MYSQL_YYABORT;
+ }
+#line 32933 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 465: /* sp_labeled_control: sp_control_label REPEAT_SYM $@58 repeat_body pop_sp_loop_label */
+#line 4383 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 32939 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 466: /* $@59: %empty */
+#line 4388 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_push_loop_empty_label(thd)))
+ MYSQL_YYABORT;
+ }
+#line 32948 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 467: /* sp_unlabeled_control: LOOP_SYM $@59 loop_body */
+#line 4393 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sp_pop_loop_empty_label(thd);
+ }
+#line 32956 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 468: /* $@60: %empty */
+#line 4397 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_push_loop_empty_label(thd)))
+ MYSQL_YYABORT;
+ }
+#line 32965 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 469: /* sp_unlabeled_control: WHILE_SYM $@60 while_body */
+#line 4402 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sp_pop_loop_empty_label(thd);
+ }
+#line 32973 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 470: /* $@61: %empty */
+#line 4406 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ // See "The FOR LOOP statement" comments in sql_lex.cc
+ if (unlikely(Lex->maybe_start_compound_statement(thd)))
+ MYSQL_YYABORT;
+ Lex->sp_block_init(thd); // The outer DECLARE..BEGIN..END block
+ }
+#line 32984 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 471: /* $@62: %empty */
+#line 4413 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_push_loop_empty_label(thd))) // The inner WHILE block
+ MYSQL_YYABORT;
+ if (unlikely(Lex->sp_for_loop_condition_test(thd, (yyvsp[0].for_loop))))
+ MYSQL_YYABORT;
+ }
+#line 32995 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 472: /* sp_unlabeled_control: FOR_SYM $@61 sp_for_loop_index_and_bounds $@62 for_loop_statements */
+#line 4420 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_for_loop_finalize(thd, (yyvsp[-2].for_loop))))
+ MYSQL_YYABORT;
+ Lex->sp_pop_loop_empty_label(thd); // The inner WHILE block
+ if (unlikely(Lex->sp_for_loop_outer_block_finalize(thd, (yyvsp[-2].for_loop))))
+ MYSQL_YYABORT;
+ }
+#line 33007 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 473: /* $@63: %empty */
+#line 4428 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_push_loop_empty_label(thd)))
+ MYSQL_YYABORT;
+ }
+#line 33016 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 474: /* sp_unlabeled_control: REPEAT_SYM $@63 repeat_body */
+#line 4433 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sp_pop_loop_empty_label(thd);
+ }
+#line 33024 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 475: /* trg_action_time: BEFORE_SYM */
+#line 4440 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->trg_chistics.action_time= TRG_ACTION_BEFORE; }
+#line 33030 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 476: /* trg_action_time: AFTER_SYM */
+#line 4442 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->trg_chistics.action_time= TRG_ACTION_AFTER; }
+#line 33036 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 477: /* trg_event: INSERT */
+#line 4447 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->trg_chistics.event= TRG_EVENT_INSERT; }
+#line 33042 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 478: /* trg_event: UPDATE_SYM */
+#line 4449 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->trg_chistics.event= TRG_EVENT_UPDATE; }
+#line 33048 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 479: /* trg_event: DELETE_SYM */
+#line 4451 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->trg_chistics.event= TRG_EVENT_DELETE; }
+#line 33054 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 480: /* $@64: %empty */
+#line 4456 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->create_info.option_list= NULL; }
+#line 33060 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 481: /* create_body: create_field_list_parens $@64 opt_create_table_options opt_create_partitioning opt_create_select */
+#line 4457 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33066 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 482: /* create_body: opt_create_table_options opt_create_partitioning opt_create_select */
+#line 4458 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33072 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 483: /* create_body: create_like */
+#line 4460 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+
+ Lex->create_info.add(DDL_options_st::OPT_LIKE);
+ TABLE_LIST *src_table= Lex->first_select_lex()->
+ add_table_to_list(thd, (yyvsp[0].table), NULL, 0, TL_READ, MDL_SHARED_READ);
+ if (unlikely(! src_table))
+ MYSQL_YYABORT;
+ /* CREATE TABLE ... LIKE is not allowed for views. */
+ src_table->required_type= TABLE_TYPE_NORMAL;
+ }
+#line 33087 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 484: /* create_like: LIKE table_ident */
+#line 4473 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table)= (yyvsp[0].table); }
+#line 33093 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 485: /* create_like: LEFT_PAREN_LIKE LIKE table_ident ')' */
+#line 4474 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table)= (yyvsp[-1].table); }
+#line 33099 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 486: /* opt_create_select: %empty */
+#line 4478 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33105 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 487: /* opt_create_select: opt_duplicate opt_as create_select_query_expression opt_versioning_option */
+#line 4481 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.add(DDL_options_st::OPT_CREATE_SELECT);
+ if (Lex->check_cte_dependencies_and_resolve_references())
+ MYSQL_YYABORT;
+ }
+#line 33115 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 488: /* create_select_query_expression: query_expression */
+#line 4490 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->parsed_insert_select((yyvsp[0].select_lex_unit)->first_select()))
+ MYSQL_YYABORT;
+ }
+#line 33124 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 489: /* create_select_query_expression: LEFT_PAREN_WITH with_clause query_expression_no_with_clause ')' */
+#line 4495 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX *first_select= (yyvsp[-1].select_lex_unit)->first_select();
+ (yyvsp[-1].select_lex_unit)->set_with_clause((yyvsp[-2].with_clause));
+ (yyvsp[-2].with_clause)->attach_to(first_select);
+ if (Lex->parsed_insert_select(first_select))
+ MYSQL_YYABORT;
+ }
+#line 33136 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 490: /* opt_create_partitioning: opt_partitioning */
+#line 4506 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ Remove all tables used in PARTITION clause from the global table
+ list. Partitioning with subqueries is not allowed anyway.
+ */
+ TABLE_LIST *last_non_sel_table= Lex->create_last_non_select_table;
+ last_non_sel_table->next_global= 0;
+ Lex->query_tables_last= &last_non_sel_table->next_global;
+ }
+#line 33150 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 491: /* opt_partitioning: %empty */
+#line 4542 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33156 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 493: /* $@65: %empty */
+#line 4548 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->part_info= new (thd->mem_root) partition_info();
+ if (unlikely(!lex->part_info))
+ MYSQL_YYABORT;
+ if (lex->sql_command == SQLCOM_ALTER_TABLE)
+ {
+ lex->alter_info.partition_flags|= ALTER_PARTITION_INFO;
+ }
+ }
+#line 33171 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 495: /* have_partitioning: %empty */
+#line 4563 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+#ifdef WITH_PARTITION_STORAGE_ENGINE
+ LEX_CSTRING partition_name={STRING_WITH_LEN("partition")};
+ if (unlikely(!plugin_is_ready(&partition_name, MYSQL_STORAGE_ENGINE_PLUGIN)))
+ my_yyabort_error((ER_OPTION_PREVENTS_STATEMENT, MYF(0),
+ "--skip-partition"));
+#else
+ my_yyabort_error((ER_FEATURE_DISABLED, MYF(0), "partitioning",
+ "--with-plugin-partition"));
+#endif
+ }
+#line 33187 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 496: /* $@66: %empty */
+#line 4578 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!Lex->part_info))
+ {
+ thd->parse_error(ER_PARTITION_ENTRY_ERROR);
+ MYSQL_YYABORT;
+ }
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ /*
+ We enter here when opening the frm file to translate
+ partition info string into part_info data structure.
+ */
+ }
+#line 33205 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 497: /* partition_entry: PARTITION_SYM $@66 partition */
+#line 4592 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 33213 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 498: /* $@67: %empty */
+#line 4599 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->safe_to_cache_query= 1; }
+#line 33219 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 500: /* part_type_def: opt_linear KEY_SYM opt_key_algo '(' part_field_list ')' */
+#line 4605 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ part_info->list_of_part_fields= TRUE;
+ part_info->column_list= FALSE;
+ part_info->part_type= HASH_PARTITION;
+ }
+#line 33230 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 501: /* $@68: %empty */
+#line 4612 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->part_type= HASH_PARTITION; }
+#line 33236 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 502: /* part_type_def: opt_linear HASH_SYM $@68 part_func */
+#line 4613 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33242 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 503: /* part_type_def: RANGE_SYM part_func */
+#line 4615 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->part_type= RANGE_PARTITION; }
+#line 33248 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 504: /* part_type_def: RANGE_SYM part_column_list */
+#line 4617 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->part_type= RANGE_PARTITION; }
+#line 33254 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 505: /* $@69: %empty */
+#line 4619 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->parsing_place= IN_PART_FUNC;
+ }
+#line 33262 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 506: /* part_type_def: LIST_SYM $@69 part_func */
+#line 4623 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->part_info->part_type= LIST_PARTITION;
+ Select->parsing_place= NO_MATTER;
+ }
+#line 33271 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 507: /* part_type_def: LIST_SYM part_column_list */
+#line 4628 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->part_type= LIST_PARTITION; }
+#line 33277 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 508: /* $@70: %empty */
+#line 4630 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->part_info->vers_init_info(thd)))
+ MYSQL_YYABORT;
+ }
+#line 33286 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 510: /* opt_linear: %empty */
+#line 4638 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33292 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 511: /* opt_linear: LINEAR_SYM */
+#line 4640 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->linear_hash_ind= TRUE;}
+#line 33298 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 512: /* opt_key_algo: %empty */
+#line 4645 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->key_algorithm= partition_info::KEY_ALGORITHM_NONE;}
+#line 33304 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 513: /* opt_key_algo: ALGORITHM_SYM '=' real_ulong_num */
+#line 4647 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ switch ((yyvsp[0].ulong_num)) {
+ case 1:
+ Lex->part_info->key_algorithm= partition_info::KEY_ALGORITHM_51;
+ break;
+ case 2:
+ Lex->part_info->key_algorithm= partition_info::KEY_ALGORITHM_55;
+ break;
+ default:
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ }
+#line 33322 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 514: /* part_field_list: %empty */
+#line 4663 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33328 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 515: /* part_field_list: part_field_item_list */
+#line 4664 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33334 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 516: /* part_field_item_list: part_field_item */
+#line 4668 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33340 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 517: /* part_field_item_list: part_field_item_list ',' part_field_item */
+#line 4669 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33346 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 518: /* part_field_item: ident */
+#line 4674 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ part_info->num_columns++;
+ if (unlikely(part_info->part_field_list.push_back((yyvsp[0].ident_sys).str,
+ thd->mem_root)))
+ MYSQL_YYABORT;
+ if (unlikely(part_info->num_columns > MAX_REF_PARTS))
+ my_yyabort_error((ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR, MYF(0),
+ "list of partition fields"));
+ }
+#line 33361 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 519: /* part_column_list: COLUMNS '(' part_field_list ')' */
+#line 4688 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ part_info->column_list= TRUE;
+ part_info->list_of_part_fields= TRUE;
+ }
+#line 33371 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 520: /* part_func: '(' part_func_expr ')' */
+#line 4698 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ if (unlikely(part_info->set_part_expr(thd, (yyvsp[-1].item), FALSE)))
+ MYSQL_YYABORT;
+ part_info->num_columns= 1;
+ part_info->column_list= FALSE;
+ }
+#line 33383 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 521: /* sub_part_func: '(' part_func_expr ')' */
+#line 4709 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->part_info->set_part_expr(thd, (yyvsp[-1].item), TRUE)))
+ MYSQL_YYABORT;
+ }
+#line 33392 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 522: /* opt_num_parts: %empty */
+#line 4717 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33398 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 523: /* opt_num_parts: PARTITIONS_SYM real_ulong_num */
+#line 4719 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ uint num_parts= (yyvsp[0].ulong_num);
+ partition_info *part_info= Lex->part_info;
+ if (unlikely(num_parts == 0))
+ my_yyabort_error((ER_NO_PARTS_ERROR, MYF(0), "partitions"));
+
+ part_info->num_parts= num_parts;
+ part_info->use_default_num_partitions= FALSE;
+ }
+#line 33412 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 524: /* opt_sub_part: %empty */
+#line 4731 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33418 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 525: /* $@71: %empty */
+#line 4733 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->subpart_type= HASH_PARTITION; }
+#line 33424 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 526: /* opt_sub_part: SUBPARTITION_SYM BY opt_linear HASH_SYM sub_part_func $@71 opt_num_subparts */
+#line 4734 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33430 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 527: /* $@72: %empty */
+#line 4737 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ part_info->subpart_type= HASH_PARTITION;
+ part_info->list_of_subpart_fields= TRUE;
+ }
+#line 33440 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 528: /* opt_sub_part: SUBPARTITION_SYM BY opt_linear KEY_SYM opt_key_algo '(' sub_part_field_list ')' $@72 opt_num_subparts */
+#line 4742 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33446 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 529: /* sub_part_field_list: sub_part_field_item */
+#line 4746 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33452 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 530: /* sub_part_field_list: sub_part_field_list ',' sub_part_field_item */
+#line 4747 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33458 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 531: /* sub_part_field_item: ident */
+#line 4752 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ if (unlikely(part_info->subpart_field_list.push_back((yyvsp[0].ident_sys).str,
+ thd->mem_root)))
+ MYSQL_YYABORT;
+
+ if (unlikely(part_info->subpart_field_list.elements > MAX_REF_PARTS))
+ my_yyabort_error((ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR, MYF(0),
+ "list of subpartition fields"));
+ }
+#line 33473 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 532: /* part_func_expr: bit_expr */
+#line 4766 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!Lex->safe_to_cache_query))
+ {
+ thd->parse_error(ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR);
+ MYSQL_YYABORT;
+ }
+ (yyval.item)=(yyvsp[0].item);
+ }
+#line 33486 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 533: /* opt_num_subparts: %empty */
+#line 4777 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33492 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 534: /* opt_num_subparts: SUBPARTITIONS_SYM real_ulong_num */
+#line 4779 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ uint num_parts= (yyvsp[0].ulong_num);
+ LEX *lex= Lex;
+ if (unlikely(num_parts == 0))
+ my_yyabort_error((ER_NO_PARTS_ERROR, MYF(0), "subpartitions"));
+ lex->part_info->num_subparts= num_parts;
+ lex->part_info->use_default_num_subpartitions= FALSE;
+ }
+#line 33505 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 535: /* part_defs: %empty */
+#line 4791 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ if (unlikely(part_info->part_type == RANGE_PARTITION))
+ my_yyabort_error((ER_PARTITIONS_MUST_BE_DEFINED_ERROR, MYF(0),
+ "RANGE"));
+ if (unlikely(part_info->part_type == LIST_PARTITION))
+ my_yyabort_error((ER_PARTITIONS_MUST_BE_DEFINED_ERROR, MYF(0),
+ "LIST"));
+ }
+#line 33519 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 536: /* part_defs: '(' part_def_list ')' */
+#line 4801 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ uint count_curr_parts= part_info->partitions.elements;
+ if (part_info->num_parts != 0)
+ {
+ if (unlikely(part_info->num_parts !=
+ count_curr_parts))
+ {
+ thd->parse_error(ER_PARTITION_WRONG_NO_PART_ERROR);
+ MYSQL_YYABORT;
+ }
+ }
+ else if (count_curr_parts > 0)
+ {
+ part_info->num_parts= count_curr_parts;
+ }
+ part_info->count_curr_subparts= 0;
+ }
+#line 33542 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 537: /* part_def_list: part_definition */
+#line 4822 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33548 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 538: /* part_def_list: part_def_list ',' part_definition */
+#line 4823 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33554 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 541: /* $@73: %empty */
+#line 4833 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ partition_element *p_elem= new (thd->mem_root) partition_element();
+
+ if (unlikely(!p_elem) ||
+ unlikely(part_info->partitions.push_back(p_elem, thd->mem_root)))
+ MYSQL_YYABORT;
+
+ p_elem->part_state= PART_NORMAL;
+ p_elem->id= part_info->partitions.elements - 1;
+ part_info->curr_part_elem= p_elem;
+ part_info->current_partition= p_elem;
+ part_info->use_default_partitions= FALSE;
+ part_info->use_default_num_partitions= FALSE;
+ }
+#line 33574 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 542: /* part_definition: opt_partition $@73 part_name opt_part_values opt_part_options opt_sub_partition */
+#line 4852 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33580 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 543: /* part_name: ident */
+#line 4857 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ partition_element *p_elem= part_info->curr_part_elem;
+ if (unlikely(check_ident_length(&(yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ p_elem->partition_name= (yyvsp[0].ident_sys).str;
+ }
+#line 33592 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 544: /* opt_part_values: %empty */
+#line 4868 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ partition_info *part_info= lex->part_info;
+ if (! lex->is_partition_management())
+ {
+ if (unlikely(part_info->error_if_requires_values()))
+ MYSQL_YYABORT;
+ if (unlikely(part_info->part_type == VERSIONING_PARTITION))
+ my_yyabort_error((ER_VERS_WRONG_PARTS, MYF(0),
+ lex->create_last_non_select_table->
+ table_name.str));
+ }
+ else
+ part_info->part_type= HASH_PARTITION;
+ }
+#line 33612 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 545: /* $@74: %empty */
+#line 4884 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ partition_info *part_info= lex->part_info;
+ if (! lex->is_partition_management())
+ {
+ if (unlikely(part_info->part_type != RANGE_PARTITION))
+ my_yyabort_error((ER_PARTITION_WRONG_VALUES_ERROR, MYF(0),
+ "RANGE", "LESS THAN"));
+ }
+ else
+ part_info->part_type= RANGE_PARTITION;
+ }
+#line 33629 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 546: /* opt_part_values: VALUES_LESS_SYM THAN_SYM $@74 part_func_max */
+#line 4896 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33635 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 547: /* $@75: %empty */
+#line 4898 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ partition_info *part_info= lex->part_info;
+ if (! lex->is_partition_management())
+ {
+ if (unlikely(part_info->part_type != LIST_PARTITION))
+ my_yyabort_error((ER_PARTITION_WRONG_VALUES_ERROR, MYF(0),
+ "LIST", "IN"));
+ }
+ else
+ part_info->part_type= LIST_PARTITION;
+ }
+#line 33652 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 548: /* opt_part_values: VALUES_IN_SYM $@75 part_values_in */
+#line 4910 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33658 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 549: /* opt_part_values: CURRENT_SYM */
+#line 4912 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+#ifdef WITH_PARTITION_STORAGE_ENGINE
+ if (Lex->part_values_current(thd))
+ MYSQL_YYABORT;
+#endif
+ }
+#line 33669 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 550: /* opt_part_values: HISTORY_SYM */
+#line 4919 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+#ifdef WITH_PARTITION_STORAGE_ENGINE
+ if (Lex->part_values_history(thd))
+ MYSQL_YYABORT;
+#endif
+ }
+#line 33680 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 551: /* opt_part_values: DEFAULT */
+#line 4926 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ partition_info *part_info= lex->part_info;
+ if (! lex->is_partition_management())
+ {
+ if (unlikely(part_info->part_type != LIST_PARTITION))
+ my_yyabort_error((ER_PARTITION_WRONG_VALUES_ERROR, MYF(0),
+ "LIST", "DEFAULT"));
+ }
+ else
+ part_info->part_type= LIST_PARTITION;
+ if (unlikely(part_info->init_column_part(thd)))
+ MYSQL_YYABORT;
+ if (unlikely(part_info->add_max_value(thd)))
+ MYSQL_YYABORT;
+ }
+#line 33701 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 552: /* part_func_max: MAXVALUE_SYM */
+#line 4946 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+
+ if (unlikely(part_info->num_columns &&
+ part_info->num_columns != 1U))
+ {
+ part_info->print_debug("Kilroy II", NULL);
+ thd->parse_error(ER_PARTITION_COLUMN_LIST_ERROR);
+ MYSQL_YYABORT;
+ }
+ else
+ part_info->num_columns= 1U;
+ if (unlikely(part_info->init_column_part(thd)))
+ MYSQL_YYABORT;
+ if (unlikely(part_info->add_max_value(thd)))
+ MYSQL_YYABORT;
+ }
+#line 33723 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 553: /* part_func_max: part_value_item */
+#line 4963 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33729 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 554: /* part_values_in: part_value_item */
+#line 4968 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ partition_info *part_info= lex->part_info;
+ part_info->print_debug("part_values_in: part_value_item", NULL);
+
+ if (part_info->num_columns != 1U)
+ {
+ if (unlikely(!lex->is_partition_management() ||
+ part_info->num_columns == 0 ||
+ part_info->num_columns > MAX_REF_PARTS))
+ {
+ part_info->print_debug("Kilroy III", NULL);
+ thd->parse_error(ER_PARTITION_COLUMN_LIST_ERROR);
+ MYSQL_YYABORT;
+ }
+ /*
+ Reorganize the current large array into a list of small
+ arrays with one entry in each array. This can happen
+ in the first partition of an ALTER TABLE statement where
+ we ADD or REORGANIZE partitions. Also can only happen
+ for LIST partitions.
+ */
+ if (unlikely(part_info->reorganize_into_single_field_col_val(thd)))
+ MYSQL_YYABORT;
+ }
+ }
+#line 33760 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 555: /* part_values_in: '(' part_value_list ')' */
+#line 4995 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ if (unlikely(part_info->num_columns < 2U))
+ {
+ thd->parse_error(ER_ROW_SINGLE_PARTITION_FIELD_ERROR);
+ MYSQL_YYABORT;
+ }
+ }
+#line 33773 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 556: /* part_value_list: part_value_item */
+#line 5006 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33779 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 557: /* part_value_list: part_value_list ',' part_value_item */
+#line 5007 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33785 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 558: /* $@76: %empty */
+#line 5012 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ part_info->print_debug("( part_value_item", NULL);
+ /* Initialisation code needed for each list of value expressions */
+ if (unlikely(!(part_info->part_type == LIST_PARTITION &&
+ part_info->num_columns == 1U) &&
+ part_info->init_column_part(thd)))
+ MYSQL_YYABORT;
+ }
+#line 33799 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 559: /* $@77: %empty */
+#line 5021 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33805 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 560: /* part_value_item: '(' $@76 part_value_item_list $@77 ')' */
+#line 5023 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ part_info->print_debug(") part_value_item", NULL);
+ if (part_info->num_columns == 0)
+ part_info->num_columns= part_info->curr_list_object;
+ if (unlikely(part_info->num_columns != part_info->curr_list_object))
+ {
+ /*
+ All value items lists must be of equal length, in some cases
+ which is covered by the above if-statement we don't know yet
+ how many columns is in the partition so the assignment above
+ ensures that we only report errors when we know we have an
+ error.
+ */
+ part_info->print_debug("Kilroy I", NULL);
+ thd->parse_error(ER_PARTITION_COLUMN_LIST_ERROR);
+ MYSQL_YYABORT;
+ }
+ part_info->curr_list_object= 0;
+ }
+#line 33830 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 561: /* part_value_item_list: part_value_expr_item */
+#line 5046 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33836 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 562: /* part_value_item_list: part_value_item_list ',' part_value_expr_item */
+#line 5047 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33842 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 563: /* part_value_expr_item: MAXVALUE_SYM */
+#line 5052 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ if (unlikely(part_info->part_type == LIST_PARTITION))
+ {
+ thd->parse_error(ER_MAXVALUE_IN_VALUES_IN);
+ MYSQL_YYABORT;
+ }
+ if (unlikely(part_info->add_max_value(thd)))
+ MYSQL_YYABORT;
+ }
+#line 33857 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 564: /* part_value_expr_item: bit_expr */
+#line 5063 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ partition_info *part_info= lex->part_info;
+ Item *part_expr= (yyvsp[0].item);
+
+ if (unlikely(!lex->safe_to_cache_query))
+ {
+ thd->parse_error(ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR);
+ MYSQL_YYABORT;
+ }
+ if (unlikely(part_info->add_column_list_value(thd, part_expr)))
+ MYSQL_YYABORT;
+ }
+#line 33875 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 565: /* opt_sub_partition: %empty */
+#line 5081 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ if (unlikely(part_info->num_subparts != 0 &&
+ !part_info->use_default_subpartitions))
+ {
+ /*
+ We come here when we have defined subpartitions on the first
+ partition but not on all the subsequent partitions.
+ */
+ thd->parse_error(ER_PARTITION_WRONG_NO_SUBPART_ERROR);
+ MYSQL_YYABORT;
+ }
+ }
+#line 33893 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 566: /* opt_sub_partition: '(' sub_part_list ')' */
+#line 5095 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ if (part_info->num_subparts != 0)
+ {
+ if (unlikely(part_info->num_subparts !=
+ part_info->count_curr_subparts))
+ {
+ thd->parse_error(ER_PARTITION_WRONG_NO_SUBPART_ERROR);
+ MYSQL_YYABORT;
+ }
+ }
+ else if (part_info->count_curr_subparts > 0)
+ {
+ if (unlikely(part_info->partitions.elements > 1))
+ {
+ thd->parse_error(ER_PARTITION_WRONG_NO_SUBPART_ERROR);
+ MYSQL_YYABORT;
+ }
+ part_info->num_subparts= part_info->count_curr_subparts;
+ }
+ part_info->count_curr_subparts= 0;
+ }
+#line 33920 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 567: /* sub_part_list: sub_part_definition */
+#line 5120 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33926 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 568: /* sub_part_list: sub_part_list ',' sub_part_definition */
+#line 5121 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33932 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 569: /* $@78: %empty */
+#line 5126 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ partition_element *curr_part= part_info->current_partition;
+ partition_element *sub_p_elem= new (thd->mem_root)
+ partition_element(curr_part);
+ if (unlikely(part_info->use_default_subpartitions &&
+ part_info->partitions.elements >= 2))
+ {
+ /*
+ create table t1 (a int)
+ partition by list (a) subpartition by hash (a)
+ (partition p0 values in (1),
+ partition p1 values in (2) subpartition sp11);
+ causes use to arrive since we are on the second
+ partition, but still use_default_subpartitions
+ is set. When we come here we're processing at least
+ the second partition (the current partition processed
+ have already been put into the partitions list.
+ */
+ thd->parse_error(ER_PARTITION_WRONG_NO_SUBPART_ERROR);
+ MYSQL_YYABORT;
+ }
+ if (unlikely(!sub_p_elem) ||
+ unlikely(curr_part->subpartitions.push_back(sub_p_elem, thd->mem_root)))
+ MYSQL_YYABORT;
+
+ sub_p_elem->id= curr_part->subpartitions.elements - 1;
+ part_info->curr_part_elem= sub_p_elem;
+ part_info->use_default_subpartitions= FALSE;
+ part_info->use_default_num_subpartitions= FALSE;
+ part_info->count_curr_subparts++;
+ }
+#line 33969 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 570: /* sub_part_definition: SUBPARTITION_SYM $@78 sub_name opt_subpart_options */
+#line 5158 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33975 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 571: /* sub_name: ident_or_text */
+#line 5163 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(check_ident_length(&(yyvsp[0].lex_str))))
+ MYSQL_YYABORT;
+ Lex->part_info->curr_part_elem->partition_name= (yyvsp[0].lex_str).str;
+ }
+#line 33985 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 572: /* opt_part_options: %empty */
+#line 5171 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33991 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 573: /* opt_part_options: part_option_list */
+#line 5172 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 33997 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 574: /* part_option_list: part_option_list part_option */
+#line 5176 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34003 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 575: /* part_option_list: part_option */
+#line 5177 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34009 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 576: /* part_option: server_part_option */
+#line 5181 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34015 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 577: /* part_option: engine_defined_option */
+#line 5183 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[0].engine_option_value_ptr)->link(&Lex->part_info->curr_part_elem->option_list,
+ &Lex->option_list_last);
+ }
+#line 34024 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 578: /* opt_subpart_options: %empty */
+#line 5190 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34030 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 579: /* opt_subpart_options: subpart_option_list */
+#line 5191 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34036 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 580: /* subpart_option_list: subpart_option_list server_part_option */
+#line 5195 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34042 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 581: /* subpart_option_list: server_part_option */
+#line 5196 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34048 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 582: /* server_part_option: TABLESPACE opt_equal ident_or_text */
+#line 5201 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* Compatibility with MySQL */ }
+#line 34054 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 583: /* server_part_option: opt_storage ENGINE_SYM opt_equal storage_engines */
+#line 5203 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ part_info->curr_part_elem->engine_type= (yyvsp[0].db_type);
+ part_info->default_engine_type= (yyvsp[0].db_type);
+ }
+#line 34064 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 584: /* server_part_option: CONNECTION_SYM opt_equal TEXT_STRING_sys */
+#line 5209 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->part_info->curr_part_elem->connect_string.str= (yyvsp[0].lex_str).str;
+ lex->part_info->curr_part_elem->connect_string.length= (yyvsp[0].lex_str).length;
+ }
+#line 34074 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 585: /* server_part_option: NODEGROUP_SYM opt_equal real_ulong_num */
+#line 5215 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->curr_part_elem->nodegroup_id= (uint16) (yyvsp[0].ulong_num); }
+#line 34080 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 586: /* server_part_option: MAX_ROWS opt_equal real_ulonglong_num */
+#line 5217 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->curr_part_elem->part_max_rows= (ha_rows) (yyvsp[0].ulonglong_number); }
+#line 34086 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 587: /* server_part_option: MIN_ROWS opt_equal real_ulonglong_num */
+#line 5219 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->curr_part_elem->part_min_rows= (ha_rows) (yyvsp[0].ulonglong_number); }
+#line 34092 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 588: /* server_part_option: DATA_SYM DIRECTORY_SYM opt_equal TEXT_STRING_sys */
+#line 5221 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->curr_part_elem->data_file_name= (yyvsp[0].lex_str).str; }
+#line 34098 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 589: /* server_part_option: INDEX_SYM DIRECTORY_SYM opt_equal TEXT_STRING_sys */
+#line 5223 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->curr_part_elem->index_file_name= (yyvsp[0].lex_str).str; }
+#line 34104 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 590: /* server_part_option: COMMENT_SYM opt_equal TEXT_STRING_sys */
+#line 5225 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->part_info->curr_part_elem->part_comment= (yyvsp[0].lex_str).str; }
+#line 34110 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 591: /* opt_versioning_rotation: %empty */
+#line 5229 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34116 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 592: /* $@79: %empty */
+#line 5230 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->clause_that_disallows_subselect= "INTERVAL"; }
+#line 34122 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 593: /* opt_versioning_rotation: $@79 INTERVAL_SYM expr interval opt_versioning_interval_start opt_vers_auto_part */
+#line 5232 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ const char *table_name= Lex->create_last_non_select_table->table_name.str;
+ if (unlikely(part_info->vers_set_interval(thd, (yyvsp[-3].item), (yyvsp[-2].interval), (yyvsp[-1].item), (yyvsp[0].num),
+ table_name)))
+ MYSQL_YYABORT;
+ }
+#line 34134 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 594: /* opt_versioning_rotation: LIMIT ulonglong_num opt_vers_auto_part */
+#line 5240 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ const char *table_name= Lex->create_last_non_select_table->table_name.str;
+ if (unlikely(part_info->vers_set_limit((yyvsp[-1].ulonglong_number), (yyvsp[0].num), table_name)))
+ MYSQL_YYABORT;
+ }
+#line 34145 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 595: /* opt_versioning_interval_start: %empty */
+#line 5251 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= NULL;
+ }
+#line 34153 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 596: /* opt_versioning_interval_start: STARTS_SYM literal */
+#line 5255 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= (yyvsp[0].item);
+ }
+#line 34161 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 597: /* opt_vers_auto_part: %empty */
+#line 5262 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= 0;
+ }
+#line 34169 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 598: /* opt_vers_auto_part: AUTO_SYM */
+#line 5266 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= 1;
+ }
+#line 34177 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 599: /* opt_as: %empty */
+#line 5275 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34183 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 600: /* opt_as: AS */
+#line 5276 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34189 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 601: /* opt_create_database_options: %empty */
+#line 5280 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34195 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 602: /* opt_create_database_options: create_database_options */
+#line 5281 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34201 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 603: /* create_database_options: create_database_option */
+#line 5285 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34207 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 604: /* create_database_options: create_database_options create_database_option */
+#line 5286 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34213 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 605: /* create_database_option: default_collation */
+#line 5290 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34219 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 606: /* create_database_option: default_charset */
+#line 5291 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 34225 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 607: /* create_database_option: COMMENT_SYM opt_equal TEXT_STRING_sys */
+#line 5293 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.schema_comment= thd->make_clex_string((yyvsp[0].lex_str));
+ Lex->create_info.used_fields|= HA_CREATE_USED_COMMENT;
+ }
+#line 34234 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 608: /* opt_if_not_exists_table_element: %empty */
+#line 5301 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->check_exists= FALSE;
+ }
+#line 34242 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 609: /* opt_if_not_exists_table_element: IF_SYM not EXISTS */
+#line 5305 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->check_exists= TRUE;
+ }
+#line 34250 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 610: /* opt_if_not_exists: %empty */
+#line 5312 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.object_ddl_options).init();
+ }
+#line 34258 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 611: /* opt_if_not_exists: IF_SYM not EXISTS */
+#line 5316 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.object_ddl_options).set(DDL_options_st::OPT_IF_NOT_EXISTS);
+ }
+#line 34266 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 612: /* create_or_replace: CREATE */
+#line 5323 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.object_ddl_options).init();
+ }
+#line 34274 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 613: /* create_or_replace: CREATE OR_SYM REPLACE */
+#line 5327 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.object_ddl_options).set(DDL_options_st::OPT_OR_REPLACE);
+ }
+#line 34282 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 621: /* create_table_option: ENGINE_SYM opt_equal ident_or_text */
+#line 5350 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (!lex->m_sql_cmd)
+ {
+ DBUG_ASSERT(lex->sql_command == SQLCOM_ALTER_TABLE);
+ if (!(lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table()))
+ MYSQL_YYABORT;
+ }
+ Storage_engine_name *opt=
+ lex->m_sql_cmd->option_storage_engine_name();
+ DBUG_ASSERT(opt); // Expect a proper Sql_cmd
+ *opt= Storage_engine_name((yyvsp[0].lex_str));
+ lex->create_info.used_fields|= HA_CREATE_USED_ENGINE;
+ }
+#line 34301 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 622: /* create_table_option: MAX_ROWS opt_equal ulonglong_num */
+#line 5365 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.max_rows= (yyvsp[0].ulonglong_number);
+ Lex->create_info.used_fields|= HA_CREATE_USED_MAX_ROWS;
+ }
+#line 34310 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 623: /* create_table_option: MIN_ROWS opt_equal ulonglong_num */
+#line 5370 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.min_rows= (yyvsp[0].ulonglong_number);
+ Lex->create_info.used_fields|= HA_CREATE_USED_MIN_ROWS;
+ }
+#line 34319 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 624: /* create_table_option: AVG_ROW_LENGTH opt_equal ulong_num */
+#line 5375 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.avg_row_length=(yyvsp[0].ulong_num);
+ Lex->create_info.used_fields|= HA_CREATE_USED_AVG_ROW_LENGTH;
+ }
+#line 34328 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 625: /* create_table_option: PASSWORD_SYM opt_equal TEXT_STRING_sys */
+#line 5380 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.password=(yyvsp[0].lex_str).str;
+ Lex->create_info.used_fields|= HA_CREATE_USED_PASSWORD;
+ }
+#line 34337 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 626: /* create_table_option: COMMENT_SYM opt_equal TEXT_STRING_sys */
+#line 5385 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.comment=(yyvsp[0].lex_str);
+ Lex->create_info.used_fields|= HA_CREATE_USED_COMMENT;
+ }
+#line 34346 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 627: /* create_table_option: AUTO_INC opt_equal ulonglong_num */
+#line 5390 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.auto_increment_value=(yyvsp[0].ulonglong_number);
+ Lex->create_info.used_fields|= HA_CREATE_USED_AUTO;
+ }
+#line 34355 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 628: /* create_table_option: PACK_KEYS_SYM opt_equal ulong_num */
+#line 5395 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ switch((yyvsp[0].ulong_num)) {
+ case 0:
+ Lex->create_info.table_options|= HA_OPTION_NO_PACK_KEYS;
+ break;
+ case 1:
+ Lex->create_info.table_options|= HA_OPTION_PACK_KEYS;
+ break;
+ default:
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ Lex->create_info.used_fields|= HA_CREATE_USED_PACK_KEYS;
+ }
+#line 34374 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 629: /* create_table_option: PACK_KEYS_SYM opt_equal DEFAULT */
+#line 5410 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.table_options&=
+ ~(HA_OPTION_PACK_KEYS | HA_OPTION_NO_PACK_KEYS);
+ Lex->create_info.used_fields|= HA_CREATE_USED_PACK_KEYS;
+ }
+#line 34384 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 630: /* create_table_option: STATS_AUTO_RECALC_SYM opt_equal ulong_num */
+#line 5416 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ switch((yyvsp[0].ulong_num)) {
+ case 0:
+ Lex->create_info.stats_auto_recalc= HA_STATS_AUTO_RECALC_OFF;
+ break;
+ case 1:
+ Lex->create_info.stats_auto_recalc= HA_STATS_AUTO_RECALC_ON;
+ break;
+ default:
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ Lex->create_info.used_fields|= HA_CREATE_USED_STATS_AUTO_RECALC;
+ }
+#line 34403 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 631: /* create_table_option: STATS_AUTO_RECALC_SYM opt_equal DEFAULT */
+#line 5431 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.stats_auto_recalc= HA_STATS_AUTO_RECALC_DEFAULT;
+ Lex->create_info.used_fields|= HA_CREATE_USED_STATS_AUTO_RECALC;
+ }
+#line 34412 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 632: /* create_table_option: STATS_PERSISTENT_SYM opt_equal ulong_num */
+#line 5436 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ switch((yyvsp[0].ulong_num)) {
+ case 0:
+ Lex->create_info.table_options|= HA_OPTION_NO_STATS_PERSISTENT;
+ break;
+ case 1:
+ Lex->create_info.table_options|= HA_OPTION_STATS_PERSISTENT;
+ break;
+ default:
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ Lex->create_info.used_fields|= HA_CREATE_USED_STATS_PERSISTENT;
+ }
+#line 34431 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 633: /* create_table_option: STATS_PERSISTENT_SYM opt_equal DEFAULT */
+#line 5451 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.table_options&=
+ ~(HA_OPTION_STATS_PERSISTENT | HA_OPTION_NO_STATS_PERSISTENT);
+ Lex->create_info.used_fields|= HA_CREATE_USED_STATS_PERSISTENT;
+ }
+#line 34441 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 634: /* create_table_option: STATS_SAMPLE_PAGES_SYM opt_equal ulong_num */
+#line 5457 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* From user point of view STATS_SAMPLE_PAGES can be specified as
+ STATS_SAMPLE_PAGES=N (where 0<N<=65535, it does not make sense to
+ scan 0 pages) or STATS_SAMPLE_PAGES=default. Internally we record
+ =default as 0. See create_frm() in sql/table.cc, we use only two
+ bytes for stats_sample_pages and this is why we do not allow
+ larger values. 65535 pages, 16kb each means to sample 1GB, which
+ is impractical. If at some point this needs to be extended, then
+ we can store the higher bits from stats_sample_pages in .frm too. */
+ if (unlikely((yyvsp[0].ulong_num) == 0 || (yyvsp[0].ulong_num) > 0xffff))
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ Lex->create_info.stats_sample_pages=(yyvsp[0].ulong_num);
+ Lex->create_info.used_fields|= HA_CREATE_USED_STATS_SAMPLE_PAGES;
+ }
+#line 34463 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 635: /* create_table_option: STATS_SAMPLE_PAGES_SYM opt_equal DEFAULT */
+#line 5475 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.stats_sample_pages=0;
+ Lex->create_info.used_fields|= HA_CREATE_USED_STATS_SAMPLE_PAGES;
+ }
+#line 34472 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 636: /* create_table_option: CHECKSUM_SYM opt_equal ulong_num */
+#line 5480 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.table_options|= (yyvsp[0].ulong_num) ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM;
+ Lex->create_info.used_fields|= HA_CREATE_USED_CHECKSUM;
+ }
+#line 34481 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 637: /* create_table_option: TABLE_CHECKSUM_SYM opt_equal ulong_num */
+#line 5485 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.table_options|= (yyvsp[0].ulong_num) ? HA_OPTION_CHECKSUM : HA_OPTION_NO_CHECKSUM;
+ Lex->create_info.used_fields|= HA_CREATE_USED_CHECKSUM;
+ }
+#line 34490 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 638: /* create_table_option: PAGE_CHECKSUM_SYM opt_equal choice */
+#line 5490 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.used_fields|= HA_CREATE_USED_PAGE_CHECKSUM;
+ Lex->create_info.page_checksum= (yyvsp[0].choice);
+ }
+#line 34499 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 639: /* create_table_option: DELAY_KEY_WRITE_SYM opt_equal ulong_num */
+#line 5495 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.table_options|= (yyvsp[0].ulong_num) ? HA_OPTION_DELAY_KEY_WRITE : HA_OPTION_NO_DELAY_KEY_WRITE;
+ Lex->create_info.used_fields|= HA_CREATE_USED_DELAY_KEY_WRITE;
+ }
+#line 34508 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 640: /* create_table_option: ROW_FORMAT_SYM opt_equal row_types */
+#line 5500 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.row_type= (yyvsp[0].row_type);
+ Lex->create_info.used_fields|= HA_CREATE_USED_ROW_FORMAT;
+ }
+#line 34517 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 641: /* $@80: %empty */
+#line 5505 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->first_select_lex()->table_list.save_and_clear(&Lex->save_list);
+ }
+#line 34525 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 642: /* create_table_option: UNION_SYM opt_equal $@80 '(' opt_table_list ')' */
+#line 5509 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ Move the union list to the merge_list and exclude its tables
+ from the global list.
+ */
+ LEX *lex=Lex;
+ lex->create_info.merge_list= lex->first_select_lex()->table_list.first;
+ lex->first_select_lex()->table_list= lex->save_list;
+ /*
+ When excluding union list from the global list we assume that
+ elements of the former immediately follow elements which represent
+ table being created/altered and parent tables.
+ */
+ TABLE_LIST *last_non_sel_table= lex->create_last_non_select_table;
+ DBUG_ASSERT(last_non_sel_table->next_global ==
+ lex->create_info.merge_list);
+ last_non_sel_table->next_global= 0;
+ Lex->query_tables_last= &last_non_sel_table->next_global;
+
+ lex->create_info.used_fields|= HA_CREATE_USED_UNION;
+ }
+#line 34551 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 645: /* create_table_option: INSERT_METHOD opt_equal merge_insert_types */
+#line 5533 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.merge_insert_method= (yyvsp[0].ulong_num);
+ Lex->create_info.used_fields|= HA_CREATE_USED_INSERT_METHOD;
+ }
+#line 34560 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 646: /* create_table_option: DATA_SYM DIRECTORY_SYM opt_equal TEXT_STRING_sys */
+#line 5538 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.data_file_name= (yyvsp[0].lex_str).str;
+ Lex->create_info.used_fields|= HA_CREATE_USED_DATADIR;
+ }
+#line 34569 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 647: /* create_table_option: INDEX_SYM DIRECTORY_SYM opt_equal TEXT_STRING_sys */
+#line 5543 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.index_file_name= (yyvsp[0].lex_str).str;
+ Lex->create_info.used_fields|= HA_CREATE_USED_INDEXDIR;
+ }
+#line 34578 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 648: /* create_table_option: TABLESPACE ident */
+#line 5548 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* Compatiblity with MySQL */ }
+#line 34584 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 649: /* create_table_option: STORAGE_SYM DISK_SYM */
+#line 5550 "/home/buildbot/git/sql/sql_yacc.yy"
+ {Lex->create_info.storage_media= HA_SM_DISK;}
+#line 34590 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 650: /* create_table_option: STORAGE_SYM MEMORY_SYM */
+#line 5552 "/home/buildbot/git/sql/sql_yacc.yy"
+ {Lex->create_info.storage_media= HA_SM_MEMORY;}
+#line 34596 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 651: /* create_table_option: CONNECTION_SYM opt_equal TEXT_STRING_sys */
+#line 5554 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.connect_string.str= (yyvsp[0].lex_str).str;
+ Lex->create_info.connect_string.length= (yyvsp[0].lex_str).length;
+ Lex->create_info.used_fields|= HA_CREATE_USED_CONNECTION;
+ }
+#line 34606 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 652: /* create_table_option: KEY_BLOCK_SIZE opt_equal ulong_num */
+#line 5560 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.used_fields|= HA_CREATE_USED_KEY_BLOCK_SIZE;
+ Lex->create_info.key_block_size= (yyvsp[0].ulong_num);
+ }
+#line 34615 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 653: /* create_table_option: TRANSACTIONAL_SYM opt_equal choice */
+#line 5565 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.used_fields|= HA_CREATE_USED_TRANSACTIONAL;
+ Lex->create_info.transactional= (yyvsp[0].choice);
+ }
+#line 34624 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 654: /* create_table_option: engine_defined_option */
+#line 5570 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[0].engine_option_value_ptr)->link(&Lex->create_info.option_list, &Lex->option_list_last);
+ }
+#line 34632 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 655: /* create_table_option: SEQUENCE_SYM opt_equal choice */
+#line 5574 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.used_fields|= HA_CREATE_USED_SEQUENCE;
+ Lex->create_info.sequence= ((yyvsp[0].choice) == HA_CHOICE_YES);
+ }
+#line 34641 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 657: /* engine_defined_option: IDENT_sys equal TEXT_STRING_sys */
+#line 5583 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[0].lex_str).length > ENGINE_OPTION_MAX_LENGTH))
+ my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].ident_sys).str));
+ (yyval.engine_option_value_ptr)= new (thd->mem_root) engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].lex_str), true);
+ MYSQL_YYABORT_UNLESS((yyval.engine_option_value_ptr));
+ }
+#line 34652 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 658: /* engine_defined_option: IDENT_sys equal ident */
+#line 5590 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[0].ident_sys).length > ENGINE_OPTION_MAX_LENGTH))
+ my_yyabort_error((ER_VALUE_TOO_LONG, MYF(0), (yyvsp[-2].ident_sys).str));
+ (yyval.engine_option_value_ptr)= new (thd->mem_root) engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].ident_sys), false);
+ MYSQL_YYABORT_UNLESS((yyval.engine_option_value_ptr));
+ }
+#line 34663 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 659: /* engine_defined_option: IDENT_sys equal real_ulonglong_num */
+#line 5597 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.engine_option_value_ptr)= new (thd->mem_root) engine_option_value((yyvsp[-2].ident_sys), (yyvsp[0].ulonglong_number), thd->mem_root);
+ MYSQL_YYABORT_UNLESS((yyval.engine_option_value_ptr));
+ }
+#line 34672 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 660: /* engine_defined_option: IDENT_sys equal DEFAULT */
+#line 5602 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.engine_option_value_ptr)= new (thd->mem_root) engine_option_value((yyvsp[-2].ident_sys));
+ MYSQL_YYABORT_UNLESS((yyval.engine_option_value_ptr));
+ }
+#line 34681 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 663: /* versioning_option: WITH_SYSTEM_SYM VERSIONING_SYM */
+#line 5615 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.options & HA_LEX_CREATE_TMP_TABLE))
+ {
+ if (!DBUG_IF("sysvers_force"))
+ {
+ my_error(ER_VERS_NOT_SUPPORTED, MYF(0), "CREATE TEMPORARY TABLE");
+ MYSQL_YYABORT;
+ }
+ }
+ else
+ {
+ Lex->alter_info.flags|= ALTER_ADD_SYSTEM_VERSIONING;
+ Lex->create_info.options|= HA_VERSIONED_TABLE;
+ }
+ }
+#line 34701 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 664: /* default_charset: opt_default charset opt_equal charset_name_or_default */
+#line 5634 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->create_info.add_table_option_default_charset((yyvsp[0].charset))))
+ MYSQL_YYABORT;
+ }
+#line 34710 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 665: /* default_collation: opt_default COLLATE_SYM opt_equal collation_name_or_default */
+#line 5642 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Table_specification_st *cinfo= &Lex->create_info;
+ if (unlikely(cinfo->add_table_option_default_collation((yyvsp[0].Lex_extended_collation))))
+ MYSQL_YYABORT;
+ }
+#line 34720 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 666: /* storage_engines: ident_or_text */
+#line 5651 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Storage_engine_name((yyvsp[0].lex_str)).
+ resolve_storage_engine_with_error(thd, &(yyval.db_type),
+ thd->lex->create_info.tmp_table()))
+ MYSQL_YYABORT;
+ }
+#line 34731 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 667: /* known_storage_engines: ident_or_text */
+#line 5661 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ plugin_ref plugin;
+ if (likely((plugin= ha_resolve_by_name(thd, &(yyvsp[0].lex_str), false))))
+ (yyval.db_type)= plugin_hton(plugin);
+ else
+ my_yyabort_error((ER_UNKNOWN_STORAGE_ENGINE, MYF(0), (yyvsp[0].lex_str).str));
+ }
+#line 34743 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 668: /* row_types: DEFAULT */
+#line 5671 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.row_type)= ROW_TYPE_DEFAULT; }
+#line 34749 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 669: /* row_types: FIXED_SYM */
+#line 5672 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.row_type)= ROW_TYPE_FIXED; }
+#line 34755 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 670: /* row_types: DYNAMIC_SYM */
+#line 5673 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.row_type)= ROW_TYPE_DYNAMIC; }
+#line 34761 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 671: /* row_types: COMPRESSED_SYM */
+#line 5674 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.row_type)= ROW_TYPE_COMPRESSED; }
+#line 34767 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 672: /* row_types: REDUNDANT_SYM */
+#line 5675 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.row_type)= ROW_TYPE_REDUNDANT; }
+#line 34773 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 673: /* row_types: COMPACT_SYM */
+#line 5676 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.row_type)= ROW_TYPE_COMPACT; }
+#line 34779 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 674: /* row_types: PAGE_SYM */
+#line 5677 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.row_type)= ROW_TYPE_PAGE; }
+#line 34785 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 675: /* merge_insert_types: NO_SYM */
+#line 5681 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= MERGE_INSERT_DISABLED; }
+#line 34791 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 676: /* merge_insert_types: FIRST_SYM */
+#line 5682 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= MERGE_INSERT_TO_FIRST; }
+#line 34797 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 677: /* merge_insert_types: LAST_SYM */
+#line 5683 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= MERGE_INSERT_TO_LAST; }
+#line 34803 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 678: /* udf_type: STRING_SYM */
+#line 5687 "/home/buildbot/git/sql/sql_yacc.yy"
+ {(yyval.num) = (int) STRING_RESULT; }
+#line 34809 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 679: /* udf_type: REAL */
+#line 5688 "/home/buildbot/git/sql/sql_yacc.yy"
+ {(yyval.num) = (int) REAL_RESULT; }
+#line 34815 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 680: /* udf_type: DECIMAL_SYM */
+#line 5689 "/home/buildbot/git/sql/sql_yacc.yy"
+ {(yyval.num) = (int) DECIMAL_RESULT; }
+#line 34821 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 681: /* udf_type: INT_SYM */
+#line 5690 "/home/buildbot/git/sql/sql_yacc.yy"
+ {(yyval.num) = (int) INT_RESULT; }
+#line 34827 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 682: /* create_field_list: field_list */
+#line 5696 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_last_non_select_table= Lex->last_table();
+ }
+#line 34835 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 683: /* create_field_list_parens: LEFT_PAREN_ALT field_list ')' */
+#line 5703 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_last_non_select_table= Lex->last_table();
+ }
+#line 34843 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 686: /* field_list_item: column_def */
+#line 5714 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 34849 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 690: /* field_list_item: PERIOD_SYM period_for_application_time */
+#line 5718 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 34855 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 691: /* column_def: field_spec */
+#line 5723 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.create_field)= (yyvsp[0].create_field); }
+#line 34861 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 692: /* column_def: field_spec opt_constraint references */
+#line 5725 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->add_column_foreign_key(&((yyvsp[-2].create_field)->field_name), &(yyvsp[-1].lex_str),
+ (yyvsp[0].table), DDL_options())))
+ MYSQL_YYABORT;
+ (yyval.create_field)= (yyvsp[-2].create_field);
+ }
+#line 34872 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 693: /* $@81: %empty */
+#line 5735 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->option_list= NULL;
+ if (unlikely(Lex->add_key(Key::MULTIPLE, &(yyvsp[-1].lex_str), (yyvsp[0].key_alg), (yyvsp[-2].object_ddl_options))))
+ MYSQL_YYABORT;
+ }
+#line 34882 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 694: /* key_def: key_or_index opt_if_not_exists opt_ident opt_USING_key_algorithm $@81 '(' key_list ')' normal_key_options */
+#line 5740 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 34888 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 695: /* $@82: %empty */
+#line 5742 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->option_list= NULL;
+ if (unlikely(Lex->add_key(Key::MULTIPLE, &(yyvsp[-2].ident_sys), (yyvsp[0].key_alg), (yyvsp[-3].object_ddl_options))))
+ MYSQL_YYABORT;
+ }
+#line 34898 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 696: /* key_def: key_or_index opt_if_not_exists ident TYPE_SYM btree_or_rtree $@82 '(' key_list ')' normal_key_options */
+#line 5747 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 34904 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 697: /* $@83: %empty */
+#line 5749 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->option_list= NULL;
+ if (unlikely(Lex->add_key((yyvsp[-3].key_type), &(yyvsp[0].lex_str), HA_KEY_ALG_UNDEF, (yyvsp[-1].object_ddl_options))))
+ MYSQL_YYABORT;
+ }
+#line 34914 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 698: /* key_def: fulltext opt_key_or_index opt_if_not_exists opt_ident $@83 '(' key_list ')' fulltext_key_options */
+#line 5754 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 34920 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 699: /* $@84: %empty */
+#line 5756 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->option_list= NULL;
+ if (unlikely(Lex->add_key((yyvsp[-3].key_type), &(yyvsp[0].lex_str), HA_KEY_ALG_UNDEF, (yyvsp[-1].object_ddl_options))))
+ MYSQL_YYABORT;
+ }
+#line 34930 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 700: /* key_def: spatial opt_key_or_index opt_if_not_exists opt_ident $@84 '(' key_list ')' spatial_key_options */
+#line 5761 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 34936 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 701: /* $@85: %empty */
+#line 5765 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->option_list= NULL;
+ if (unlikely(Lex->add_key((yyvsp[-3].key_type), (yyvsp[-1].lex_str).str ? &(yyvsp[-1].lex_str) : &(yyvsp[-4].lex_str), (yyvsp[0].key_alg), (yyvsp[-2].object_ddl_options))))
+ MYSQL_YYABORT;
+ }
+#line 34946 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 702: /* key_def: opt_constraint constraint_key_type opt_if_not_exists opt_ident opt_USING_key_algorithm $@85 '(' key_list opt_without_overlaps ')' normal_key_options */
+#line 5770 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 34952 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 703: /* $@86: %empty */
+#line 5773 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->option_list= NULL;
+ if (unlikely(Lex->add_key((yyvsp[-4].key_type), (yyvsp[-2].ident_sys).str ? &(yyvsp[-2].ident_sys) : &(yyvsp[-5].lex_str), (yyvsp[0].key_alg), (yyvsp[-3].object_ddl_options))))
+ MYSQL_YYABORT;
+ }
+#line 34962 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 704: /* key_def: opt_constraint constraint_key_type opt_if_not_exists ident TYPE_SYM btree_or_rtree $@86 '(' key_list opt_without_overlaps ')' normal_key_options */
+#line 5778 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 34968 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 705: /* $@87: %empty */
+#line 5780 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->check_add_key((yyvsp[-1].object_ddl_options))) ||
+ unlikely(!(Lex->last_key= (new (thd->mem_root)
+ Key(Key::MULTIPLE,
+ (yyvsp[-4].lex_str).str ? &(yyvsp[-4].lex_str) : &(yyvsp[0].lex_str),
+ HA_KEY_ALG_UNDEF, true, (yyvsp[-1].object_ddl_options))))))
+ MYSQL_YYABORT;
+ Lex->option_list= NULL;
+ }
+#line 34982 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 706: /* key_def: opt_constraint FOREIGN KEY_SYM opt_if_not_exists opt_ident $@87 '(' key_list ')' references */
+#line 5790 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->add_table_foreign_key((yyvsp[-5].lex_str).str ? &(yyvsp[-5].lex_str) : &(yyvsp[-9].lex_str),
+ (yyvsp[-9].lex_str).str ? &(yyvsp[-9].lex_str) : &(yyvsp[-5].lex_str), (yyvsp[0].table), (yyvsp[-6].object_ddl_options))))
+ MYSQL_YYABORT;
+ }
+#line 34992 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 707: /* constraint_def: opt_constraint check_constraint */
+#line 5799 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->add_constraint((yyvsp[-1].lex_str), (yyvsp[0].virtual_column), FALSE);
+ }
+#line 35000 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 708: /* period_for_system_time: PERIOD_SYM FOR_SYSTEM_TIME_SYM '(' ident ',' ident ')' */
+#line 5807 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Vers_parse_info &info= Lex->vers_get_info();
+ info.set_period((yyvsp[-3].ident_sys), (yyvsp[-1].ident_sys));
+ }
+#line 35009 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 709: /* period_for_application_time: FOR_SYM ident '(' ident ',' ident ')' */
+#line 5815 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->add_period((yyvsp[-5].ident_sys), (yyvsp[-3].ident_sys), (yyvsp[-1].ident_sys)))
+ MYSQL_YYABORT;
+ }
+#line 35018 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 710: /* opt_check_constraint: %empty */
+#line 5822 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.virtual_column)= (Virtual_column_info*) 0; }
+#line 35024 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 711: /* opt_check_constraint: check_constraint */
+#line 5823 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.virtual_column)= (yyvsp[0].virtual_column);}
+#line 35030 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 712: /* check_constraint: CHECK_SYM '(' expr ')' */
+#line 5828 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Virtual_column_info *v= add_virtual_expression(thd, (yyvsp[-1].item));
+ if (unlikely(!v))
+ MYSQL_YYABORT;
+ (yyval.virtual_column)= v;
+ }
+#line 35041 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 713: /* opt_constraint_no_id: %empty */
+#line 5837 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35047 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 714: /* opt_constraint_no_id: CONSTRAINT */
+#line 5838 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35053 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 715: /* opt_constraint: %empty */
+#line 5842 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= null_clex_str; }
+#line 35059 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 716: /* opt_constraint: constraint */
+#line 5843 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= (yyvsp[0].lex_str); }
+#line 35065 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 717: /* constraint: CONSTRAINT opt_ident */
+#line 5847 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)=(yyvsp[0].lex_str); }
+#line 35071 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 718: /* @88: %empty */
+#line 5852 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Create_field *f= new (thd->mem_root) Create_field();
+
+ if (unlikely(check_string_char_length(&(yyvsp[0].lex_str), 0, NAME_CHAR_LEN,
+ system_charset_info, 1)))
+ my_yyabort_error((ER_TOO_LONG_IDENT, MYF(0), (yyvsp[0].lex_str).str));
+
+ if (unlikely(!f))
+ MYSQL_YYABORT;
+
+ lex->init_last_field(f, &(yyvsp[0].lex_str));
+ (yyval.create_field)= f;
+ lex->parsing_options.lookup_keywords_after_qualifier= true;
+ }
+#line 35091 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 719: /* field_spec: field_ident @88 field_type_or_serial opt_check_constraint */
+#line 5868 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->parsing_options.lookup_keywords_after_qualifier= false;
+ (yyval.create_field)= (yyvsp[-2].create_field);
+
+ (yyval.create_field)->check_constraint= (yyvsp[0].virtual_column);
+
+ if (unlikely((yyval.create_field)->check(thd)))
+ MYSQL_YYABORT;
+
+ lex->alter_info.create_list.push_back((yyval.create_field), thd->mem_root);
+
+ (yyval.create_field)->create_if_not_exists= Lex->check_exists;
+ if ((yyval.create_field)->flags & PRI_KEY_FLAG)
+ lex->add_key_to_list(&(yyvsp[-3].lex_str), Key::PRIMARY, lex->check_exists);
+ else if ((yyval.create_field)->flags & UNIQUE_KEY_FLAG)
+ lex->add_key_to_list(&(yyvsp[-3].lex_str), Key::UNIQUE, lex->check_exists);
+ }
+#line 35114 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 720: /* $@89: %empty */
+#line 5890 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->set_attributes(thd, (yyvsp[0].Lex_field_type),
+ COLUMN_DEFINITION_TABLE_FIELD);
+ }
+#line 35123 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 721: /* field_type_or_serial: qualified_field_type $@89 field_def */
+#line 5895 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ auto tmp= (yyvsp[-2].Lex_field_type).charset_collation_attrs();
+ if (tmp.merge_column_charset_clause_and_collate_clause((yyvsp[0].Lex_exact_charset_extended_collation_attrs)))
+ MYSQL_YYABORT;
+ Lex->last_field->set_charset_collation_attrs(tmp);
+ }
+#line 35134 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 722: /* $@90: %empty */
+#line 5902 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->set_handler(&type_handler_ulonglong);
+ Lex->last_field->flags|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG
+ | UNSIGNED_FLAG | UNIQUE_KEY_FLAG;
+ Lex->alter_info.flags|= ALTER_ADD_INDEX;
+ }
+#line 35145 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 724: /* opt_serial_attribute: %empty */
+#line 5912 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35151 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 725: /* opt_serial_attribute: opt_serial_attribute_list */
+#line 5913 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35157 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 726: /* opt_serial_attribute_list: opt_serial_attribute_list serial_attribute */
+#line 5917 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35163 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 728: /* opt_asrow_attribute: %empty */
+#line 5922 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35169 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 729: /* opt_asrow_attribute: opt_asrow_attribute_list */
+#line 5923 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35175 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 730: /* opt_asrow_attribute_list: opt_asrow_attribute_list asrow_attribute */
+#line 5927 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35181 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 732: /* field_def: %empty */
+#line 5932 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_exact_charset_extended_collation_attrs).init(); }
+#line 35187 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 734: /* field_def: attribute_list compressed_deprecated_column_attribute */
+#line 5934 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_exact_charset_extended_collation_attrs)= (yyvsp[-1].Lex_exact_charset_extended_collation_attrs); }
+#line 35193 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 735: /* field_def: attribute_list compressed_deprecated_column_attribute attribute_list */
+#line 5936 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (((yyval.Lex_exact_charset_extended_collation_attrs)= (yyvsp[-2].Lex_exact_charset_extended_collation_attrs)).merge_column_collate_clause_and_collate_clause((yyvsp[0].Lex_exact_charset_extended_collation_attrs)))
+ MYSQL_YYABORT;
+ }
+#line 35202 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 736: /* $@91: %empty */
+#line 5941 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->vcol_info= (yyvsp[0].virtual_column);
+ }
+#line 35210 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 737: /* field_def: opt_generated_always AS virtual_column_func $@91 vcol_opt_specifier vcol_opt_attribute */
+#line 5945 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_exact_charset_extended_collation_attrs).init();
+ }
+#line 35218 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 738: /* field_def: opt_generated_always AS ROW_SYM START_SYM opt_asrow_attribute */
+#line 5949 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->last_field_generated_always_as_row_start())
+ MYSQL_YYABORT;
+ (yyval.Lex_exact_charset_extended_collation_attrs).init();
+ }
+#line 35228 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 739: /* field_def: opt_generated_always AS ROW_SYM END opt_asrow_attribute */
+#line 5955 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->last_field_generated_always_as_row_end())
+ MYSQL_YYABORT;
+ (yyval.Lex_exact_charset_extended_collation_attrs).init();
+ }
+#line 35238 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 740: /* opt_generated_always: %empty */
+#line 5963 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35244 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 741: /* opt_generated_always: GENERATED_SYM ALWAYS_SYM */
+#line 5964 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35250 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 742: /* vcol_opt_specifier: %empty */
+#line 5969 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->vcol_info->set_stored_in_db_flag(FALSE);
+ }
+#line 35258 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 743: /* vcol_opt_specifier: VIRTUAL_SYM */
+#line 5973 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->vcol_info->set_stored_in_db_flag(FALSE);
+ }
+#line 35266 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 744: /* vcol_opt_specifier: PERSISTENT_SYM */
+#line 5977 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->vcol_info->set_stored_in_db_flag(TRUE);
+ }
+#line 35274 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 745: /* vcol_opt_specifier: STORED_SYM */
+#line 5981 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->vcol_info->set_stored_in_db_flag(TRUE);
+ }
+#line 35282 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 746: /* vcol_opt_attribute: %empty */
+#line 5987 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35288 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 747: /* vcol_opt_attribute: vcol_opt_attribute_list */
+#line 5988 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35294 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 748: /* vcol_opt_attribute_list: vcol_opt_attribute_list vcol_attribute */
+#line 5992 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35300 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 750: /* vcol_attribute: UNIQUE_SYM */
+#line 5998 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->last_field->flags|= UNIQUE_KEY_FLAG;
+ lex->alter_info.flags|= ALTER_ADD_INDEX;
+ }
+#line 35310 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 751: /* vcol_attribute: UNIQUE_SYM KEY_SYM */
+#line 6004 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->last_field->flags|= UNIQUE_KEY_FLAG;
+ lex->alter_info.flags|= ALTER_ADD_INDEX;
+ }
+#line 35320 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 752: /* vcol_attribute: COMMENT_SYM TEXT_STRING_sys */
+#line 6009 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_field->comment= (yyvsp[0].lex_str); }
+#line 35326 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 753: /* vcol_attribute: INVISIBLE_SYM */
+#line 6011 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->invisible= INVISIBLE_USER;
+ }
+#line 35334 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 754: /* $@92: %empty */
+#line 6018 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ "PARSE_VCOL_EXPR" can only be used by the SQL server
+ when reading a '*.frm' file.
+ Prevent the end user from invoking this command.
+ */
+ MYSQL_YYABORT_UNLESS(Lex->parse_vcol_expr);
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ }
+#line 35349 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 755: /* parse_vcol_expr: PARSE_VCOL_EXPR_SYM $@92 expr */
+#line 6029 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Virtual_column_info *v= add_virtual_expression(thd, (yyvsp[0].item));
+ if (unlikely(!v))
+ MYSQL_YYABORT;
+ Lex->last_field->vcol_info= v;
+ Lex->pop_select(); //main select
+ }
+#line 35361 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 757: /* parenthesized_expr: expr ',' expr_list */
+#line 6041 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[0].item_list)->push_front((yyvsp[-2].item), thd->mem_root);
+ (yyval.item)= new (thd->mem_root) Item_row(thd, *(yyvsp[0].item_list));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 35372 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 758: /* virtual_column_func: '(' parenthesized_expr ')' */
+#line 6051 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Virtual_column_info *v=
+ add_virtual_expression(thd, (yyvsp[-1].item));
+ if (unlikely(!v))
+ MYSQL_YYABORT;
+ (yyval.virtual_column)= v;
+ }
+#line 35384 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 759: /* virtual_column_func: subquery */
+#line 6059 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *item;
+ if (!(item= new (thd->mem_root) Item_singlerow_subselect(thd, (yyvsp[0].select_lex))))
+ MYSQL_YYABORT;
+ Virtual_column_info *v= add_virtual_expression(thd, item);
+ if (unlikely(!v))
+ MYSQL_YYABORT;
+ (yyval.virtual_column)= v;
+ }
+#line 35398 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 763: /* column_default_expr: expr_or_literal */
+#line 6075 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.virtual_column)= add_virtual_expression(thd, (yyvsp[0].item)))))
+ MYSQL_YYABORT;
+ }
+#line 35407 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 764: /* field_type: field_type_all */
+#line 6082 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->map_data_type(Lex_ident_sys(), &((yyval.Lex_field_type)= (yyvsp[0].Lex_field_type)));
+ }
+#line 35415 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 765: /* qualified_field_type: field_type_all */
+#line 6089 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->map_data_type(Lex_ident_sys(), &((yyval.Lex_field_type)= (yyvsp[0].Lex_field_type)));
+ }
+#line 35423 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 766: /* qualified_field_type: sp_decl_ident '.' field_type_all */
+#line 6093 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->map_data_type((yyvsp[-2].ident_sys), &((yyval.Lex_field_type)= (yyvsp[0].Lex_field_type))))
+ MYSQL_YYABORT;
+ }
+#line 35432 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 767: /* udt_name: IDENT_sys */
+#line 6100 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= (yyvsp[0].ident_sys); }
+#line 35438 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 768: /* udt_name: reserved_keyword_udt */
+#line 6101 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= (yyvsp[0].kwd); }
+#line 35444 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 769: /* udt_name: non_reserved_keyword_udt */
+#line 6102 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= (yyvsp[0].kwd); }
+#line 35450 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 775: /* field_type_all: udt_name float_options srid_option */
+#line 6112 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->set_field_type_udt(&(yyval.Lex_field_type), (yyvsp[-2].lex_str), (yyvsp[-1].Lex_length_and_dec)))
+ MYSQL_YYABORT;
+ }
+#line 35459 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 776: /* field_type_numeric: int_type opt_field_length last_field_options */
+#line 6120 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set_handler_length_flags((yyvsp[-2].type_handler), (yyvsp[-1].Lex_length_and_dec), (uint32) (yyvsp[0].ulong_num));
+ }
+#line 35467 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 777: /* field_type_numeric: real_type opt_precision last_field_options */
+#line 6123 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set((yyvsp[-2].type_handler), (yyvsp[-1].Lex_length_and_dec)); }
+#line 35473 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 778: /* field_type_numeric: FLOAT_SYM float_options last_field_options */
+#line 6125 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_float, (yyvsp[-1].Lex_length_and_dec));
+ if ((yyvsp[-1].Lex_length_and_dec).has_explicit_length() && !(yyvsp[-1].Lex_length_and_dec).has_explicit_dec())
+ {
+ if (unlikely((yyvsp[-1].Lex_length_and_dec).length() > PRECISION_FOR_DOUBLE))
+ my_yyabort_error((ER_WRONG_FIELD_SPEC, MYF(0),
+ Lex->last_field->field_name.str));
+ if ((yyvsp[-1].Lex_length_and_dec).length() > PRECISION_FOR_FLOAT)
+ (yyval.Lex_field_type).set(&type_handler_double);
+ else
+ (yyval.Lex_field_type).set(&type_handler_float);
+ }
+ }
+#line 35491 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 779: /* field_type_numeric: BIT_SYM opt_field_length */
+#line 6139 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_bit, (yyvsp[0].Lex_length_and_dec));
+ }
+#line 35499 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 780: /* field_type_numeric: BOOL_SYM */
+#line 6143 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set_handler_length(&type_handler_stiny, 1);
+ }
+#line 35507 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 781: /* field_type_numeric: BOOLEAN_SYM */
+#line 6147 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set_handler_length(&type_handler_stiny, 1);
+ }
+#line 35515 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 782: /* field_type_numeric: DECIMAL_SYM float_options last_field_options */
+#line 6151 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_newdecimal, (yyvsp[-1].Lex_length_and_dec));}
+#line 35521 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 783: /* field_type_numeric: NUMBER_ORACLE_SYM float_options last_field_options */
+#line 6153 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyvsp[-1].Lex_length_and_dec).has_explicit_length())
+ (yyval.Lex_field_type).set(&type_handler_newdecimal, (yyvsp[-1].Lex_length_and_dec));
+ else
+ (yyval.Lex_field_type).set(&type_handler_double);
+ }
+#line 35532 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 784: /* field_type_numeric: NUMERIC_SYM float_options last_field_options */
+#line 6160 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_newdecimal, (yyvsp[-1].Lex_length_and_dec));}
+#line 35538 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 785: /* field_type_numeric: FIXED_SYM float_options last_field_options */
+#line 6162 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_newdecimal, (yyvsp[-1].Lex_length_and_dec));}
+#line 35544 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 786: /* opt_binary_and_compression: %empty */
+#line 6167 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_exact_charset_extended_collation_attrs).init(); }
+#line 35550 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 787: /* opt_binary_and_compression: binary */
+#line 6168 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_exact_charset_extended_collation_attrs)= (yyvsp[0].Lex_exact_charset_extended_collation_attrs); }
+#line 35556 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 788: /* opt_binary_and_compression: binary compressed_deprecated_data_type_attribute */
+#line 6169 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_exact_charset_extended_collation_attrs)= (yyvsp[-1].Lex_exact_charset_extended_collation_attrs); }
+#line 35562 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 789: /* opt_binary_and_compression: compressed opt_binary */
+#line 6170 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_exact_charset_extended_collation_attrs)= (yyvsp[0].Lex_exact_charset_extended_collation_attrs); }
+#line 35568 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 790: /* field_type_string: char opt_field_length opt_binary */
+#line 6175 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_string, (yyvsp[-1].Lex_length_and_dec), (yyvsp[0].Lex_exact_charset_extended_collation_attrs));
+ }
+#line 35576 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 791: /* field_type_string: nchar opt_field_length opt_bin_mod */
+#line 6179 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_string, (yyvsp[-1].Lex_length_and_dec),
+ Lex_exact_charset_extended_collation_attrs::national((yyvsp[0].num)));
+ }
+#line 35585 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 792: /* field_type_string: BINARY opt_field_length */
+#line 6184 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_string, (yyvsp[0].Lex_length_and_dec), &my_charset_bin);
+ }
+#line 35593 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 793: /* field_type_string: varchar opt_field_length opt_binary_and_compression */
+#line 6188 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_varchar, (yyvsp[-1].Lex_length_and_dec), (yyvsp[0].Lex_exact_charset_extended_collation_attrs));
+ }
+#line 35601 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 794: /* field_type_string: VARCHAR2_ORACLE_SYM opt_field_length opt_binary_and_compression */
+#line 6192 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_varchar, (yyvsp[-1].Lex_length_and_dec), (yyvsp[0].Lex_exact_charset_extended_collation_attrs));
+ }
+#line 35609 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 795: /* field_type_string: nvarchar opt_field_length opt_compressed opt_bin_mod */
+#line 6196 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_varchar, (yyvsp[-2].Lex_length_and_dec),
+ Lex_exact_charset_extended_collation_attrs::national((yyvsp[0].num)));
+ }
+#line 35618 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 796: /* field_type_string: VARBINARY opt_field_length opt_compressed */
+#line 6201 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_varchar, (yyvsp[-1].Lex_length_and_dec), &my_charset_bin);
+ }
+#line 35626 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 797: /* field_type_string: RAW_ORACLE_SYM opt_field_length opt_compressed */
+#line 6205 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_varchar, (yyvsp[-1].Lex_length_and_dec), &my_charset_bin);
+ }
+#line 35634 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 798: /* field_type_temporal: YEAR_SYM opt_field_length last_field_options */
+#line 6212 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyvsp[-1].Lex_length_and_dec).has_explicit_length())
+ {
+ if ((yyvsp[-1].Lex_length_and_dec).length() != 4)
+ {
+ char buff[sizeof("YEAR()") + MY_INT64_NUM_DECIMAL_DIGITS + 1];
+ my_snprintf(buff, sizeof(buff), "YEAR(%u)", (uint) (yyvsp[-1].Lex_length_and_dec).length());
+ push_warning_printf(thd, Sql_condition::WARN_LEVEL_NOTE,
+ ER_WARN_DEPRECATED_SYNTAX,
+ ER_THD(thd, ER_WARN_DEPRECATED_SYNTAX),
+ buff, "YEAR(4)");
+ }
+ }
+ (yyval.Lex_field_type).set(&type_handler_year, (yyvsp[-1].Lex_length_and_dec));
+ }
+#line 35654 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 799: /* field_type_temporal: DATE_SYM */
+#line 6227 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_newdate); }
+#line 35660 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 800: /* field_type_temporal: TIME_SYM opt_field_length */
+#line 6229 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(opt_mysql56_temporal_format ?
+ static_cast<const Type_handler*>(&type_handler_time2) :
+ static_cast<const Type_handler*>(&type_handler_time),
+ (yyvsp[0].Lex_length_and_dec));
+ }
+#line 35671 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 801: /* field_type_temporal: TIMESTAMP opt_field_length */
+#line 6236 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(opt_mysql56_temporal_format ?
+ static_cast<const Type_handler*>(&type_handler_timestamp2):
+ static_cast<const Type_handler*>(&type_handler_timestamp),
+ (yyvsp[0].Lex_length_and_dec));
+ }
+#line 35682 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 802: /* field_type_temporal: DATETIME opt_field_length */
+#line 6243 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(thd->type_handler_for_datetime(), (yyvsp[0].Lex_length_and_dec));
+ }
+#line 35690 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 803: /* field_type_lob: TINYBLOB opt_compressed */
+#line 6251 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_tiny_blob, &my_charset_bin);
+ }
+#line 35698 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 804: /* field_type_lob: BLOB_MARIADB_SYM opt_field_length opt_compressed */
+#line 6255 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_blob, (yyvsp[-1].Lex_length_and_dec), &my_charset_bin);
+ }
+#line 35706 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 805: /* field_type_lob: BLOB_ORACLE_SYM field_length opt_compressed */
+#line 6259 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_blob, (yyvsp[-1].Lex_length_and_dec), &my_charset_bin);
+ }
+#line 35714 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 806: /* field_type_lob: BLOB_ORACLE_SYM opt_compressed */
+#line 6263 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_long_blob, &my_charset_bin);
+ }
+#line 35722 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 807: /* field_type_lob: MEDIUMBLOB opt_compressed */
+#line 6267 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_medium_blob, &my_charset_bin);
+ }
+#line 35730 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 808: /* field_type_lob: LONGBLOB opt_compressed */
+#line 6271 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_long_blob, &my_charset_bin);
+ }
+#line 35738 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 809: /* field_type_lob: LONG_SYM VARBINARY opt_compressed */
+#line 6275 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_medium_blob, &my_charset_bin);
+ }
+#line 35746 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 810: /* field_type_lob: LONG_SYM varchar opt_binary_and_compression */
+#line 6279 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_medium_blob, (yyvsp[0].Lex_exact_charset_extended_collation_attrs)); }
+#line 35752 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 811: /* field_type_lob: TINYTEXT opt_binary_and_compression */
+#line 6281 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_tiny_blob, (yyvsp[0].Lex_exact_charset_extended_collation_attrs)); }
+#line 35758 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 812: /* field_type_lob: TEXT_SYM opt_field_length opt_binary_and_compression */
+#line 6283 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_blob, (yyvsp[-1].Lex_length_and_dec), (yyvsp[0].Lex_exact_charset_extended_collation_attrs)); }
+#line 35764 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 813: /* field_type_lob: MEDIUMTEXT opt_binary_and_compression */
+#line 6285 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_medium_blob, (yyvsp[0].Lex_exact_charset_extended_collation_attrs)); }
+#line 35770 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 814: /* field_type_lob: LONGTEXT opt_binary_and_compression */
+#line 6287 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_long_blob, (yyvsp[0].Lex_exact_charset_extended_collation_attrs)); }
+#line 35776 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 815: /* field_type_lob: CLOB_ORACLE_SYM opt_binary_and_compression */
+#line 6289 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_long_blob, (yyvsp[0].Lex_exact_charset_extended_collation_attrs)); }
+#line 35782 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 816: /* field_type_lob: LONG_SYM opt_binary_and_compression */
+#line 6291 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_medium_blob, (yyvsp[0].Lex_exact_charset_extended_collation_attrs)); }
+#line 35788 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 817: /* field_type_lob: JSON_SYM opt_compressed */
+#line 6293 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_field_type).set(&type_handler_long_blob_json, &my_charset_utf8mb4_bin);
+ }
+#line 35796 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 818: /* field_type_misc: ENUM '(' string_list ')' opt_binary */
+#line 6300 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_enum, (yyvsp[0].Lex_exact_charset_extended_collation_attrs)); }
+#line 35802 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 819: /* field_type_misc: SET '(' string_list ')' opt_binary */
+#line 6302 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_field_type).set(&type_handler_set, (yyvsp[0].Lex_exact_charset_extended_collation_attrs)); }
+#line 35808 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 820: /* char: CHAR_SYM */
+#line 6306 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35814 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 821: /* nchar: NCHAR_SYM */
+#line 6310 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35820 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 822: /* nchar: NATIONAL_SYM CHAR_SYM */
+#line 6311 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35826 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 823: /* varchar: char VARYING */
+#line 6315 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35832 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 824: /* varchar: VARCHAR */
+#line 6316 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35838 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 825: /* nvarchar: NATIONAL_SYM VARCHAR */
+#line 6320 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35844 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 826: /* nvarchar: NVARCHAR_SYM */
+#line 6321 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35850 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 827: /* nvarchar: NCHAR_SYM VARCHAR */
+#line 6322 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35856 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 828: /* nvarchar: NATIONAL_SYM CHAR_SYM VARYING */
+#line 6323 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35862 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 829: /* nvarchar: NCHAR_SYM VARYING */
+#line 6324 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 35868 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 830: /* int_type: INT_SYM */
+#line 6328 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.type_handler)= &type_handler_slong; }
+#line 35874 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 831: /* int_type: TINYINT */
+#line 6329 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.type_handler)= &type_handler_stiny; }
+#line 35880 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 832: /* int_type: SMALLINT */
+#line 6330 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.type_handler)= &type_handler_sshort; }
+#line 35886 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 833: /* int_type: MEDIUMINT */
+#line 6331 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.type_handler)= &type_handler_sint24; }
+#line 35892 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 834: /* int_type: BIGINT */
+#line 6332 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.type_handler)= &type_handler_slonglong; }
+#line 35898 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 835: /* real_type: REAL */
+#line 6337 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.type_handler)= thd->variables.sql_mode & MODE_REAL_AS_FLOAT ?
+ static_cast<const Type_handler *>(&type_handler_float) :
+ static_cast<const Type_handler *>(&type_handler_double);
+ }
+#line 35908 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 836: /* real_type: DOUBLE_SYM */
+#line 6342 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.type_handler)= &type_handler_double; }
+#line 35914 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 837: /* real_type: DOUBLE_SYM PRECISION */
+#line 6343 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.type_handler)= &type_handler_double; }
+#line 35920 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 838: /* srid_option: %empty */
+#line 6348 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_field->srid= 0; }
+#line 35926 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 839: /* srid_option: REF_SYSTEM_ID_SYM '=' NUM */
+#line 6351 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->srid=atoi((yyvsp[0].lex_str).str);
+ }
+#line 35934 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 840: /* float_options: %empty */
+#line 6357 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_length_and_dec).reset(); }
+#line 35940 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 843: /* precision: '(' NUM ',' NUM ')' */
+#line 6363 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_length_and_dec).set((yyvsp[-3].lex_str).str, (yyvsp[-1].lex_str).str); }
+#line 35946 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 844: /* field_options: %empty */
+#line 6367 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= 0; }
+#line 35952 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 845: /* field_options: SIGNED_SYM */
+#line 6368 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= 0; }
+#line 35958 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 846: /* field_options: UNSIGNED */
+#line 6369 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= UNSIGNED_FLAG; }
+#line 35964 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 847: /* field_options: ZEROFILL */
+#line 6370 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= UNSIGNED_FLAG | ZEROFILL_FLAG; }
+#line 35970 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 848: /* field_options: UNSIGNED ZEROFILL */
+#line 6371 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= UNSIGNED_FLAG | ZEROFILL_FLAG; }
+#line 35976 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 849: /* field_options: ZEROFILL UNSIGNED */
+#line 6372 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= UNSIGNED_FLAG | ZEROFILL_FLAG; }
+#line 35982 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 850: /* last_field_options: field_options */
+#line 6376 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_field->flags|= ((yyval.ulong_num)= (yyvsp[0].ulong_num)); }
+#line 35988 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 851: /* field_length_str: '(' LONG_NUM ')' */
+#line 6380 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.const_simple_string)= (yyvsp[-1].lex_str).str; }
+#line 35994 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 852: /* field_length_str: '(' ULONGLONG_NUM ')' */
+#line 6381 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.const_simple_string)= (yyvsp[-1].lex_str).str; }
+#line 36000 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 853: /* field_length_str: '(' DECIMAL_NUM ')' */
+#line 6382 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.const_simple_string)= (yyvsp[-1].lex_str).str; }
+#line 36006 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 854: /* field_length_str: '(' NUM ')' */
+#line 6383 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.const_simple_string)= (yyvsp[-1].lex_str).str; }
+#line 36012 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 855: /* field_length: field_length_str */
+#line 6386 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_length_and_dec).set((yyvsp[0].const_simple_string), NULL); }
+#line 36018 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 856: /* field_scale: field_length_str */
+#line 6390 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_length_and_dec).set(NULL, (yyvsp[0].const_simple_string)); }
+#line 36024 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 857: /* opt_field_length: %empty */
+#line 6395 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_length_and_dec).reset(); /* use default length */ }
+#line 36030 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 859: /* opt_field_scale: %empty */
+#line 6400 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_length_and_dec).reset(); }
+#line 36036 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 861: /* opt_precision: %empty */
+#line 6405 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_length_and_dec).reset(); }
+#line 36042 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 862: /* opt_precision: precision */
+#line 6406 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_length_and_dec)= (yyvsp[0].Lex_length_and_dec); }
+#line 36048 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 863: /* attribute_list: attribute_list attribute */
+#line 6412 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (((yyval.Lex_exact_charset_extended_collation_attrs)= (yyvsp[-1].Lex_exact_charset_extended_collation_attrs)).merge_column_collate_clause_and_collate_clause((yyvsp[0].Lex_exact_charset_extended_collation_attrs)))
+ MYSQL_YYABORT;
+ }
+#line 36057 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 865: /* attribute: NULL_SYM */
+#line 6421 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->flags&= ~NOT_NULL_FLAG;
+ Lex->last_field->explicitly_nullable= true;
+ (yyval.Lex_exact_charset_extended_collation_attrs).init();
+ }
+#line 36067 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 866: /* attribute: DEFAULT column_default_expr */
+#line 6427 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->default_value= (yyvsp[0].virtual_column);
+ (yyval.Lex_exact_charset_extended_collation_attrs).init();
+ }
+#line 36076 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 867: /* attribute: ON UPDATE_SYM NOW_SYM opt_default_time_precision */
+#line 6432 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *item= new (thd->mem_root) Item_func_now_local(thd, (yyvsp[0].num));
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ Lex->last_field->on_update= item;
+ (yyval.Lex_exact_charset_extended_collation_attrs).init();
+ }
+#line 36088 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 868: /* attribute: AUTO_INC */
+#line 6439 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_field->flags|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG; (yyval.Lex_exact_charset_extended_collation_attrs).init(); }
+#line 36094 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 869: /* attribute: SERIAL_SYM DEFAULT VALUE_SYM */
+#line 6441 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->last_field->flags|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNIQUE_KEY_FLAG;
+ lex->alter_info.flags|= ALTER_ADD_INDEX;
+ (yyval.Lex_exact_charset_extended_collation_attrs).init();
+ }
+#line 36105 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 870: /* attribute: COLLATE_SYM collation_name */
+#line 6448 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_exact_charset_extended_collation_attrs)= Lex_exact_charset_extended_collation_attrs((yyvsp[0].Lex_extended_collation));
+ }
+#line 36113 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 871: /* attribute: serial_attribute */
+#line 6451 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_exact_charset_extended_collation_attrs).init(); }
+#line 36119 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 872: /* opt_compression_method: %empty */
+#line 6455 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.const_simple_string)= NULL; }
+#line 36125 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 873: /* opt_compression_method: equal ident */
+#line 6456 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.const_simple_string)= (yyvsp[0].ident_sys).str; }
+#line 36131 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 874: /* opt_compressed: %empty */
+#line 6460 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36137 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 875: /* opt_compressed: compressed */
+#line 6461 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 36143 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 876: /* opt_enable: %empty */
+#line 6465 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36149 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 877: /* opt_enable: ENABLE_SYM */
+#line 6466 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 36155 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 878: /* compressed: COMPRESSED_SYM opt_compression_method */
+#line 6471 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->last_field->set_compressed((yyvsp[0].const_simple_string))))
+ MYSQL_YYABORT;
+ }
+#line 36164 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 879: /* compressed_deprecated_data_type_attribute: COMPRESSED_SYM opt_compression_method */
+#line 6479 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->last_field->set_compressed_deprecated(thd, (yyvsp[0].const_simple_string))))
+ MYSQL_YYABORT;
+ }
+#line 36173 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 880: /* compressed_deprecated_column_attribute: COMPRESSED_SYM opt_compression_method */
+#line 6487 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->last_field->
+ set_compressed_deprecated_column_attribute(thd, (yyvsp[-1].kwd).pos(), (yyvsp[0].const_simple_string))))
+ MYSQL_YYABORT;
+ }
+#line 36183 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 881: /* asrow_attribute: not NULL_SYM opt_enable */
+#line 6496 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->flags|= NOT_NULL_FLAG;
+ }
+#line 36191 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 882: /* asrow_attribute: opt_primary KEY_SYM */
+#line 6500 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->last_field->flags|= PRI_KEY_FLAG | NOT_NULL_FLAG;
+ lex->alter_info.flags|= ALTER_ADD_INDEX;
+ }
+#line 36201 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 885: /* serial_attribute: engine_defined_option */
+#line 6511 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[0].engine_option_value_ptr)->link(&Lex->last_field->option_list, &Lex->option_list_last);
+ }
+#line 36209 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 886: /* serial_attribute: with_or_without_system VERSIONING_SYM */
+#line 6515 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->versioning= (yyvsp[-1].vers_column_versioning);
+ Lex->create_info.options|= HA_VERSIONED_TABLE;
+ if (Lex->alter_info.flags & ALTER_DROP_SYSTEM_VERSIONING)
+ {
+ my_yyabort_error((ER_VERS_NOT_VERSIONED, MYF(0),
+ Lex->create_last_non_select_table->table_name.str));
+ }
+ }
+#line 36223 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 887: /* with_or_without_system: WITH_SYSTEM_SYM */
+#line 6528 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.flags|= ALTER_COLUMN_UNVERSIONED;
+ Lex->create_info.vers_info.versioned_fields= true;
+ (yyval.vers_column_versioning)= Column_definition::WITH_VERSIONING;
+ }
+#line 36233 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 888: /* with_or_without_system: WITHOUT SYSTEM */
+#line 6534 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.flags|= ALTER_COLUMN_UNVERSIONED;
+ Lex->create_info.vers_info.unversioned_fields= true;
+ (yyval.vers_column_versioning)= Column_definition::WITHOUT_VERSIONING;
+ }
+#line 36243 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 889: /* charset: CHAR_SYM SET */
+#line 6543 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.kwd)= (yyvsp[-1].kwd); }
+#line 36249 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 890: /* charset: CHARSET */
+#line 6544 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.kwd)= (yyvsp[0].kwd); }
+#line 36255 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 891: /* charset_name: ident_or_text */
+#line 6549 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ myf utf8_flag= thd->get_utf8_flag();
+ if (unlikely(!((yyval.charset)=get_charset_by_csname((yyvsp[0].lex_str).str, MY_CS_PRIMARY,
+ MYF(utf8_flag)))))
+ my_yyabort_error((ER_UNKNOWN_CHARACTER_SET, MYF(0), (yyvsp[0].lex_str).str));
+ }
+#line 36266 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 892: /* charset_name: BINARY */
+#line 6555 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.charset)= &my_charset_bin; }
+#line 36272 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 893: /* charset_name_or_default: charset_name */
+#line 6559 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.charset)=(yyvsp[0].charset); }
+#line 36278 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 894: /* charset_name_or_default: DEFAULT */
+#line 6560 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.charset)=NULL; }
+#line 36284 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 895: /* opt_load_data_charset: %empty */
+#line 6564 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.charset)= NULL; }
+#line 36290 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 896: /* opt_load_data_charset: charset charset_name_or_default */
+#line 6565 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.charset)= (yyvsp[0].charset); }
+#line 36296 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 897: /* old_or_new_charset_name: ident_or_text */
+#line 6570 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ myf utf8_flag= thd->get_utf8_flag();
+ if (unlikely(!((yyval.charset)=get_charset_by_csname((yyvsp[0].lex_str).str,
+ MY_CS_PRIMARY,
+ MYF(utf8_flag))) &&
+ !((yyval.charset)=get_old_charset_by_name((yyvsp[0].lex_str).str))))
+ my_yyabort_error((ER_UNKNOWN_CHARACTER_SET, MYF(0), (yyvsp[0].lex_str).str));
+ }
+#line 36309 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 898: /* old_or_new_charset_name: BINARY */
+#line 6578 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.charset)= &my_charset_bin; }
+#line 36315 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 899: /* old_or_new_charset_name_or_default: old_or_new_charset_name */
+#line 6582 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.charset)=(yyvsp[0].charset); }
+#line 36321 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 900: /* old_or_new_charset_name_or_default: DEFAULT */
+#line 6583 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.charset)=NULL; }
+#line 36327 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 901: /* collation_name: ident_or_text */
+#line 6588 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyval.Lex_extended_collation).set_by_name((yyvsp[0].lex_str).str, thd->get_utf8_flag()))
+ MYSQL_YYABORT;
+ }
+#line 36336 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 902: /* collation_name_or_default: collation_name */
+#line 6595 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_extended_collation)=(yyvsp[0].Lex_extended_collation); }
+#line 36342 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 903: /* collation_name_or_default: DEFAULT */
+#line 6596 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_extended_collation).set_collate_default(); }
+#line 36348 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 904: /* opt_default: %empty */
+#line 6600 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36354 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 905: /* opt_default: DEFAULT */
+#line 6601 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36360 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 906: /* charset_or_alias: charset charset_name */
+#line 6605 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.charset)= (yyvsp[0].charset); }
+#line 36366 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 907: /* charset_or_alias: ASCII_SYM */
+#line 6606 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.charset)= &my_charset_latin1; }
+#line 36372 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 908: /* charset_or_alias: UNICODE_SYM */
+#line 6608 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.charset)= get_charset_by_csname("ucs2", MY_CS_PRIMARY,MYF(0)))))
+ my_yyabort_error((ER_UNKNOWN_CHARACTER_SET, MYF(0), "ucs2"));
+ }
+#line 36381 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 909: /* opt_binary: %empty */
+#line 6615 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_exact_charset_extended_collation_attrs).init(); }
+#line 36387 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 911: /* binary: BYTE_SYM */
+#line 6621 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_exact_charset_extended_collation_attrs).set_charset(Lex_exact_charset(&my_charset_bin));
+ }
+#line 36395 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 912: /* binary: charset_or_alias */
+#line 6625 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_exact_charset_extended_collation_attrs).set_charset(Lex_exact_charset((yyvsp[0].charset)));
+ }
+#line 36403 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 913: /* binary: charset_or_alias BINARY */
+#line 6629 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyval.Lex_exact_charset_extended_collation_attrs).set_charset_collate_binary(Lex_exact_charset((yyvsp[-1].charset))))
+ MYSQL_YYABORT;
+ }
+#line 36412 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 914: /* binary: BINARY */
+#line 6633 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_exact_charset_extended_collation_attrs).set_contextually_typed_binary_style(); }
+#line 36418 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 915: /* binary: BINARY charset_or_alias */
+#line 6635 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyval.Lex_exact_charset_extended_collation_attrs).set_charset_collate_binary(Lex_exact_charset((yyvsp[0].charset))))
+ MYSQL_YYABORT;
+ }
+#line 36427 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 916: /* binary: charset_or_alias COLLATE_SYM DEFAULT */
+#line 6640 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_exact_charset_extended_collation_attrs).set_charset_collate_default(Lex_exact_charset((yyvsp[-2].charset)));
+ }
+#line 36435 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 917: /* binary: charset_or_alias COLLATE_SYM collation_name */
+#line 6644 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyvsp[0].Lex_extended_collation).merge_exact_charset(Lex_exact_charset((yyvsp[-2].charset))))
+ MYSQL_YYABORT;
+ (yyval.Lex_exact_charset_extended_collation_attrs)= Lex_exact_charset_extended_collation_attrs((yyvsp[0].Lex_extended_collation));
+ }
+#line 36445 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 918: /* binary: COLLATE_SYM collation_name */
+#line 6650 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_exact_charset_extended_collation_attrs)= Lex_exact_charset_extended_collation_attrs((yyvsp[0].Lex_extended_collation));
+ }
+#line 36453 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 919: /* binary: COLLATE_SYM DEFAULT */
+#line 6654 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_exact_charset_extended_collation_attrs).set_collate_default();
+ }
+#line 36461 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 920: /* opt_bin_mod: %empty */
+#line 6660 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= false; }
+#line 36467 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 921: /* opt_bin_mod: BINARY */
+#line 6661 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= true; }
+#line 36473 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 922: /* $@93: %empty */
+#line 6666 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[0].ulong_num) == 0))
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ }
+#line 36485 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 923: /* ws_nweights: '(' real_ulong_num $@93 ')' */
+#line 6674 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= (yyvsp[-2].ulong_num); }
+#line 36491 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 924: /* ws_level_flag_desc: ASC */
+#line 6678 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= 0; }
+#line 36497 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 925: /* ws_level_flag_desc: DESC */
+#line 6679 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= 1 << MY_STRXFRM_DESC_SHIFT; }
+#line 36503 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 926: /* ws_level_flag_reverse: REVERSE_SYM */
+#line 6683 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= 1 << MY_STRXFRM_REVERSE_SHIFT; }
+#line 36509 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 927: /* ws_level_flags: %empty */
+#line 6686 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= 0; }
+#line 36515 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 928: /* ws_level_flags: ws_level_flag_desc */
+#line 6687 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
+#line 36521 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 929: /* ws_level_flags: ws_level_flag_desc ws_level_flag_reverse */
+#line 6688 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= (yyvsp[-1].ulong_num) | (yyvsp[0].ulong_num); }
+#line 36527 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 930: /* ws_level_flags: ws_level_flag_reverse */
+#line 6689 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= (yyvsp[0].ulong_num) ; }
+#line 36533 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 931: /* ws_level_number: real_ulong_num */
+#line 6694 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.ulong_num)= (yyvsp[0].ulong_num) < 1 ? 1 : ((yyvsp[0].ulong_num) > MY_STRXFRM_NLEVELS ? MY_STRXFRM_NLEVELS : (yyvsp[0].ulong_num));
+ (yyval.ulong_num)--;
+ }
+#line 36542 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 932: /* ws_level_list_item: ws_level_number ws_level_flags */
+#line 6702 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.ulong_num)= (1 | (yyvsp[0].ulong_num)) << (yyvsp[-1].ulong_num);
+ }
+#line 36550 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 933: /* ws_level_list: ws_level_list_item */
+#line 6708 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
+#line 36556 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 934: /* ws_level_list: ws_level_list ',' ws_level_list_item */
+#line 6709 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)|= (yyvsp[0].ulong_num); }
+#line 36562 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 935: /* ws_level_range: ws_level_number '-' ws_level_number */
+#line 6714 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ uint start= (yyvsp[-2].ulong_num);
+ uint end= (yyvsp[0].ulong_num);
+ for ((yyval.ulong_num)= 0; start <= end; start++)
+ (yyval.ulong_num)|= (1 << start);
+ }
+#line 36573 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 936: /* ws_level_list_or_range: ws_level_list */
+#line 6723 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
+#line 36579 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 937: /* ws_level_list_or_range: ws_level_range */
+#line 6724 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
+#line 36585 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 938: /* opt_ws_levels: %empty */
+#line 6728 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= 0; }
+#line 36591 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 939: /* opt_ws_levels: LEVEL_SYM ws_level_list_or_range */
+#line 6729 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= (yyvsp[0].ulong_num); }
+#line 36597 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 942: /* references: REFERENCES table_ident opt_ref_list opt_match_clause opt_on_update_delete */
+#line 6743 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.table)=(yyvsp[-3].table);
+ }
+#line 36605 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 943: /* opt_ref_list: %empty */
+#line 6750 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ref_list.empty(); }
+#line 36611 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 945: /* ref_list: ref_list ',' ident */
+#line 6756 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Key_part_spec *key= new (thd->mem_root) Key_part_spec(&(yyvsp[0].ident_sys), 0);
+ if (unlikely(key == NULL))
+ MYSQL_YYABORT;
+ Lex->ref_list.push_back(key, thd->mem_root);
+ }
+#line 36622 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 946: /* ref_list: ident */
+#line 6763 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Key_part_spec *key= new (thd->mem_root) Key_part_spec(&(yyvsp[0].ident_sys), 0);
+ if (unlikely(key == NULL))
+ MYSQL_YYABORT;
+ LEX *lex= Lex;
+ lex->ref_list.empty();
+ lex->ref_list.push_back(key, thd->mem_root);
+ }
+#line 36635 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 947: /* opt_match_clause: %empty */
+#line 6775 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->fk_match_option= Foreign_key::FK_MATCH_UNDEF; }
+#line 36641 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 948: /* opt_match_clause: MATCH FULL */
+#line 6777 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->fk_match_option= Foreign_key::FK_MATCH_FULL; }
+#line 36647 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 949: /* opt_match_clause: MATCH PARTIAL */
+#line 6779 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->fk_match_option= Foreign_key::FK_MATCH_PARTIAL; }
+#line 36653 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 950: /* opt_match_clause: MATCH SIMPLE_SYM */
+#line 6781 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->fk_match_option= Foreign_key::FK_MATCH_SIMPLE; }
+#line 36659 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 951: /* opt_on_update_delete: %empty */
+#line 6786 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->fk_update_opt= FK_OPTION_UNDEF;
+ lex->fk_delete_opt= FK_OPTION_UNDEF;
+ }
+#line 36669 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 952: /* opt_on_update_delete: ON UPDATE_SYM delete_option */
+#line 6792 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->fk_update_opt= (yyvsp[0].m_fk_option);
+ lex->fk_delete_opt= FK_OPTION_UNDEF;
+ }
+#line 36679 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 953: /* opt_on_update_delete: ON DELETE_SYM delete_option */
+#line 6798 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->fk_update_opt= FK_OPTION_UNDEF;
+ lex->fk_delete_opt= (yyvsp[0].m_fk_option);
+ }
+#line 36689 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 954: /* opt_on_update_delete: ON UPDATE_SYM delete_option ON DELETE_SYM delete_option */
+#line 6805 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->fk_update_opt= (yyvsp[-3].m_fk_option);
+ lex->fk_delete_opt= (yyvsp[0].m_fk_option);
+ }
+#line 36699 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 955: /* opt_on_update_delete: ON DELETE_SYM delete_option ON UPDATE_SYM delete_option */
+#line 6812 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->fk_update_opt= (yyvsp[0].m_fk_option);
+ lex->fk_delete_opt= (yyvsp[-3].m_fk_option);
+ }
+#line 36709 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 956: /* delete_option: RESTRICT */
+#line 6820 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.m_fk_option)= FK_OPTION_RESTRICT; }
+#line 36715 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 957: /* delete_option: CASCADE */
+#line 6821 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.m_fk_option)= FK_OPTION_CASCADE; }
+#line 36721 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 958: /* delete_option: SET NULL_SYM */
+#line 6822 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.m_fk_option)= FK_OPTION_SET_NULL; }
+#line 36727 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 959: /* delete_option: NO_SYM ACTION */
+#line 6823 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.m_fk_option)= FK_OPTION_NO_ACTION; }
+#line 36733 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 960: /* delete_option: SET DEFAULT */
+#line 6824 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.m_fk_option)= FK_OPTION_SET_DEFAULT; }
+#line 36739 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 961: /* constraint_key_type: PRIMARY_SYM KEY_SYM */
+#line 6828 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.key_type)= Key::PRIMARY; }
+#line 36745 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 962: /* constraint_key_type: UNIQUE_SYM opt_key_or_index */
+#line 6829 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.key_type)= Key::UNIQUE; }
+#line 36751 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 963: /* key_or_index: KEY_SYM */
+#line 6833 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36757 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 964: /* key_or_index: INDEX_SYM */
+#line 6834 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36763 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 965: /* opt_key_or_index: %empty */
+#line 6838 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36769 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 967: /* keys_or_index: KEYS */
+#line 6843 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36775 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 968: /* keys_or_index: INDEX_SYM */
+#line 6844 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36781 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 969: /* keys_or_index: INDEXES */
+#line 6845 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36787 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 970: /* fulltext: FULLTEXT_SYM */
+#line 6849 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.key_type)= Key::FULLTEXT;}
+#line 36793 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 971: /* spatial: SPATIAL_SYM */
+#line 6854 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+#ifdef HAVE_SPATIAL
+ (yyval.key_type)= Key::SPATIAL;
+#else
+ my_yyabort_error((ER_FEATURE_DISABLED, MYF(0), sym_group_geom.name,
+ sym_group_geom.needed_define));
+#endif
+ }
+#line 36806 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 972: /* normal_key_options: %empty */
+#line 6865 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36812 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 973: /* normal_key_options: normal_key_opts */
+#line 6866 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_key->option_list= Lex->option_list; }
+#line 36818 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 974: /* fulltext_key_options: %empty */
+#line 6870 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36824 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 975: /* fulltext_key_options: fulltext_key_opts */
+#line 6871 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_key->option_list= Lex->option_list; }
+#line 36830 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 976: /* spatial_key_options: %empty */
+#line 6875 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36836 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 977: /* spatial_key_options: spatial_key_opts */
+#line 6876 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_key->option_list= Lex->option_list; }
+#line 36842 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 984: /* opt_USING_key_algorithm: %empty */
+#line 6895 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.key_alg)= HA_KEY_ALG_UNDEF; }
+#line 36848 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 985: /* opt_USING_key_algorithm: USING btree_or_rtree */
+#line 6896 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.key_alg)= (yyvsp[0].key_alg); }
+#line 36854 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 986: /* opt_key_algorithm_clause: %empty */
+#line 6901 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.key_alg)= HA_KEY_ALG_UNDEF; }
+#line 36860 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 987: /* opt_key_algorithm_clause: USING btree_or_rtree */
+#line 6902 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.key_alg)= (yyvsp[0].key_alg); }
+#line 36866 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 988: /* opt_key_algorithm_clause: TYPE_SYM btree_or_rtree */
+#line 6903 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.key_alg)= (yyvsp[0].key_alg); }
+#line 36872 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 989: /* key_using_alg: USING btree_or_rtree */
+#line 6908 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_key->key_create_info.algorithm= (yyvsp[0].key_alg); }
+#line 36878 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 990: /* key_using_alg: TYPE_SYM btree_or_rtree */
+#line 6910 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_key->key_create_info.algorithm= (yyvsp[0].key_alg); }
+#line 36884 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 991: /* all_key_opt: KEY_BLOCK_SIZE opt_equal ulong_num */
+#line 6915 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_key->key_create_info.block_size= (yyvsp[0].ulong_num);
+ Lex->last_key->key_create_info.flags|= HA_USES_BLOCK_SIZE;
+ }
+#line 36893 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 992: /* all_key_opt: COMMENT_SYM TEXT_STRING_sys */
+#line 6920 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_key->key_create_info.comment= (yyvsp[0].lex_str); }
+#line 36899 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 993: /* all_key_opt: VISIBLE_SYM */
+#line 6922 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* This is mainly for MySQL 8.0 compatibility */
+ }
+#line 36907 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 994: /* all_key_opt: ignorability */
+#line 6926 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_key->key_create_info.is_ignored= (yyvsp[0].num);
+ }
+#line 36915 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 995: /* all_key_opt: engine_defined_option */
+#line 6930 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[0].engine_option_value_ptr)->link(&Lex->option_list, &Lex->option_list_last);
+ }
+#line 36923 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1000: /* fulltext_key_opt: WITH PARSER_SYM IDENT_sys */
+#line 6947 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (likely(plugin_is_ready(&(yyvsp[0].ident_sys), MYSQL_FTPARSER_PLUGIN)))
+ Lex->last_key->key_create_info.parser_name= (yyvsp[0].ident_sys);
+ else
+ my_yyabort_error((ER_FUNCTION_NOT_DEFINED, MYF(0), (yyvsp[0].ident_sys).str));
+ }
+#line 36934 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1001: /* btree_or_rtree: BTREE_SYM */
+#line 6956 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.key_alg)= HA_KEY_ALG_BTREE; }
+#line 36940 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1002: /* btree_or_rtree: RTREE_SYM */
+#line 6957 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.key_alg)= HA_KEY_ALG_RTREE; }
+#line 36946 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1003: /* btree_or_rtree: HASH_SYM */
+#line 6958 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.key_alg)= HA_KEY_ALG_HASH; }
+#line 36952 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1004: /* ignorability: IGNORED_SYM */
+#line 6962 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= true; }
+#line 36958 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1005: /* ignorability: NOT_SYM IGNORED_SYM */
+#line 6963 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= false; }
+#line 36964 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1006: /* key_list: key_list ',' key_part order_dir */
+#line 6968 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-1].key_part)->asc= (yyvsp[0].num);
+ Lex->last_key->columns.push_back((yyvsp[-1].key_part), thd->mem_root);
+ }
+#line 36973 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1007: /* key_list: key_part order_dir */
+#line 6973 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-1].key_part)->asc= (yyvsp[0].num);
+ Lex->last_key->columns.push_back((yyvsp[-1].key_part), thd->mem_root);
+ }
+#line 36982 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1008: /* opt_without_overlaps: %empty */
+#line 6980 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 36988 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1009: /* opt_without_overlaps: ',' ident WITHOUT OVERLAPS_SYM */
+#line 6982 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_key->without_overlaps= true;
+ Lex->last_key->period= (yyvsp[-2].ident_sys);
+ }
+#line 36997 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1010: /* key_part: ident */
+#line 6990 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.key_part)= new (thd->mem_root) Key_part_spec(&(yyvsp[0].ident_sys), 0);
+ if (unlikely((yyval.key_part) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 37007 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1011: /* key_part: ident '(' NUM ')' */
+#line 6996 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ int key_part_len= atoi((yyvsp[-1].lex_str).str);
+ if (unlikely(!key_part_len))
+ my_yyabort_error((ER_KEY_PART_0, MYF(0), (yyvsp[-3].ident_sys).str));
+ (yyval.key_part)= new (thd->mem_root) Key_part_spec(&(yyvsp[-3].ident_sys), (uint) key_part_len);
+ if (unlikely((yyval.key_part) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 37020 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1012: /* opt_ident: %empty */
+#line 7007 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= null_clex_str; }
+#line 37026 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1013: /* opt_ident: field_ident */
+#line 7008 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= (yyvsp[0].lex_str); }
+#line 37032 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1014: /* string_list: text_string */
+#line 7013 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_field->interval_list.push_back((yyvsp[0].string), thd->mem_root); }
+#line 37038 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1015: /* string_list: string_list ',' text_string */
+#line 7015 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->last_field->interval_list.push_back((yyvsp[0].string), thd->mem_root); }
+#line 37044 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1016: /* $@94: %empty */
+#line 7024 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->name= null_clex_str;
+ Lex->table_type= TABLE_TYPE_UNKNOWN;
+ Lex->sql_command= SQLCOM_ALTER_TABLE;
+ Lex->duplicates= DUP_ERROR;
+ Lex->first_select_lex()->order_list.empty();
+ Lex->create_info.init();
+ Lex->create_info.row_type= ROW_TYPE_NOT_USED;
+ Lex->alter_info.reset();
+ Lex->no_write_to_binlog= 0;
+ Lex->create_info.storage_media= HA_SM_DEFAULT;
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ DBUG_ASSERT(!Lex->m_sql_cmd);
+ }
+#line 37064 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1017: /* $@95: %empty */
+#line 7040 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.set((yyvsp[-2].object_ddl_options));
+ if (!Lex->first_select_lex()->
+ add_table_to_list(thd, (yyvsp[-1].table), NULL, TL_OPTION_UPDATING,
+ TL_READ_NO_INSERT, MDL_SHARED_UPGRADABLE))
+ MYSQL_YYABORT;
+ Lex->first_select_lex()->db=
+ (Lex->first_select_lex()->table_list.first)->db;
+ Lex->create_last_non_select_table= Lex->last_table();
+ Lex->mark_first_table_as_inserting();
+ }
+#line 37080 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1018: /* alter: ALTER $@94 alter_options TABLE_SYM opt_if_exists table_ident opt_lock_wait_timeout $@95 alter_commands */
+#line 7052 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (likely(!Lex->m_sql_cmd))
+ {
+ /* Create a generic ALTER TABLE statment. */
+ Lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table();
+ if (unlikely(Lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+ Lex->pop_select(); //main select
+ }
+#line 37095 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1019: /* $@96: %empty */
+#line 7063 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.init();
+ if (Lex->main_select_push(true))
+ MYSQL_YYABORT;
+ }
+#line 37105 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1020: /* alter: ALTER DATABASE ident_or_empty $@96 create_database_options */
+#line 7069 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command=SQLCOM_ALTER_DB;
+ lex->name= (yyvsp[-2].ident_sys);
+ if (lex->name.str == NULL &&
+ unlikely(lex->copy_db_to(&lex->name)))
+ MYSQL_YYABORT;
+ Lex->pop_select(); //main select
+ }
+#line 37119 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1021: /* $@97: %empty */
+#line 7079 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.init();
+ Lex->create_info.schema_comment= thd->make_clex_string((yyvsp[0].lex_str));
+ Lex->create_info.used_fields|= HA_CREATE_USED_COMMENT;
+ }
+#line 37129 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1022: /* alter: ALTER DATABASE COMMENT_SYM opt_equal TEXT_STRING_sys $@97 opt_create_database_options */
+#line 7085 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command=SQLCOM_ALTER_DB;
+ lex->name= Lex_ident_sys();
+ if (lex->name.str == NULL &&
+ unlikely(lex->copy_db_to(&lex->name)))
+ MYSQL_YYABORT;
+ }
+#line 37142 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1023: /* alter: ALTER DATABASE ident UPGRADE_SYM DATA_SYM DIRECTORY_SYM NAME_SYM */
+#line 7094 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(lex->sphead))
+ my_yyabort_error((ER_SP_NO_DROP_SP, MYF(0), "DATABASE"));
+ lex->sql_command= SQLCOM_ALTER_DB_UPGRADE;
+ lex->name= (yyvsp[-4].ident_sys);
+ }
+#line 37154 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1024: /* $@98: %empty */
+#line 7102 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_alter_procedure_start((yyvsp[0].spname)))
+ MYSQL_YYABORT;
+ }
+#line 37163 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1025: /* alter: ALTER PROCEDURE_SYM sp_name $@98 sp_a_chistics stmt_end */
+#line 7107 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 37169 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1026: /* $@99: %empty */
+#line 7109 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_alter_function_start((yyvsp[0].spname)))
+ MYSQL_YYABORT;
+ }
+#line 37178 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1027: /* alter: ALTER FUNCTION_SYM sp_name $@99 sp_a_chistics stmt_end */
+#line 7114 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 37184 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1028: /* $@100: %empty */
+#line 7116 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ if (Lex->add_alter_view(thd, (yyvsp[-4].num), (yyvsp[-2].view_suid), (yyvsp[0].table)))
+ MYSQL_YYABORT;
+ }
+#line 37195 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1029: /* alter: ALTER view_algorithm definer_opt opt_view_suid VIEW_SYM table_ident $@100 view_list_opt AS view_select stmt_end */
+#line 7122 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 37201 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1030: /* $@101: %empty */
+#line 7129 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ if (Lex->add_alter_view(thd, VIEW_ALGORITHM_INHERIT, (yyvsp[-2].view_suid), (yyvsp[0].table)))
+ MYSQL_YYABORT;
+ }
+#line 37212 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1031: /* alter: ALTER definer_opt opt_view_suid VIEW_SYM table_ident $@101 view_list_opt AS view_select stmt_end */
+#line 7135 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 37218 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1032: /* $@102: %empty */
+#line 7137 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ /*
+ It is safe to use Lex->spname because
+ ALTER EVENT xxx RENATE TO yyy DO ALTER EVENT RENAME TO
+ is not allowed. Lex->spname is used in the case of RENAME TO
+ If it had to be supported spname had to be added to
+ Event_parse_data.
+ */
+
+ if (unlikely(!(Lex->event_parse_data= Event_parse_data::new_instance(thd))))
+ MYSQL_YYABORT;
+ Lex->event_parse_data->identifier= (yyvsp[0].spname);
+
+ Lex->sql_command= SQLCOM_ALTER_EVENT;
+ Lex->stmt_definition_begin= (yyvsp[-2].simple_string);
+ }
+#line 37241 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1033: /* alter: ALTER definer_opt remember_name EVENT_SYM sp_name $@102 ev_alter_on_schedule_completion opt_ev_rename_to opt_ev_status opt_ev_comment opt_ev_sql_stmt */
+#line 7160 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyvsp[-4].num) || (yyvsp[-3].num) || (yyvsp[-2].num) || (yyvsp[-1].num) || (yyvsp[0].num))))
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ /*
+ sql_command is set here because some rules in ev_sql_stmt
+ can overwrite it
+ */
+ Lex->sql_command= SQLCOM_ALTER_EVENT;
+ Lex->stmt_definition_end= (char*)YYLIP->get_cpp_ptr();
+
+ Lex->pop_select(); //main select
+ }
+#line 37261 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1034: /* $@103: %empty */
+#line 7176 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_ALTER_SERVER;
+ lex->server_options.reset((yyvsp[0].lex_str));
+ }
+#line 37271 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1035: /* alter: ALTER SERVER_SYM ident_or_text $@103 OPTIONS_SYM '(' server_options_list ')' */
+#line 7180 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 37277 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1036: /* alter: ALTER USER_SYM opt_if_exists clear_privileges grant_list opt_require_clause opt_resource_options opt_account_locking_and_opt_password_expiration */
+#line 7184 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_info.set((yyvsp[-5].object_ddl_options));
+ Lex->sql_command= SQLCOM_ALTER_USER;
+ }
+#line 37286 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1037: /* $@104: %empty */
+#line 7189 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_ALTER_SEQUENCE;
+ DBUG_ASSERT(!lex->m_sql_cmd);
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ }
+#line 37298 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1038: /* $@105: %empty */
+#line 7197 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (!(lex->create_info.seq_create_info= new (thd->mem_root)
+ sequence_definition()) ||
+ !lex->first_select_lex()->
+ add_table_to_list(thd, (yyvsp[0].table), NULL, TL_OPTION_SEQUENCE,
+ TL_WRITE, MDL_EXCLUSIVE))
+ MYSQL_YYABORT;
+ }
+#line 37312 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1039: /* $@106: %empty */
+#line 7207 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* Create a generic ALTER SEQUENCE statment. */
+ Lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_sequence((yyvsp[-4].object_ddl_options));
+ if (unlikely(Lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 37323 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1040: /* alter: ALTER SEQUENCE_SYM opt_if_exists $@104 table_ident $@105 sequence_defs $@106 stmt_end */
+#line 7212 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 37329 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1041: /* account_locking_option: LOCK_SYM */
+#line 7217 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.account_locked= ACCOUNTLOCK_LOCKED;
+ }
+#line 37337 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1042: /* account_locking_option: UNLOCK_SYM */
+#line 7221 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.account_locked= ACCOUNTLOCK_UNLOCKED;
+ }
+#line 37345 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1043: /* opt_password_expire_option: %empty */
+#line 7228 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.password_expire= PASSWORD_EXPIRE_NOW;
+ }
+#line 37353 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1044: /* opt_password_expire_option: NEVER_SYM */
+#line 7232 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.password_expire= PASSWORD_EXPIRE_NEVER;
+ }
+#line 37361 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1045: /* opt_password_expire_option: DEFAULT */
+#line 7236 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.password_expire= PASSWORD_EXPIRE_DEFAULT;
+ }
+#line 37369 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1046: /* opt_password_expire_option: INTERVAL_SYM NUM DAY_SYM */
+#line 7240 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.password_expire= PASSWORD_EXPIRE_INTERVAL;
+ if (!(Lex->account_options.num_expiration_days= atoi((yyvsp[-1].lex_str).str)))
+ my_yyabort_error((ER_WRONG_VALUE, MYF(0), "DAY", (yyvsp[-1].lex_str).str));
+ }
+#line 37379 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1052: /* ev_alter_on_schedule_completion: %empty */
+#line 7256 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0;}
+#line 37385 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1053: /* ev_alter_on_schedule_completion: ON SCHEDULE_SYM ev_schedule_time */
+#line 7257 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 37391 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1054: /* ev_alter_on_schedule_completion: ev_on_completion */
+#line 7258 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 37397 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1055: /* ev_alter_on_schedule_completion: ON SCHEDULE_SYM ev_schedule_time ev_on_completion */
+#line 7259 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 37403 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1056: /* opt_ev_rename_to: %empty */
+#line 7263 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0;}
+#line 37409 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1057: /* opt_ev_rename_to: RENAME TO_SYM sp_name */
+#line 7265 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ Use lex's spname to hold the new name.
+ The original name is in the Event_parse_data object
+ */
+ Lex->spname= (yyvsp[0].spname);
+ (yyval.num)= 1;
+ }
+#line 37422 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1058: /* opt_ev_sql_stmt: %empty */
+#line 7276 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0;}
+#line 37428 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1059: /* opt_ev_sql_stmt: DO_SYM ev_sql_stmt */
+#line 7277 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 37434 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1060: /* ident_or_empty: %empty */
+#line 7282 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ident_sys)= Lex_ident_sys(); }
+#line 37440 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1063: /* alter_commands: DISCARD TABLESPACE */
+#line 7289 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->m_sql_cmd= new (thd->mem_root)
+ Sql_cmd_discard_import_tablespace(
+ Sql_cmd_discard_import_tablespace::DISCARD_TABLESPACE);
+ if (unlikely(Lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 37452 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1064: /* alter_commands: IMPORT TABLESPACE */
+#line 7297 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->m_sql_cmd= new (thd->mem_root)
+ Sql_cmd_discard_import_tablespace(
+ Sql_cmd_discard_import_tablespace::IMPORT_TABLESPACE);
+ if (unlikely(Lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 37464 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1070: /* alter_commands: DROP PARTITION_SYM opt_if_exists alt_part_name_list */
+#line 7319 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.partition_flags|= ALTER_PARTITION_DROP;
+ DBUG_ASSERT(!Lex->if_exists());
+ Lex->create_info.add((yyvsp[-1].object_ddl_options));
+ }
+#line 37474 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1071: /* alter_commands: REBUILD_SYM PARTITION_SYM opt_no_write_to_binlog all_or_alt_part_name_list */
+#line 7326 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->alter_info.partition_flags|= ALTER_PARTITION_REBUILD;
+ lex->no_write_to_binlog= (yyvsp[-1].num);
+ }
+#line 37484 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1072: /* $@107: %empty */
+#line 7333 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ lex->no_write_to_binlog= (yyvsp[-1].num);
+ lex->check_opt.init();
+ DBUG_ASSERT(!lex->m_sql_cmd);
+ lex->m_sql_cmd= new (thd->mem_root)
+ Sql_cmd_alter_table_optimize_partition();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 37499 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1074: /* alter_commands: ANALYZE_SYM PARTITION_SYM opt_no_write_to_binlog all_or_alt_part_name_list */
+#line 7346 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ lex->no_write_to_binlog= (yyvsp[-1].num);
+ lex->check_opt.init();
+ DBUG_ASSERT(!lex->m_sql_cmd);
+ lex->m_sql_cmd= new (thd->mem_root)
+ Sql_cmd_alter_table_analyze_partition();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 37514 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1075: /* $@108: %empty */
+#line 7357 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ lex->check_opt.init();
+ DBUG_ASSERT(!lex->m_sql_cmd);
+ lex->m_sql_cmd= new (thd->mem_root)
+ Sql_cmd_alter_table_check_partition();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 37528 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1077: /* $@109: %empty */
+#line 7369 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ lex->no_write_to_binlog= (yyvsp[-1].num);
+ lex->check_opt.init();
+ DBUG_ASSERT(!lex->m_sql_cmd);
+ lex->m_sql_cmd= new (thd->mem_root)
+ Sql_cmd_alter_table_repair_partition();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 37543 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1079: /* alter_commands: COALESCE PARTITION_SYM opt_no_write_to_binlog real_ulong_num */
+#line 7381 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->alter_info.partition_flags|= ALTER_PARTITION_COALESCE;
+ lex->no_write_to_binlog= (yyvsp[-1].num);
+ lex->alter_info.num_parts= (yyvsp[0].ulong_num);
+ }
+#line 37554 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1080: /* alter_commands: TRUNCATE_SYM PARTITION_SYM all_or_alt_part_name_list */
+#line 7388 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ lex->check_opt.init();
+ DBUG_ASSERT(!lex->m_sql_cmd);
+ lex->m_sql_cmd= new (thd->mem_root)
+ Sql_cmd_alter_table_truncate_partition();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 37568 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1082: /* alter_commands: EXCHANGE_SYM PARTITION_SYM alt_part_name_item WITH TABLE_SYM table_ident have_partitioning */
+#line 7400 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_alter_table_exchange_partition((yyvsp[-1].table)))
+ MYSQL_YYABORT;
+ }
+#line 37577 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1083: /* alter_commands: CONVERT_SYM PARTITION_SYM alt_part_name_item TO_SYM TABLE_SYM table_ident have_partitioning */
+#line 7406 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (Lex->stmt_alter_table((yyvsp[-1].table)))
+ MYSQL_YYABORT;
+ lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ lex->alter_info.partition_flags|= ALTER_PARTITION_CONVERT_OUT;
+ }
+#line 37591 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1084: /* $@110: %empty */
+#line 7416 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (!lex->first_select_lex()->add_table_to_list(thd, (yyvsp[0].table), nullptr, 0,
+ TL_READ_NO_INSERT,
+ MDL_SHARED_NO_WRITE))
+ MYSQL_YYABORT;
+
+ /*
+ This will appear as (new_db, new_name) in alter_ctx.
+ new_db will be IX-locked and new_name X-locked.
+ */
+ lex->first_select_lex()->db= (yyvsp[0].table)->db;
+ lex->name= (yyvsp[0].table)->table;
+ if (lex->first_select_lex()->db.str == NULL &&
+ lex->copy_db_to(&lex->first_select_lex()->db))
+ MYSQL_YYABORT;
+
+ lex->part_info= new (thd->mem_root) partition_info();
+ if (unlikely(!lex->part_info))
+ MYSQL_YYABORT;
+
+ lex->part_info->num_parts= 1;
+ /*
+ OR-ed with ALTER_PARTITION_ADD because too many checks of
+ ALTER_PARTITION_ADD required.
+ */
+ lex->alter_info.partition_flags|= ALTER_PARTITION_ADD |
+ ALTER_PARTITION_CONVERT_IN;
+ }
+#line 37625 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1085: /* alter_commands: CONVERT_SYM TABLE_SYM table_ident $@110 TO_SYM PARTITION_SYM part_definition */
+#line 7446 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 37636 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1086: /* remove_partitioning: REMOVE_SYM PARTITIONING_SYM */
+#line 7456 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.partition_flags|= ALTER_PARTITION_REMOVE;
+ }
+#line 37644 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1087: /* all_or_alt_part_name_list: ALL */
+#line 7463 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.partition_flags|= ALTER_PARTITION_ALL;
+ }
+#line 37652 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1089: /* $@111: %empty */
+#line 7472 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->part_info= new (thd->mem_root) partition_info();
+ if (unlikely(!lex->part_info))
+ MYSQL_YYABORT;
+
+ lex->alter_info.partition_flags|= ALTER_PARTITION_ADD;
+ DBUG_ASSERT(!Lex->create_info.if_not_exists());
+ lex->create_info.set((yyvsp[-1].object_ddl_options));
+ lex->no_write_to_binlog= (yyvsp[0].num);
+ }
+#line 37668 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1090: /* add_partition_rule: ADD PARTITION_SYM opt_if_not_exists opt_no_write_to_binlog $@111 add_part_extra */
+#line 7484 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 37674 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1092: /* add_part_extra: '(' part_def_list ')' */
+#line 7490 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->part_info->num_parts= lex->part_info->partitions.elements;
+ }
+#line 37683 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1093: /* add_part_extra: PARTITIONS_SYM real_ulong_num */
+#line 7495 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->part_info->num_parts= (yyvsp[0].ulong_num);
+ }
+#line 37691 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1094: /* $@112: %empty */
+#line 7502 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->part_info= new (thd->mem_root) partition_info();
+ if (unlikely(!lex->part_info))
+ MYSQL_YYABORT;
+
+ lex->no_write_to_binlog= (yyvsp[0].num);
+ }
+#line 37704 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1096: /* reorg_parts_rule: %empty */
+#line 7515 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.partition_flags|= ALTER_PARTITION_TABLE_REORG;
+ }
+#line 37712 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1097: /* $@113: %empty */
+#line 7519 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.partition_flags|= ALTER_PARTITION_REORGANIZE;
+ }
+#line 37720 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1098: /* reorg_parts_rule: alt_part_name_list $@113 INTO '(' part_def_list ')' */
+#line 7523 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ partition_info *part_info= Lex->part_info;
+ part_info->num_parts= part_info->partitions.elements;
+ }
+#line 37729 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1099: /* alt_part_name_list: alt_part_name_item */
+#line 7530 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 37735 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1100: /* alt_part_name_list: alt_part_name_list ',' alt_part_name_item */
+#line 7531 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 37741 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1101: /* alt_part_name_item: ident */
+#line 7536 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->alter_info.partition_names.push_back((yyvsp[0].ident_sys).str,
+ thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 37751 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1105: /* alter_list_item: add_column column_def opt_place */
+#line 7558 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->create_last_non_select_table= lex->last_table();
+ lex->alter_info.flags|= ALTER_PARSER_ADD_COLUMN;
+ (yyvsp[-1].create_field)->after= (yyvsp[0].lex_str);
+ }
+#line 37762 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1106: /* alter_list_item: ADD key_def */
+#line 7565 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->create_last_non_select_table= Lex->last_table();
+ Lex->alter_info.flags|= ALTER_ADD_INDEX;
+ }
+#line 37771 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1107: /* alter_list_item: ADD period_for_system_time */
+#line 7570 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.flags|= ALTER_ADD_PERIOD;
+ }
+#line 37779 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1108: /* alter_list_item: ADD PERIOD_SYM opt_if_not_exists_table_element period_for_application_time */
+#line 7575 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Table_period_info &period= Lex->create_info.period_info;
+ period.create_if_not_exists= Lex->check_exists;
+ Lex->alter_info.flags|= ALTER_ADD_CHECK_CONSTRAINT;
+ }
+#line 37789 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1109: /* alter_list_item: add_column '(' create_field_list ')' */
+#line 7581 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->alter_info.flags|= ALTER_PARSER_ADD_COLUMN;
+ if (!lex->alter_info.key_list.is_empty())
+ lex->alter_info.flags|= ALTER_ADD_INDEX;
+ }
+#line 37800 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1110: /* alter_list_item: ADD constraint_def */
+#line 7588 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.flags|= ALTER_ADD_CHECK_CONSTRAINT;
+ }
+#line 37808 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1111: /* alter_list_item: ADD CONSTRAINT IF_SYM not EXISTS field_ident check_constraint */
+#line 7592 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.flags|= ALTER_ADD_CHECK_CONSTRAINT;
+ Lex->add_constraint((yyvsp[-1].lex_str), (yyvsp[0].virtual_column), TRUE);
+ }
+#line 37817 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1112: /* alter_list_item: CHANGE opt_column opt_if_exists_table_element field_ident field_spec opt_place */
+#line 7598 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.flags|= ALTER_CHANGE_COLUMN | ALTER_RENAME_COLUMN;
+ Lex->create_last_non_select_table= Lex->last_table();
+ (yyvsp[-1].create_field)->change= (yyvsp[-2].lex_str);
+ (yyvsp[-1].create_field)->after= (yyvsp[0].lex_str);
+ }
+#line 37828 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1113: /* alter_list_item: MODIFY_SYM opt_column opt_if_exists_table_element field_spec opt_place */
+#line 7606 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.flags|= ALTER_CHANGE_COLUMN;
+ Lex->create_last_non_select_table= Lex->last_table();
+ (yyvsp[-1].create_field)->change= (yyvsp[-1].create_field)->field_name;
+ (yyvsp[-1].create_field)->after= (yyvsp[0].lex_str);
+ }
+#line 37839 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1114: /* alter_list_item: DROP opt_column opt_if_exists_table_element field_ident opt_restrict */
+#line 7613 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Alter_drop *ad= (new (thd->mem_root)
+ Alter_drop(Alter_drop::COLUMN, (yyvsp[-1].lex_str).str, (yyvsp[-2].num)));
+ if (unlikely(ad == NULL))
+ MYSQL_YYABORT;
+ lex->alter_info.drop_list.push_back(ad, thd->mem_root);
+ lex->alter_info.flags|= ALTER_PARSER_DROP_COLUMN;
+ }
+#line 37853 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1115: /* alter_list_item: DROP CONSTRAINT opt_if_exists_table_element field_ident */
+#line 7623 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Alter_drop *ad= (new (thd->mem_root)
+ Alter_drop(Alter_drop::CHECK_CONSTRAINT,
+ (yyvsp[0].lex_str).str, (yyvsp[-1].num)));
+ if (unlikely(ad == NULL))
+ MYSQL_YYABORT;
+ lex->alter_info.drop_list.push_back(ad, thd->mem_root);
+ lex->alter_info.flags|= ALTER_DROP_CHECK_CONSTRAINT;
+ }
+#line 37868 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1116: /* alter_list_item: DROP FOREIGN KEY_SYM opt_if_exists_table_element field_ident */
+#line 7634 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Alter_drop *ad= (new (thd->mem_root)
+ Alter_drop(Alter_drop::FOREIGN_KEY, (yyvsp[0].lex_str).str, (yyvsp[-1].num)));
+ if (unlikely(ad == NULL))
+ MYSQL_YYABORT;
+ lex->alter_info.drop_list.push_back(ad, thd->mem_root);
+ lex->alter_info.flags|= ALTER_DROP_FOREIGN_KEY;
+ }
+#line 37882 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1117: /* alter_list_item: DROP opt_constraint_no_id PRIMARY_SYM KEY_SYM */
+#line 7644 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Alter_drop *ad= (new (thd->mem_root)
+ Alter_drop(Alter_drop::KEY, primary_key_name.str,
+ FALSE));
+ if (unlikely(ad == NULL))
+ MYSQL_YYABORT;
+ lex->alter_info.drop_list.push_back(ad, thd->mem_root);
+ lex->alter_info.flags|= ALTER_DROP_INDEX;
+ }
+#line 37897 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1118: /* alter_list_item: DROP key_or_index opt_if_exists_table_element field_ident */
+#line 7655 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Alter_drop *ad= (new (thd->mem_root)
+ Alter_drop(Alter_drop::KEY, (yyvsp[0].lex_str).str, (yyvsp[-1].num)));
+ if (unlikely(ad == NULL))
+ MYSQL_YYABORT;
+ lex->alter_info.drop_list.push_back(ad, thd->mem_root);
+ lex->alter_info.flags|= ALTER_DROP_INDEX;
+ }
+#line 37911 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1119: /* alter_list_item: DISABLE_SYM KEYS */
+#line 7665 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->alter_info.keys_onoff= Alter_info::DISABLE;
+ lex->alter_info.flags|= ALTER_KEYS_ONOFF;
+ }
+#line 37921 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1120: /* alter_list_item: ENABLE_SYM KEYS */
+#line 7671 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->alter_info.keys_onoff= Alter_info::ENABLE;
+ lex->alter_info.flags|= ALTER_KEYS_ONOFF;
+ }
+#line 37931 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1121: /* alter_list_item: ALTER opt_column opt_if_exists_table_element field_ident SET DEFAULT column_default_expr */
+#line 7677 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (check_expression((yyvsp[0].virtual_column), &(yyvsp[-3].lex_str), VCOL_DEFAULT))
+ MYSQL_YYABORT;
+ if (unlikely(Lex->add_alter_list((yyvsp[-3].lex_str), (yyvsp[0].virtual_column), (yyvsp[-4].num))))
+ MYSQL_YYABORT;
+ }
+#line 37942 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1122: /* alter_list_item: ALTER key_or_index opt_if_exists_table_element ident ignorability */
+#line 7684 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ Alter_index_ignorability *ac= new (thd->mem_root)
+ Alter_index_ignorability((yyvsp[-1].ident_sys).str, (yyvsp[0].num), (yyvsp[-2].num));
+ if (ac == NULL)
+ MYSQL_YYABORT;
+ lex->alter_info.alter_index_ignorability_list.push_back(ac);
+ lex->alter_info.flags|= ALTER_INDEX_IGNORABILITY;
+ }
+#line 37956 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1123: /* alter_list_item: ALTER opt_column opt_if_exists_table_element field_ident DROP DEFAULT */
+#line 7694 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->add_alter_list((yyvsp[-2].lex_str), (Virtual_column_info*) 0, (yyvsp[-3].num))))
+ MYSQL_YYABORT;
+ }
+#line 37965 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1124: /* alter_list_item: RENAME opt_to table_ident */
+#line 7699 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_alter_table((yyvsp[0].table)))
+ MYSQL_YYABORT;
+ Lex->alter_info.flags|= ALTER_RENAME;
+ }
+#line 37975 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1125: /* alter_list_item: RENAME COLUMN_SYM opt_if_exists_table_element ident TO_SYM ident */
+#line 7705 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->add_alter_list((yyvsp[-2].ident_sys), (yyvsp[0].ident_sys), (yyvsp[-3].num))))
+ MYSQL_YYABORT;
+ }
+#line 37984 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1126: /* alter_list_item: RENAME key_or_index opt_if_exists_table_element field_ident TO_SYM field_ident */
+#line 7710 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Alter_rename_key *ak= new (thd->mem_root)
+ Alter_rename_key((yyvsp[-2].lex_str), (yyvsp[0].lex_str), (yyvsp[-3].num));
+ if (ak == NULL)
+ MYSQL_YYABORT;
+ lex->alter_info.alter_rename_key_list.push_back(ak);
+ lex->alter_info.flags|= ALTER_RENAME_INDEX;
+ }
+#line 37998 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1127: /* alter_list_item: CONVERT_SYM TO_SYM charset charset_name_or_default */
+#line 7720 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->add_alter_list_item_convert_to_charset((yyvsp[0].charset)))
+ MYSQL_YYABORT;
+ }
+#line 38007 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1128: /* alter_list_item: CONVERT_SYM TO_SYM charset charset_name_or_default COLLATE_SYM collation_name_or_default */
+#line 7726 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->add_alter_list_item_convert_to_charset((yyvsp[-2].charset), (yyvsp[0].Lex_extended_collation)))
+ MYSQL_YYABORT;
+ }
+#line 38016 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1129: /* alter_list_item: create_table_options_space_separated */
+#line 7731 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->alter_info.flags|= ALTER_OPTIONS;
+ }
+#line 38025 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1130: /* alter_list_item: FORCE_SYM */
+#line 7736 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.flags|= ALTER_RECREATE;
+ }
+#line 38033 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1131: /* alter_list_item: alter_order_clause */
+#line 7740 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->alter_info.flags|= ALTER_ORDER;
+ }
+#line 38042 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1134: /* alter_list_item: ADD SYSTEM VERSIONING_SYM */
+#line 7747 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.flags|= ALTER_ADD_SYSTEM_VERSIONING;
+ Lex->create_info.options|= HA_VERSIONED_TABLE;
+ }
+#line 38051 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1135: /* alter_list_item: DROP SYSTEM VERSIONING_SYM */
+#line 7752 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.flags|= ALTER_DROP_SYSTEM_VERSIONING;
+ Lex->create_info.options&= ~HA_VERSIONED_TABLE;
+ }
+#line 38060 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1136: /* alter_list_item: DROP PERIOD_SYM FOR_SYSTEM_TIME_SYM */
+#line 7757 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.flags|= ALTER_DROP_PERIOD;
+ }
+#line 38068 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1137: /* alter_list_item: DROP PERIOD_SYM opt_if_exists_table_element FOR_SYM ident */
+#line 7761 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Alter_drop *ad= new Alter_drop(Alter_drop::PERIOD, (yyvsp[0].ident_sys).str, (yyvsp[-2].num));
+ if (unlikely(ad == NULL))
+ MYSQL_YYABORT;
+ Lex->alter_info.drop_list.push_back(ad, thd->mem_root);
+ Lex->alter_info.flags|= ALTER_DROP_CHECK_CONSTRAINT;
+ }
+#line 38080 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1143: /* alter_algorithm_option: ALGORITHM_SYM opt_equal DEFAULT */
+#line 7780 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.set_requested_algorithm(
+ Alter_info::ALTER_TABLE_ALGORITHM_DEFAULT);
+ }
+#line 38089 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1144: /* alter_algorithm_option: ALGORITHM_SYM opt_equal ident */
+#line 7785 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->alter_info.set_requested_algorithm(&(yyvsp[0].ident_sys))))
+ my_yyabort_error((ER_UNKNOWN_ALTER_ALGORITHM, MYF(0), (yyvsp[0].ident_sys).str));
+ }
+#line 38098 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1145: /* alter_lock_option: LOCK_SYM opt_equal DEFAULT */
+#line 7793 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.requested_lock=
+ Alter_info::ALTER_TABLE_LOCK_DEFAULT;
+ }
+#line 38107 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1146: /* alter_lock_option: LOCK_SYM opt_equal ident */
+#line 7798 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->alter_info.set_requested_lock(&(yyvsp[0].ident_sys))))
+ my_yyabort_error((ER_UNKNOWN_ALTER_LOCK, MYF(0), (yyvsp[0].ident_sys).str));
+ }
+#line 38116 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1147: /* opt_column: %empty */
+#line 7805 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38122 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1148: /* opt_column: COLUMN_SYM */
+#line 7806 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38128 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1149: /* opt_ignore: %empty */
+#line 7810 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ignore= 0;}
+#line 38134 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1150: /* opt_ignore: IGNORE_SYM */
+#line 7811 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ignore= 1;}
+#line 38140 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1151: /* $@114: %empty */
+#line 7815 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ignore= 0;}
+#line 38146 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1157: /* alter_option: IGNORE_SYM */
+#line 7829 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ignore= 1;}
+#line 38152 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1158: /* alter_option: ONLINE_SYM */
+#line 7831 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.requested_lock=
+ Alter_info::ALTER_TABLE_LOCK_NONE;
+ }
+#line 38161 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1159: /* opt_restrict: %empty */
+#line 7838 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->drop_mode= DROP_DEFAULT; }
+#line 38167 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1160: /* opt_restrict: RESTRICT */
+#line 7839 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->drop_mode= DROP_RESTRICT; }
+#line 38173 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1161: /* opt_restrict: CASCADE */
+#line 7840 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->drop_mode= DROP_CASCADE; }
+#line 38179 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1162: /* opt_place: %empty */
+#line 7844 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= null_clex_str; }
+#line 38185 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1163: /* opt_place: AFTER_SYM ident */
+#line 7846 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.lex_str)= (yyvsp[0].ident_sys);
+ Lex->alter_info.flags |= ALTER_COLUMN_ORDER;
+ }
+#line 38194 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1164: /* opt_place: FIRST_SYM */
+#line 7851 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.lex_str).str= first_keyword;
+ (yyval.lex_str).length= 5; /* Length of "first" */
+ Lex->alter_info.flags |= ALTER_COLUMN_ORDER;
+ }
+#line 38204 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1165: /* opt_to: %empty */
+#line 7859 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38210 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1166: /* opt_to: TO_SYM */
+#line 7860 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38216 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1167: /* opt_to: '=' */
+#line 7861 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38222 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1168: /* opt_to: AS */
+#line 7862 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38228 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1169: /* $@115: %empty */
+#line 7867 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command = SQLCOM_SLAVE_START;
+ lex->type = 0;
+ /* If you change this code don't forget to update SLAVE START too */
+ }
+#line 38239 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1170: /* slave: START_SYM SLAVE optional_connection_name slave_thread_opts optional_for_channel $@115 slave_until */
+#line 7874 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38245 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1171: /* $@116: %empty */
+#line 7876 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command = SQLCOM_SLAVE_ALL_START;
+ lex->type = 0;
+ /* If you change this code don't forget to update STOP SLAVE too */
+ }
+#line 38256 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1172: /* slave: START_SYM ALL SLAVES slave_thread_opts $@116 */
+#line 7882 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38262 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1173: /* slave: STOP_SYM SLAVE optional_connection_name slave_thread_opts optional_for_channel */
+#line 7884 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command = SQLCOM_SLAVE_STOP;
+ lex->type = 0;
+ /* If you change this code don't forget to update SLAVE STOP too */
+ }
+#line 38273 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1174: /* slave: STOP_SYM ALL SLAVES slave_thread_opts */
+#line 7891 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command = SQLCOM_SLAVE_ALL_STOP;
+ lex->type = 0;
+ /* If you change this code don't forget to update SLAVE STOP too */
+ }
+#line 38284 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1175: /* start: START_SYM TRANSACTION_SYM opt_start_transaction_option_list */
+#line 7901 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_BEGIN;
+ /* READ ONLY and READ WRITE are mutually exclusive. */
+ if (unlikely(((yyvsp[0].num) & MYSQL_START_TRANS_OPT_READ_WRITE) &&
+ ((yyvsp[0].num) & MYSQL_START_TRANS_OPT_READ_ONLY)))
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ lex->start_transaction_opt= (yyvsp[0].num);
+ }
+#line 38301 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1176: /* opt_start_transaction_option_list: %empty */
+#line 7917 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= 0;
+ }
+#line 38309 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1177: /* opt_start_transaction_option_list: start_transaction_option_list */
+#line 7921 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= (yyvsp[0].num);
+ }
+#line 38317 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1178: /* start_transaction_option_list: start_transaction_option */
+#line 7928 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= (yyvsp[0].num);
+ }
+#line 38325 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1179: /* start_transaction_option_list: start_transaction_option_list ',' start_transaction_option */
+#line 7932 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= (yyvsp[-2].num) | (yyvsp[0].num);
+ }
+#line 38333 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1180: /* start_transaction_option: WITH CONSISTENT_SYM SNAPSHOT_SYM */
+#line 7939 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= MYSQL_START_TRANS_OPT_WITH_CONS_SNAPSHOT;
+ }
+#line 38341 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1181: /* start_transaction_option: READ_SYM ONLY_SYM */
+#line 7943 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= MYSQL_START_TRANS_OPT_READ_ONLY;
+ }
+#line 38349 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1182: /* start_transaction_option: READ_SYM WRITE_SYM */
+#line 7947 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= MYSQL_START_TRANS_OPT_READ_WRITE;
+ }
+#line 38357 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1183: /* $@117: %empty */
+#line 7953 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->slave_thd_opt= 0; }
+#line 38363 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1184: /* slave_thread_opts: $@117 slave_thread_opt_list */
+#line 7955 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38369 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1187: /* slave_thread_opt: %empty */
+#line 7964 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38375 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1188: /* slave_thread_opt: SQL_THREAD */
+#line 7965 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->slave_thd_opt|=SLAVE_SQL; }
+#line 38381 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1189: /* slave_thread_opt: RELAY_THREAD */
+#line 7966 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->slave_thd_opt|=SLAVE_IO; }
+#line 38387 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1190: /* slave_until: %empty */
+#line 7970 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38393 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1191: /* slave_until: UNTIL_SYM slave_until_opts */
+#line 7972 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ if (unlikely(((lex->mi.log_file_name || lex->mi.pos) &&
+ (lex->mi.relay_log_name || lex->mi.relay_log_pos)) ||
+ !((lex->mi.log_file_name && lex->mi.pos) ||
+ (lex->mi.relay_log_name && lex->mi.relay_log_pos))))
+ my_yyabort_error((ER_BAD_SLAVE_UNTIL_COND, MYF(0)));
+ }
+#line 38406 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1192: /* slave_until: UNTIL_SYM MASTER_GTID_POS_SYM '=' TEXT_STRING_sys */
+#line 7981 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mi.gtid_pos_str = (yyvsp[0].lex_str);
+ }
+#line 38414 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1195: /* $@118: %empty */
+#line 7993 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command = SQLCOM_CHECKSUM;
+ /* Will be overridden during execution. */
+ YYPS->m_lock_type= TL_UNLOCK;
+ }
+#line 38425 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1196: /* checksum: CHECKSUM_SYM table_or_tables $@118 table_list opt_checksum_type */
+#line 8000 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38431 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1197: /* opt_checksum_type: %empty */
+#line 8004 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags= 0; }
+#line 38437 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1198: /* opt_checksum_type: QUICK */
+#line 8005 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags= T_QUICK; }
+#line 38443 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1199: /* opt_checksum_type: EXTENDED_SYM */
+#line 8006 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags= T_EXTEND; }
+#line 38449 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1201: /* $@119: %empty */
+#line 8012 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->table_type= TABLE_TYPE_VIEW; }
+#line 38455 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1203: /* $@120: %empty */
+#line 8018 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command = SQLCOM_REPAIR;
+ lex->no_write_to_binlog= (yyvsp[0].num);
+ lex->check_opt.init();
+ lex->alter_info.reset();
+ /* Will be overridden during execution. */
+ YYPS->m_lock_type= TL_UNLOCK;
+ }
+#line 38469 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1204: /* repair: REPAIR opt_no_write_to_binlog $@120 repair_table_or_view */
+#line 8028 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX* lex= thd->lex;
+ DBUG_ASSERT(!lex->m_sql_cmd);
+ lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_repair_table();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 38481 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1205: /* opt_mi_repair_type: %empty */
+#line 8038 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags = T_MEDIUM; }
+#line 38487 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1206: /* opt_mi_repair_type: mi_repair_types */
+#line 8039 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38493 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1207: /* mi_repair_types: mi_repair_type */
+#line 8043 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38499 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1208: /* mi_repair_types: mi_repair_type mi_repair_types */
+#line 8044 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38505 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1209: /* mi_repair_type: QUICK */
+#line 8048 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags|= T_QUICK; }
+#line 38511 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1210: /* mi_repair_type: EXTENDED_SYM */
+#line 8049 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags|= T_EXTEND; }
+#line 38517 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1211: /* mi_repair_type: USE_FRM */
+#line 8050 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.sql_flags|= TT_USEFRM; }
+#line 38523 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1212: /* opt_view_repair_type: %empty */
+#line 8054 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 38529 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1213: /* opt_view_repair_type: FOR_SYM UPGRADE_SYM */
+#line 8055 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.sql_flags|= TT_FOR_UPGRADE; }
+#line 38535 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1214: /* opt_view_repair_type: FROM MYSQL_SYM */
+#line 8056 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.sql_flags|= TT_FROM_MYSQL; }
+#line 38541 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1215: /* $@121: %empty */
+#line 8061 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command = SQLCOM_ANALYZE;
+ lex->no_write_to_binlog= (yyvsp[-1].num);
+ lex->check_opt.init();
+ lex->alter_info.reset();
+ /* Will be overridden during execution. */
+ YYPS->m_lock_type= TL_UNLOCK;
+ }
+#line 38555 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1216: /* analyze: ANALYZE_SYM opt_no_write_to_binlog table_or_tables $@121 analyze_table_list */
+#line 8071 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX* lex= thd->lex;
+ DBUG_ASSERT(!lex->m_sql_cmd);
+ lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_analyze_table();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 38567 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1220: /* opt_persistent_stat_clause: %empty */
+#line 8091 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38573 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1221: /* opt_persistent_stat_clause: PERSISTENT_SYM FOR_SYM persistent_stat_spec */
+#line 8093 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ thd->lex->with_persistent_for_clause= TRUE;
+ }
+#line 38581 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1222: /* persistent_stat_spec: ALL */
+#line 8100 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38587 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1223: /* persistent_stat_spec: COLUMNS persistent_column_stat_spec INDEXES persistent_index_stat_spec */
+#line 8102 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38593 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1224: /* persistent_column_stat_spec: ALL */
+#line 8106 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38599 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1225: /* $@122: %empty */
+#line 8108 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX* lex= thd->lex;
+ lex->column_list= new (thd->mem_root) List<LEX_STRING>;
+ if (unlikely(lex->column_list == NULL))
+ MYSQL_YYABORT;
+ }
+#line 38610 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1226: /* persistent_column_stat_spec: '(' $@122 table_column_list ')' */
+#line 8116 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 38616 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1227: /* persistent_index_stat_spec: ALL */
+#line 8120 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38622 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1228: /* $@123: %empty */
+#line 8122 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX* lex= thd->lex;
+ lex->index_list= new (thd->mem_root) List<LEX_STRING>;
+ if (unlikely(lex->index_list == NULL))
+ MYSQL_YYABORT;
+ }
+#line 38633 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1229: /* persistent_index_stat_spec: '(' $@123 table_index_list ')' */
+#line 8130 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 38639 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1230: /* table_column_list: %empty */
+#line 8135 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38645 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1231: /* table_column_list: ident */
+#line 8137 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->column_list->push_back((LEX_STRING*)
+ thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_STRING)), thd->mem_root);
+ }
+#line 38654 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1232: /* table_column_list: table_column_list ',' ident */
+#line 8142 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->column_list->push_back((LEX_STRING*)
+ thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_STRING)), thd->mem_root);
+ }
+#line 38663 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1233: /* table_index_list: %empty */
+#line 8150 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38669 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1236: /* table_index_name: ident */
+#line 8157 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->index_list->push_back((LEX_STRING*)
+ thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_STRING)),
+ thd->mem_root);
+ }
+#line 38679 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1237: /* table_index_name: PRIMARY_SYM */
+#line 8164 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX_STRING str= {(char*) "PRIMARY", 7};
+ Lex->index_list->push_back((LEX_STRING*)
+ thd->memdup(&str, sizeof(LEX_STRING)),
+ thd->mem_root);
+ }
+#line 38690 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1238: /* binlog_base64_event: BINLOG_SYM TEXT_STRING_sys */
+#line 8174 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_BINLOG_BASE64_EVENT;
+ Lex->comment= (yyvsp[0].lex_str);
+ Lex->ident.str= NULL;
+ Lex->ident.length= 0;
+ }
+#line 38701 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1239: /* binlog_base64_event: BINLOG_SYM '@' ident_or_text ',' '@' ident_or_text */
+#line 8182 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_BINLOG_BASE64_EVENT;
+ Lex->comment= (yyvsp[-3].lex_str);
+ Lex->ident= (yyvsp[0].lex_str);
+ }
+#line 38711 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1241: /* $@124: %empty */
+#line 8192 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->table_type= TABLE_TYPE_VIEW; }
+#line 38717 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1243: /* $@125: %empty */
+#line 8197 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+
+ lex->sql_command = SQLCOM_CHECK;
+ lex->check_opt.init();
+ lex->alter_info.reset();
+ /* Will be overridden during execution. */
+ YYPS->m_lock_type= TL_UNLOCK;
+ }
+#line 38731 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1244: /* check: CHECK_SYM $@125 check_view_or_table */
+#line 8207 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX* lex= thd->lex;
+ if (unlikely(lex->sphead))
+ my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "CHECK"));
+ DBUG_ASSERT(!lex->m_sql_cmd);
+ lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_check_table();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 38745 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1245: /* opt_mi_check_type: %empty */
+#line 8219 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags = T_MEDIUM; }
+#line 38751 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1246: /* opt_mi_check_type: mi_check_types */
+#line 8220 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38757 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1247: /* mi_check_types: mi_check_type */
+#line 8224 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38763 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1248: /* mi_check_types: mi_check_type mi_check_types */
+#line 8225 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 38769 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1249: /* mi_check_type: QUICK */
+#line 8229 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags|= T_QUICK; }
+#line 38775 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1250: /* mi_check_type: FAST_SYM */
+#line 8230 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags|= T_FAST; }
+#line 38781 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1251: /* mi_check_type: MEDIUM_SYM */
+#line 8231 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags|= T_MEDIUM; }
+#line 38787 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1252: /* mi_check_type: EXTENDED_SYM */
+#line 8232 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags|= T_EXTEND; }
+#line 38793 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1253: /* mi_check_type: CHANGED */
+#line 8233 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.flags|= T_CHECK_ONLY_CHANGED; }
+#line 38799 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1254: /* mi_check_type: FOR_SYM UPGRADE_SYM */
+#line 8234 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.sql_flags|= TT_FOR_UPGRADE; }
+#line 38805 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1255: /* opt_view_check_type: %empty */
+#line 8238 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 38811 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1256: /* opt_view_check_type: FOR_SYM UPGRADE_SYM */
+#line 8239 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->check_opt.sql_flags|= TT_FOR_UPGRADE; }
+#line 38817 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1257: /* $@126: %empty */
+#line 8244 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command = SQLCOM_OPTIMIZE;
+ lex->no_write_to_binlog= (yyvsp[-1].num);
+ lex->check_opt.init();
+ lex->alter_info.reset();
+ /* Will be overridden during execution. */
+ YYPS->m_lock_type= TL_UNLOCK;
+ }
+#line 38831 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1258: /* optimize: OPTIMIZE opt_no_write_to_binlog table_or_tables $@126 table_list opt_lock_wait_timeout */
+#line 8254 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX* lex= thd->lex;
+ DBUG_ASSERT(!lex->m_sql_cmd);
+ lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_optimize_table();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 38843 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1259: /* opt_no_write_to_binlog: %empty */
+#line 8264 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 38849 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1260: /* opt_no_write_to_binlog: NO_WRITE_TO_BINLOG */
+#line 8265 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 38855 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1261: /* opt_no_write_to_binlog: LOCAL_SYM */
+#line 8266 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 38861 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1262: /* $@127: %empty */
+#line 8271 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_RENAME_TABLE;
+ Lex->create_info.set((yyvsp[0].object_ddl_options));
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ }
+#line 38872 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1263: /* rename: RENAME table_or_tables opt_if_exists $@127 table_to_table_list */
+#line 8278 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 38880 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1264: /* rename: RENAME USER_SYM clear_privileges rename_list */
+#line 8282 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_RENAME_USER;
+ }
+#line 38888 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1265: /* rename_list: user TO_SYM user */
+#line 8289 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->users_list.push_back((yyvsp[-2].lex_user), thd->mem_root) ||
+ Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 38898 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1266: /* rename_list: rename_list ',' user TO_SYM user */
+#line 8295 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->users_list.push_back((yyvsp[-2].lex_user), thd->mem_root) ||
+ Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 38908 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1269: /* table_to_table: table_ident opt_lock_wait_timeout TO_SYM table_ident */
+#line 8309 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ SELECT_LEX *sl= lex->current_select;
+ if (unlikely(!sl->add_table_to_list(thd, (yyvsp[-3].table),NULL,
+ TL_OPTION_UPDATING,
+ TL_IGNORE, MDL_EXCLUSIVE)) ||
+ unlikely(!sl->add_table_to_list(thd, (yyvsp[0].table), NULL,
+ TL_OPTION_UPDATING,
+ TL_IGNORE, MDL_EXCLUSIVE)))
+ MYSQL_YYABORT;
+ }
+#line 38924 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1270: /* $@128: %empty */
+#line 8324 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.reset();
+ }
+#line 38932 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1271: /* keycache: CACHE_SYM INDEX_SYM $@128 keycache_list_or_parts IN_SYM key_cache_name */
+#line 8328 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_ASSIGN_TO_KEYCACHE;
+ lex->ident= (yyvsp[0].lex_str);
+ }
+#line 38942 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1276: /* assign_to_keycache: table_ident cache_keys_spec */
+#line 8347 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-1].table), NULL, 0, TL_READ,
+ MDL_SHARED_READ,
+ Select->
+ pop_index_hints())))
+ MYSQL_YYABORT;
+ }
+#line 38954 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1277: /* assign_to_keycache_parts: table_ident adm_partition cache_keys_spec */
+#line 8358 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-2].table), NULL, 0, TL_READ,
+ MDL_SHARED_READ,
+ Select->
+ pop_index_hints())))
+ MYSQL_YYABORT;
+ }
+#line 38966 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1278: /* key_cache_name: ident */
+#line 8368 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= (yyvsp[0].ident_sys); }
+#line 38972 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1279: /* key_cache_name: DEFAULT */
+#line 8369 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str) = default_key_cache_base; }
+#line 38978 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1280: /* $@129: %empty */
+#line 8374 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command=SQLCOM_PRELOAD_KEYS;
+ lex->alter_info.reset();
+ if (lex->main_select_push())
+ MYSQL_YYABORT;
+ }
+#line 38990 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1281: /* preload: LOAD INDEX_SYM INTO CACHE_SYM $@129 preload_list_or_parts */
+#line 8382 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 38998 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1286: /* preload_keys: table_ident cache_keys_spec opt_ignore_leaves */
+#line 8399 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-2].table), NULL, (yyvsp[0].num), TL_READ,
+ MDL_SHARED_READ,
+ Select->
+ pop_index_hints())))
+ MYSQL_YYABORT;
+ }
+#line 39010 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1287: /* preload_keys_parts: table_ident adm_partition cache_keys_spec opt_ignore_leaves */
+#line 8410 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-3].table), NULL, (yyvsp[0].num), TL_READ,
+ MDL_SHARED_READ,
+ Select->
+ pop_index_hints())))
+ MYSQL_YYABORT;
+ }
+#line 39022 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1288: /* $@130: %empty */
+#line 8421 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->alter_info.partition_flags|= ALTER_PARTITION_ADMIN;
+ }
+#line 39030 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1290: /* $@131: %empty */
+#line 8428 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->first_select_lex()->alloc_index_hints(thd);
+ Select->set_index_hint_type(INDEX_HINT_USE,
+ INDEX_HINT_MASK_ALL);
+ }
+#line 39040 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1292: /* cache_key_list_or_empty: %empty */
+#line 8437 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 39046 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1294: /* opt_ignore_leaves: %empty */
+#line 8443 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 39052 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1295: /* opt_ignore_leaves: IGNORE_SYM LEAVES */
+#line 8444 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= TL_OPTION_IGNORE_LEAVES; }
+#line 39058 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1296: /* $@132: %empty */
+#line 8454 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->push_select((yyvsp[0].select_lex_unit)->fake_select_lex ?
+ (yyvsp[0].select_lex_unit)->fake_select_lex :
+ (yyvsp[0].select_lex_unit)->first_select()))
+ MYSQL_YYABORT;
+ }
+#line 39069 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1297: /* select: query_expression_no_with_clause $@132 opt_procedure_or_into */
+#line 8461 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select();
+ (yyvsp[-2].select_lex_unit)->set_with_clause(NULL);
+ if (Lex->select_finalize((yyvsp[-2].select_lex_unit), (yyvsp[0].select_lock)))
+ MYSQL_YYABORT;
+ }
+#line 39080 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1298: /* $@133: %empty */
+#line 8468 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->push_select((yyvsp[0].select_lex_unit)->fake_select_lex ?
+ (yyvsp[0].select_lex_unit)->fake_select_lex :
+ (yyvsp[0].select_lex_unit)->first_select()))
+ MYSQL_YYABORT;
+ }
+#line 39091 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1299: /* select: with_clause query_expression_no_with_clause $@133 opt_procedure_or_into */
+#line 8475 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select();
+ (yyvsp[-2].select_lex_unit)->set_with_clause((yyvsp[-3].with_clause));
+ (yyvsp[-3].with_clause)->attach_to((yyvsp[-2].select_lex_unit)->first_select());
+ if (Lex->select_finalize((yyvsp[-2].select_lex_unit), (yyvsp[0].select_lock)))
+ MYSQL_YYABORT;
+ }
+#line 39103 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1300: /* $@134: %empty */
+#line 8486 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->push_select((yyvsp[0].select_lex)))
+ MYSQL_YYABORT;
+ }
+#line 39112 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1301: /* select_into: select_into_query_specification $@134 opt_order_limit_lock */
+#line 8491 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX_UNIT *unit;
+ if (!(unit = Lex->create_unit((yyvsp[-2].select_lex))))
+ MYSQL_YYABORT;
+ if ((yyvsp[0].order_limit_lock))
+ unit= Lex->add_tail_to_query_expression_body(unit, (yyvsp[0].order_limit_lock));
+ if (Lex->select_finalize(unit))
+ MYSQL_YYABORT;
+ }
+#line 39126 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1302: /* $@135: %empty */
+#line 8502 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->push_select((yyvsp[0].select_lex)))
+ MYSQL_YYABORT;
+ }
+#line 39135 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1303: /* select_into: with_clause select_into_query_specification $@135 opt_order_limit_lock */
+#line 8507 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX_UNIT *unit;
+ if (!(unit = Lex->create_unit((yyvsp[-2].select_lex))))
+ MYSQL_YYABORT;
+ if ((yyvsp[0].order_limit_lock))
+ unit= Lex->add_tail_to_query_expression_body(unit, (yyvsp[0].order_limit_lock));
+ unit->set_with_clause((yyvsp[-3].with_clause));
+ (yyvsp[-3].with_clause)->attach_to((yyvsp[-2].select_lex));
+ if (Lex->select_finalize(unit))
+ MYSQL_YYABORT;
+ }
+#line 39151 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1304: /* simple_table: query_specification */
+#line 8521 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_lex)= (yyvsp[0].select_lex); }
+#line 39157 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1305: /* simple_table: table_value_constructor */
+#line 8522 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_lex)= (yyvsp[0].select_lex); }
+#line 39163 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1306: /* $@136: %empty */
+#line 8527 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->parsed_TVC_start())
+ MYSQL_YYABORT;
+ }
+#line 39172 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1307: /* table_value_constructor: VALUES $@136 values_list */
+#line 8532 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.select_lex)= Lex->parsed_TVC_end()))
+ MYSQL_YYABORT;
+ }
+#line 39181 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1308: /* $@137: %empty */
+#line 8540 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX *sel;
+ LEX *lex= Lex;
+ if (!(sel= lex->alloc_select(TRUE)) || lex->push_select(sel))
+ MYSQL_YYABORT;
+ sel->init_select();
+ sel->braces= FALSE;
+ }
+#line 39194 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1309: /* $@138: %empty */
+#line 8549 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->parsing_place= SELECT_LIST;
+ }
+#line 39202 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1310: /* query_specification_start: SELECT_SYM $@137 select_options $@138 select_item_list */
+#line 8553 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->parsing_place= NO_MATTER;
+ }
+#line 39210 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1311: /* query_specification: query_specification_start opt_from_clause opt_where_clause opt_group_clause opt_having_clause opt_window_clause */
+#line 8565 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lex)= Lex->pop_select();
+ }
+#line 39218 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1312: /* select_into_query_specification: query_specification_start into opt_from_clause opt_where_clause opt_group_clause opt_having_clause opt_window_clause */
+#line 8578 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lex)= Lex->pop_select();
+ }
+#line 39226 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1313: /* query_expression: query_expression_no_with_clause */
+#line 8636 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[0].select_lex_unit)->set_with_clause(NULL);
+ (yyval.select_lex_unit)= (yyvsp[0].select_lex_unit);
+ }
+#line 39235 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1314: /* query_expression: with_clause query_expression_no_with_clause */
+#line 8642 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[0].select_lex_unit)->set_with_clause((yyvsp[-1].with_clause));
+ (yyvsp[-1].with_clause)->attach_to((yyvsp[0].select_lex_unit)->first_select());
+ (yyval.select_lex_unit)= (yyvsp[0].select_lex_unit);
+ }
+#line 39245 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1315: /* query_expression_no_with_clause: query_expression_body_ext */
+#line 8655 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_lex_unit)= (yyvsp[0].select_lex_unit); }
+#line 39251 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1316: /* query_expression_no_with_clause: query_expression_body_ext_parens */
+#line 8656 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_lex_unit)= (yyvsp[0].select_lex_unit); }
+#line 39257 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1317: /* $@139: %empty */
+#line 8671 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyvsp[0].select_lex_unit)->first_select()->next_select())
+ {
+ if (Lex->parsed_multi_operand_query_expression_body((yyvsp[0].select_lex_unit)))
+ MYSQL_YYABORT;
+ }
+ }
+#line 39269 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1318: /* query_expression_body_ext: query_expression_body $@139 opt_query_expression_tail */
+#line 8679 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!(yyvsp[0].order_limit_lock))
+ (yyval.select_lex_unit)= (yyvsp[-2].select_lex_unit);
+ else
+ (yyval.select_lex_unit)= Lex->add_tail_to_query_expression_body((yyvsp[-2].select_lex_unit), (yyvsp[0].order_limit_lock));
+ }
+#line 39280 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1319: /* $@140: %empty */
+#line 8686 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->push_select(!(yyvsp[0].select_lex_unit)->first_select()->next_select() ?
+ (yyvsp[0].select_lex_unit)->first_select() : (yyvsp[0].select_lex_unit)->fake_select_lex);
+ }
+#line 39289 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1320: /* query_expression_body_ext: query_expression_body_ext_parens $@140 query_expression_tail */
+#line 8691 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.select_lex_unit)= Lex->add_tail_to_query_expression_body_ext_parens((yyvsp[-2].select_lex_unit), (yyvsp[0].order_limit_lock))))
+ MYSQL_YYABORT;
+ }
+#line 39298 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1321: /* query_expression_body_ext_parens: '(' query_expression_body_ext_parens ')' */
+#line 8699 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_lex_unit)= (yyvsp[-1].select_lex_unit); }
+#line 39304 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1322: /* query_expression_body_ext_parens: '(' query_expression_body_ext ')' */
+#line 8701 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX *sel= (yyvsp[-1].select_lex_unit)->first_select()->next_select() ?
+ (yyvsp[-1].select_lex_unit)->fake_select_lex : (yyvsp[-1].select_lex_unit)->first_select();
+ sel->braces= true;
+ (yyval.select_lex_unit)= (yyvsp[-1].select_lex_unit);
+ }
+#line 39315 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1323: /* query_expression_body: query_simple */
+#line 8716 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->push_select((yyvsp[0].select_lex));
+ if (!((yyval.select_lex_unit)= Lex->create_unit((yyvsp[0].select_lex))))
+ MYSQL_YYABORT;
+ }
+#line 39325 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1324: /* $@141: %empty */
+#line 8723 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!(yyvsp[-1].select_lex_unit)->first_select()->next_select())
+ {
+ Lex->pop_select();
+ }
+ }
+#line 39336 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1325: /* query_expression_body: query_expression_body unit_type_decl $@141 query_primary */
+#line 8730 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.select_lex_unit)= Lex->add_primary_to_query_expression_body((yyvsp[-3].select_lex_unit), (yyvsp[0].select_lex),
+ (yyvsp[-2].unit_operation).unit_type,
+ (yyvsp[-2].unit_operation).distinct)))
+ MYSQL_YYABORT;
+ }
+#line 39347 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1326: /* query_expression_body: query_expression_body_ext_parens unit_type_decl query_primary */
+#line 8739 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.select_lex_unit)= Lex->add_primary_to_query_expression_body_ext_parens(
+ (yyvsp[-2].select_lex_unit), (yyvsp[0].select_lex),
+ (yyvsp[-1].unit_operation).unit_type,
+ (yyvsp[-1].unit_operation).distinct)))
+ MYSQL_YYABORT;
+ }
+#line 39359 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1327: /* query_primary: query_simple */
+#line 8755 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_lex)= (yyvsp[0].select_lex); }
+#line 39365 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1328: /* query_primary: query_expression_body_ext_parens */
+#line 8757 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_lex)= (yyvsp[0].select_lex_unit)->first_select(); }
+#line 39371 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1329: /* query_simple: simple_table */
+#line 8766 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_lex)= (yyvsp[0].select_lex);}
+#line 39377 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1330: /* subselect: query_expression */
+#line 8771 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.select_lex)= Lex->parsed_subselect((yyvsp[0].select_lex_unit))))
+ MYSQL_YYABORT;
+ }
+#line 39386 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1331: /* subquery: query_expression_body_ext_parens */
+#line 8812 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!(yyvsp[0].select_lex_unit)->fake_select_lex)
+ (yyvsp[0].select_lex_unit)->first_select()->braces= false;
+ else
+ (yyvsp[0].select_lex_unit)->fake_select_lex->braces= false;
+ if (!((yyval.select_lex)= Lex->parsed_subselect((yyvsp[0].select_lex_unit))))
+ MYSQL_YYABORT;
+ }
+#line 39399 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1332: /* subquery: '(' with_clause query_expression_no_with_clause ')' */
+#line 8821 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-1].select_lex_unit)->set_with_clause((yyvsp[-2].with_clause));
+ (yyvsp[-2].with_clause)->attach_to((yyvsp[-1].select_lex_unit)->first_select());
+ if (!((yyval.select_lex)= Lex->parsed_subselect((yyvsp[-1].select_lex_unit))))
+ MYSQL_YYABORT;
+ }
+#line 39410 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1336: /* table_reference_list: join_table_list */
+#line 8840 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->context.table_list=
+ Select->context.first_name_resolution_table=
+ Select->table_list.first;
+ }
+#line 39420 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1339: /* select_options: select_option_list */
+#line 8855 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((Select->options & SELECT_DISTINCT) &&
+ (Select->options & SELECT_ALL)))
+ my_yyabort_error((ER_WRONG_USAGE, MYF(0), "ALL", "DISTINCT"));
+ }
+#line 39430 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1340: /* opt_history_unit: %empty */
+#line 8864 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.vers_range_unit)= VERS_TIMESTAMP;
+ }
+#line 39438 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1341: /* opt_history_unit: TRANSACTION_SYM */
+#line 8868 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.vers_range_unit)= VERS_TRX_ID;
+ }
+#line 39446 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1342: /* opt_history_unit: TIMESTAMP */
+#line 8872 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.vers_range_unit)= VERS_TIMESTAMP;
+ }
+#line 39454 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1343: /* history_point: TIMESTAMP TEXT_STRING */
+#line 8879 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *item;
+ if (!(item= type_handler_datetime.create_literal_item(thd,
+ (yyvsp[0].lex_string_with_metadata).str, (yyvsp[0].lex_string_with_metadata).length,
+ YYCSCL, true)))
+ MYSQL_YYABORT;
+ (yyval.vers_history_point)= Vers_history_point(VERS_TIMESTAMP, item);
+ }
+#line 39467 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1344: /* history_point: function_call_keyword_timestamp */
+#line 8888 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.vers_history_point)= Vers_history_point(VERS_TIMESTAMP, (yyvsp[0].item));
+ }
+#line 39475 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1345: /* history_point: opt_history_unit bit_expr */
+#line 8892 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.vers_history_point)= Vers_history_point((yyvsp[-1].vers_range_unit), (yyvsp[0].item));
+ }
+#line 39483 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1346: /* for_portion_of_time_clause: FOR_SYM PORTION_SYM OF_SYM remember_tok_start ident FROM bit_expr TO_SYM bit_expr */
+#line 8900 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(0 == strcasecmp((yyvsp[-4].ident_sys).str, "SYSTEM_TIME")))
+ {
+ thd->parse_error(ER_SYNTAX_ERROR, (yyvsp[-5].simple_string));
+ MYSQL_YYABORT;
+ }
+ Lex->period_conditions.init(SYSTEM_TIME_FROM_TO,
+ Vers_history_point(VERS_TIMESTAMP, (yyvsp[-2].item)),
+ Vers_history_point(VERS_TIMESTAMP, (yyvsp[0].item)),
+ (yyvsp[-4].ident_sys));
+ }
+#line 39499 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1347: /* opt_for_portion_of_time_clause: %empty */
+#line 8915 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= false;
+ }
+#line 39507 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1348: /* opt_for_portion_of_time_clause: for_portion_of_time_clause */
+#line 8919 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= true;
+ }
+#line 39515 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1349: /* opt_for_system_time_clause: %empty */
+#line 8926 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= false;
+ }
+#line 39523 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1350: /* opt_for_system_time_clause: FOR_SYSTEM_TIME_SYM system_time_expr */
+#line 8930 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= true;
+ }
+#line 39531 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1351: /* system_time_expr: AS OF_SYM history_point */
+#line 8937 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->vers_conditions.init(SYSTEM_TIME_AS_OF, (yyvsp[0].vers_history_point));
+ }
+#line 39539 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1352: /* system_time_expr: ALL */
+#line 8941 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->vers_conditions.init(SYSTEM_TIME_ALL);
+ }
+#line 39547 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1353: /* system_time_expr: FROM history_point TO_SYM history_point */
+#line 8945 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->vers_conditions.init(SYSTEM_TIME_FROM_TO, (yyvsp[-2].vers_history_point), (yyvsp[0].vers_history_point));
+ }
+#line 39555 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1354: /* system_time_expr: BETWEEN_SYM history_point AND_SYM history_point */
+#line 8949 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->vers_conditions.init(SYSTEM_TIME_BETWEEN, (yyvsp[-2].vers_history_point), (yyvsp[0].vers_history_point));
+ }
+#line 39563 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1358: /* select_option: SQL_NO_CACHE_SYM */
+#line 8962 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ Allow this flag once per query.
+ */
+ if (Select->options & OPTION_NO_QUERY_CACHE)
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "SQL_NO_CACHE"));
+ Select->options|= OPTION_NO_QUERY_CACHE;
+ }
+#line 39576 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1359: /* select_option: SQL_CACHE_SYM */
+#line 8971 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ Allow this flag once per query.
+ */
+ if (Select->options & OPTION_TO_QUERY_CACHE)
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "SQL_CACHE"));
+ Select->options|= OPTION_TO_QUERY_CACHE;
+ }
+#line 39589 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1360: /* select_lock_type: FOR_SYM UPDATE_SYM opt_lock_wait_timeout_new */
+#line 8984 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lock)= (yyvsp[0].select_lock);
+ (yyval.select_lock).defined_lock= TRUE;
+ (yyval.select_lock).update_lock= TRUE;
+ }
+#line 39599 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1361: /* select_lock_type: LOCK_SYM IN_SYM SHARE_SYM MODE_SYM opt_lock_wait_timeout_new */
+#line 8990 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lock)= (yyvsp[0].select_lock);
+ (yyval.select_lock).defined_lock= TRUE;
+ (yyval.select_lock).update_lock= FALSE;
+ }
+#line 39609 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1362: /* opt_select_lock_type: %empty */
+#line 9000 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lock).empty();
+ }
+#line 39617 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1363: /* opt_select_lock_type: select_lock_type */
+#line 9004 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lock)= (yyvsp[0].select_lock);
+ }
+#line 39625 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1364: /* opt_lock_wait_timeout_new: %empty */
+#line 9011 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lock).empty();
+ }
+#line 39633 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1365: /* opt_lock_wait_timeout_new: WAIT_SYM ulong_num */
+#line 9015 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lock).empty();
+ (yyval.select_lock).defined_timeout= TRUE;
+ (yyval.select_lock).timeout= (yyvsp[0].ulong_num);
+ }
+#line 39643 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1366: /* opt_lock_wait_timeout_new: NOWAIT_SYM */
+#line 9021 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lock).empty();
+ (yyval.select_lock).defined_timeout= TRUE;
+ (yyval.select_lock).timeout= 0;
+ }
+#line 39653 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1367: /* opt_lock_wait_timeout_new: SKIP_SYM LOCKED_SYM */
+#line 9027 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lock).empty();
+ (yyval.select_lock).skip_locked= 1;
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SKIP_LOCKED);
+ }
+#line 39663 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1370: /* select_item_list: '*' */
+#line 9038 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ bool is_parsing_returning=
+ thd->lex->current_select->parsing_place ==
+ IN_RETURNING;
+ SELECT_LEX *correct_select= is_parsing_returning ?
+ thd->lex->returning() :
+ thd->lex->current_select;
+ Item *item= new (thd->mem_root)
+ Item_field(thd, &correct_select->context,
+ star_clex_str);
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ if (unlikely(add_item_to_list(thd, item)))
+ MYSQL_YYABORT;
+ correct_select->with_wild++;
+ }
+#line 39684 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1371: /* select_item: remember_name select_sublist_qualified_asterisk remember_end */
+#line 9058 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(add_item_to_list(thd, (yyvsp[-1].item))))
+ MYSQL_YYABORT;
+ }
+#line 39693 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1372: /* select_item: remember_name expr remember_end select_alias */
+#line 9063 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT((yyvsp[-3].simple_string) < (yyvsp[-1].simple_string));
+
+ if (unlikely(add_item_to_list(thd, (yyvsp[-2].item))))
+ MYSQL_YYABORT;
+ if ((yyvsp[0].lex_str).str)
+ {
+ if (unlikely(Lex->sql_command == SQLCOM_CREATE_VIEW &&
+ check_column_name((yyvsp[0].lex_str).str)))
+ my_yyabort_error((ER_WRONG_COLUMN_NAME, MYF(0), (yyvsp[0].lex_str).str));
+ (yyvsp[-2].item)->base_flags|= item_base_t::IS_EXPLICIT_NAME;
+ (yyvsp[-2].item)->set_name(thd, (yyvsp[0].lex_str));
+ }
+ else if (!(yyvsp[-2].item)->name.str || (yyvsp[-2].item)->name.str == item_empty_name)
+ {
+ (yyvsp[-2].item)->set_name(thd, (yyvsp[-3].simple_string), (uint) ((yyvsp[-1].simple_string) - (yyvsp[-3].simple_string)), thd->charset());
+ }
+ }
+#line 39716 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1373: /* remember_tok_start: %empty */
+#line 9084 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.simple_string)= (char*) YYLIP->get_tok_start();
+ }
+#line 39724 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1374: /* remember_name: %empty */
+#line 9090 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.simple_string)= (char*) YYLIP->get_cpp_tok_start();
+ }
+#line 39732 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1375: /* remember_end: %empty */
+#line 9096 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.simple_string)= (char*) YYLIP->get_cpp_tok_end_rtrim();
+ }
+#line 39740 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1376: /* select_alias: %empty */
+#line 9102 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)=null_clex_str;}
+#line 39746 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1377: /* select_alias: AS ident */
+#line 9103 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)=(yyvsp[0].ident_sys); }
+#line 39752 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1378: /* select_alias: AS TEXT_STRING_sys */
+#line 9104 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)=(yyvsp[0].lex_str); }
+#line 39758 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1379: /* select_alias: ident */
+#line 9105 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)=(yyvsp[0].ident_sys); }
+#line 39764 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1380: /* select_alias: TEXT_STRING_sys */
+#line 9106 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)=(yyvsp[0].lex_str); }
+#line 39770 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1381: /* opt_default_time_precision: %empty */
+#line 9110 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= NOT_FIXED_DEC; }
+#line 39776 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1382: /* opt_default_time_precision: '(' ')' */
+#line 9111 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= NOT_FIXED_DEC; }
+#line 39782 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1383: /* opt_default_time_precision: '(' real_ulong_num ')' */
+#line 9112 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= (yyvsp[-1].ulong_num); }
+#line 39788 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1384: /* opt_time_precision: %empty */
+#line 9116 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 39794 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1385: /* opt_time_precision: '(' ')' */
+#line 9117 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 39800 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1386: /* opt_time_precision: '(' real_ulong_num ')' */
+#line 9118 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= (yyvsp[-1].ulong_num); }
+#line 39806 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1387: /* optional_braces: %empty */
+#line 9122 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 39812 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1388: /* optional_braces: '(' ')' */
+#line 9123 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 39818 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1389: /* expr: expr or expr */
+#line 9129 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ Design notes:
+ Do not use a manually maintained stack like thd->lex->xxx_list,
+ but use the internal bison stack ($$, $1 and $3) instead.
+ Using the bison stack is:
+ - more robust to changes in the grammar,
+ - guaranteed to be in sync with the parser state,
+ - better for performances (no memory allocation).
+ */
+ Item_cond_or *item1;
+ Item_cond_or *item3;
+ if (is_cond_or((yyvsp[-2].item)))
+ {
+ item1= (Item_cond_or*) (yyvsp[-2].item);
+ if (is_cond_or((yyvsp[0].item)))
+ {
+ item3= (Item_cond_or*) (yyvsp[0].item);
+ /*
+ (X1 OR X2) OR (Y1 OR Y2) ==> OR (X1, X2, Y1, Y2)
+ */
+ item3->add_at_head(item1->argument_list());
+ (yyval.item) = (yyvsp[0].item);
+ }
+ else
+ {
+ /*
+ (X1 OR X2) OR Y ==> OR (X1, X2, Y)
+ */
+ item1->add((yyvsp[0].item), thd->mem_root);
+ (yyval.item) = (yyvsp[-2].item);
+ }
+ }
+ else if (is_cond_or((yyvsp[0].item)))
+ {
+ item3= (Item_cond_or*) (yyvsp[0].item);
+ /*
+ X OR (Y1 OR Y2) ==> OR (X, Y1, Y2)
+ */
+ item3->add_at_head((yyvsp[-2].item), thd->mem_root);
+ (yyval.item) = (yyvsp[0].item);
+ }
+ else
+ {
+ /* X OR Y */
+ (yyval.item)= new (thd->mem_root) Item_cond_or(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+ }
+#line 39873 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1390: /* expr: expr XOR expr */
+#line 9180 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* XOR is a proprietary extension */
+ (yyval.item)= new (thd->mem_root) Item_func_xor(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 39884 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1391: /* expr: expr and expr */
+#line 9187 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* See comments in rule expr: expr or expr */
+ Item_cond_and *item1;
+ Item_cond_and *item3;
+ if (is_cond_and((yyvsp[-2].item)))
+ {
+ item1= (Item_cond_and*) (yyvsp[-2].item);
+ if (is_cond_and((yyvsp[0].item)))
+ {
+ item3= (Item_cond_and*) (yyvsp[0].item);
+ /*
+ (X1 AND X2) AND (Y1 AND Y2) ==> AND (X1, X2, Y1, Y2)
+ */
+ item3->add_at_head(item1->argument_list());
+ (yyval.item) = (yyvsp[0].item);
+ }
+ else
+ {
+ /*
+ (X1 AND X2) AND Y ==> AND (X1, X2, Y)
+ */
+ item1->add((yyvsp[0].item), thd->mem_root);
+ (yyval.item) = (yyvsp[-2].item);
+ }
+ }
+ else if (is_cond_and((yyvsp[0].item)))
+ {
+ item3= (Item_cond_and*) (yyvsp[0].item);
+ /*
+ X AND (Y1 AND Y2) ==> AND (X, Y1, Y2)
+ */
+ item3->add_at_head((yyvsp[-2].item), thd->mem_root);
+ (yyval.item) = (yyvsp[0].item);
+ }
+ else
+ {
+ /* X AND Y */
+ (yyval.item)= new (thd->mem_root) Item_cond_and(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+ }
+#line 39931 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1392: /* expr: NOT_SYM expr */
+#line 9230 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= negate_expression(thd, (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 39941 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1394: /* boolean_test: boolean_test IS TRUE_SYM */
+#line 9240 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_istrue(thd, (yyvsp[-2].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 39951 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1395: /* boolean_test: boolean_test IS not TRUE_SYM */
+#line 9246 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_isnottrue(thd, (yyvsp[-3].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 39961 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1396: /* boolean_test: boolean_test IS FALSE_SYM */
+#line 9252 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_isfalse(thd, (yyvsp[-2].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 39971 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1397: /* boolean_test: boolean_test IS not FALSE_SYM */
+#line 9258 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_isnotfalse(thd, (yyvsp[-3].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 39981 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1398: /* boolean_test: boolean_test IS UNKNOWN_SYM */
+#line 9264 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_isnull(thd, (yyvsp[-2].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 39991 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1399: /* boolean_test: boolean_test IS not UNKNOWN_SYM */
+#line 9270 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_isnotnull(thd, (yyvsp[-3].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40001 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1400: /* boolean_test: boolean_test IS NULL_SYM */
+#line 9276 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_isnull(thd, (yyvsp[-2].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40011 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1401: /* boolean_test: boolean_test IS not NULL_SYM */
+#line 9282 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_isnotnull(thd, (yyvsp[-3].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40021 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1402: /* boolean_test: boolean_test EQUAL_SYM predicate */
+#line 9288 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_equal(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40031 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1403: /* boolean_test: boolean_test comp_op predicate */
+#line 9294 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= (*(yyvsp[-1].boolfunc2creator))(0)->create(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40041 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1404: /* boolean_test: boolean_test comp_op all_or_any '(' subselect ')' */
+#line 9300 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= all_any_subquery_creator(thd, (yyvsp[-5].item), (yyvsp[-4].boolfunc2creator), (yyvsp[-3].num), (yyvsp[-1].select_lex));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40051 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1406: /* predicate: predicate IN_SYM subquery */
+#line 9310 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_in_subselect(thd, (yyvsp[-2].item), (yyvsp[0].select_lex));
+ if (unlikely(!(yyval.item)))
+ MYSQL_YYABORT;
+ }
+#line 40061 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1407: /* predicate: predicate not IN_SYM subquery */
+#line 9316 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *item= new (thd->mem_root) Item_in_subselect(thd, (yyvsp[-3].item), (yyvsp[0].select_lex));
+ if (unlikely(!item))
+ MYSQL_YYABORT;
+ (yyval.item)= negate_expression(thd, item);
+ if (unlikely(!(yyval.item)))
+ MYSQL_YYABORT;
+ }
+#line 40074 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1408: /* predicate: predicate IN_SYM '(' expr ')' */
+#line 9325 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= handle_sql2003_note184_exception(thd, (yyvsp[-4].item), true, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40084 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1409: /* predicate: predicate IN_SYM '(' expr ',' expr_list ')' */
+#line 9331 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
+ (yyvsp[-1].item_list)->push_front((yyvsp[-6].item), thd->mem_root);
+ (yyval.item)= new (thd->mem_root) Item_func_in(thd, *(yyvsp[-1].item_list));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40096 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1410: /* predicate: predicate not IN_SYM '(' expr ')' */
+#line 9339 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= handle_sql2003_note184_exception(thd, (yyvsp[-5].item), false, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40106 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1411: /* predicate: predicate not IN_SYM '(' expr ',' expr_list ')' */
+#line 9345 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
+ (yyvsp[-1].item_list)->push_front((yyvsp[-7].item), thd->mem_root);
+ Item_func_in *item= new (thd->mem_root) Item_func_in(thd, *(yyvsp[-1].item_list));
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ (yyval.item)= item->neg_transformer(thd);
+ }
+#line 40119 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1412: /* predicate: predicate BETWEEN_SYM predicate AND_SYM predicate */
+#line 9354 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_between(thd, (yyvsp[-4].item), (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40129 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1413: /* predicate: predicate not BETWEEN_SYM predicate AND_SYM predicate */
+#line 9360 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item_func_between *item;
+ item= new (thd->mem_root) Item_func_between(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ (yyval.item)= item->neg_transformer(thd);
+ }
+#line 40141 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1414: /* predicate: predicate SOUNDS_SYM LIKE predicate */
+#line 9368 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *item1= new (thd->mem_root) Item_func_soundex(thd, (yyvsp[-3].item));
+ Item *item4= new (thd->mem_root) Item_func_soundex(thd, (yyvsp[0].item));
+ if (unlikely(item1 == NULL) || unlikely(item4 == NULL))
+ MYSQL_YYABORT;
+ (yyval.item)= new (thd->mem_root) Item_func_eq(thd, item1, item4);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40155 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1415: /* predicate: predicate LIKE predicate */
+#line 9378 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_like(thd, (yyvsp[-2].item), (yyvsp[0].item), escape(thd), false);
+ if (unlikely(!(yyval.item)))
+ MYSQL_YYABORT;
+ }
+#line 40165 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1416: /* predicate: predicate LIKE predicate ESCAPE_SYM predicate */
+#line 9384 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->escape_used= true;
+ (yyval.item)= new (thd->mem_root) Item_func_like(thd, (yyvsp[-4].item), (yyvsp[-2].item), (yyvsp[0].item), true);
+ if (unlikely(!(yyval.item)))
+ MYSQL_YYABORT;
+ }
+#line 40176 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1417: /* predicate: predicate not LIKE predicate */
+#line 9391 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *item= new (thd->mem_root) Item_func_like(thd, (yyvsp[-3].item), (yyvsp[0].item), escape(thd), false);
+ if (unlikely(!item))
+ MYSQL_YYABORT;
+ (yyval.item)= item->neg_transformer(thd);
+ }
+#line 40187 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1418: /* predicate: predicate not LIKE predicate ESCAPE_SYM predicate */
+#line 9398 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->escape_used= true;
+ Item *item= new (thd->mem_root) Item_func_like(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[0].item), true);
+ if (unlikely(!item))
+ MYSQL_YYABORT;
+ (yyval.item)= item->neg_transformer(thd);
+ }
+#line 40199 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1419: /* predicate: predicate REGEXP predicate */
+#line 9406 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_regex(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40209 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1420: /* predicate: predicate not REGEXP predicate */
+#line 9412 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *item= new (thd->mem_root) Item_func_regex(thd, (yyvsp[-3].item), (yyvsp[0].item));
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ (yyval.item)= negate_expression(thd, item);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40222 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1422: /* bit_expr: bit_expr '|' bit_expr */
+#line 9425 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_bit_or(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40232 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1423: /* bit_expr: bit_expr '&' bit_expr */
+#line 9431 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_bit_and(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40242 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1424: /* bit_expr: bit_expr SHIFT_LEFT bit_expr */
+#line 9437 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_shift_left(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40252 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1425: /* bit_expr: bit_expr SHIFT_RIGHT bit_expr */
+#line 9443 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_shift_right(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40262 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1426: /* bit_expr: bit_expr ORACLE_CONCAT_SYM bit_expr */
+#line 9449 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_concat_operator_oracle(thd,
+ (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40273 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1427: /* bit_expr: bit_expr '+' bit_expr */
+#line 9456 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_plus(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40283 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1428: /* bit_expr: bit_expr '-' bit_expr */
+#line 9462 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_minus(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40293 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1429: /* bit_expr: bit_expr '+' INTERVAL_SYM expr interval */
+#line 9468 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-4].item), (yyvsp[-1].item), (yyvsp[0].interval), 0);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40303 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1430: /* bit_expr: bit_expr '-' INTERVAL_SYM expr interval */
+#line 9474 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-4].item), (yyvsp[-1].item), (yyvsp[0].interval), 1);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40313 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1431: /* bit_expr: INTERVAL_SYM expr interval '+' expr */
+#line 9481 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[0].item), (yyvsp[-3].item), (yyvsp[-2].interval), 0);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40323 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1432: /* bit_expr: '+' INTERVAL_SYM expr interval '+' expr */
+#line 9487 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[0].item), (yyvsp[-3].item), (yyvsp[-2].interval), 0);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40333 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1433: /* bit_expr: '-' INTERVAL_SYM expr interval '+' expr */
+#line 9493 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[0].item), (yyvsp[-3].item), (yyvsp[-2].interval), 1);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40343 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1434: /* bit_expr: bit_expr '*' bit_expr */
+#line 9499 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_mul(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40353 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1435: /* bit_expr: bit_expr '/' bit_expr */
+#line 9505 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_div(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40363 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1436: /* bit_expr: bit_expr '%' bit_expr */
+#line 9511 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_mod(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40373 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1437: /* bit_expr: bit_expr DIV_SYM bit_expr */
+#line 9517 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_int_div(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40383 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1438: /* bit_expr: bit_expr MOD_SYM bit_expr */
+#line 9523 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_mod(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40393 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1439: /* bit_expr: bit_expr '^' bit_expr */
+#line 9529 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_bit_xor(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40403 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1449: /* comp_op: '=' */
+#line 9558 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.boolfunc2creator) = &comp_eq_creator; }
+#line 40409 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1450: /* comp_op: GE */
+#line 9559 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.boolfunc2creator) = &comp_ge_creator; }
+#line 40415 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1451: /* comp_op: '>' */
+#line 9560 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.boolfunc2creator) = &comp_gt_creator; }
+#line 40421 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1452: /* comp_op: LE */
+#line 9561 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.boolfunc2creator) = &comp_le_creator; }
+#line 40427 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1453: /* comp_op: '<' */
+#line 9562 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.boolfunc2creator) = &comp_lt_creator; }
+#line 40433 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1454: /* comp_op: NE */
+#line 9563 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.boolfunc2creator) = &comp_ne_creator; }
+#line 40439 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1455: /* all_or_any: ALL */
+#line 9567 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num) = 1; }
+#line 40445 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1456: /* all_or_any: ANY_SYM */
+#line 9568 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num) = 0; }
+#line 40451 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1457: /* opt_dyncol_type: %empty */
+#line 9573 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_dyncol_type).set(DYN_COL_NULL); /* automatic type */
+ }
+#line 40459 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1458: /* opt_dyncol_type: AS dyncol_type */
+#line 9576 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_dyncol_type)= (yyvsp[0].Lex_dyncol_type); }
+#line 40465 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1462: /* numeric_dyncol_type: INT_SYM */
+#line 9586 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_dyncol_type).set(DYN_COL_INT); }
+#line 40471 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1463: /* numeric_dyncol_type: UNSIGNED INT_SYM */
+#line 9587 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_dyncol_type).set(DYN_COL_UINT); }
+#line 40477 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1464: /* numeric_dyncol_type: DOUBLE_SYM */
+#line 9588 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_dyncol_type).set(DYN_COL_DOUBLE); }
+#line 40483 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1465: /* numeric_dyncol_type: REAL */
+#line 9589 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_dyncol_type).set(DYN_COL_DOUBLE); }
+#line 40489 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1466: /* numeric_dyncol_type: FLOAT_SYM */
+#line 9590 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_dyncol_type).set(DYN_COL_DOUBLE); }
+#line 40495 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1467: /* numeric_dyncol_type: DECIMAL_SYM float_options */
+#line 9591 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_dyncol_type).set(DYN_COL_DECIMAL, (yyvsp[0].Lex_length_and_dec)); }
+#line 40501 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1468: /* temporal_dyncol_type: DATE_SYM */
+#line 9595 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_dyncol_type).set(DYN_COL_DATE); }
+#line 40507 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1469: /* temporal_dyncol_type: TIME_SYM opt_field_scale */
+#line 9596 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_dyncol_type).set(DYN_COL_TIME, (yyvsp[0].Lex_length_and_dec)); }
+#line 40513 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1470: /* temporal_dyncol_type: DATETIME opt_field_scale */
+#line 9597 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_dyncol_type).set(DYN_COL_DATETIME, (yyvsp[0].Lex_length_and_dec)); }
+#line 40519 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1471: /* string_dyncol_type: char opt_binary */
+#line 9602 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyval.Lex_dyncol_type).set(DYN_COL_STRING, (yyvsp[0].Lex_exact_charset_extended_collation_attrs), thd->variables.collation_connection))
+ MYSQL_YYABORT;
+ }
+#line 40528 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1472: /* string_dyncol_type: nchar */
+#line 9607 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_dyncol_type).set(DYN_COL_STRING, national_charset_info);
+ }
+#line 40536 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1473: /* dyncall_create_element: expr ',' expr opt_dyncol_type */
+#line 9614 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.dyncol_def)= (DYNCALL_CREATE_DEF *)
+ alloc_root(thd->mem_root, sizeof(DYNCALL_CREATE_DEF));
+ if (unlikely((yyval.dyncol_def) == NULL))
+ MYSQL_YYABORT;
+ (yyval.dyncol_def)->key= (yyvsp[-3].item);
+ (yyval.dyncol_def)->value= (yyvsp[-1].item);
+ (yyval.dyncol_def)->type= (DYNAMIC_COLUMN_TYPE)(yyvsp[0].Lex_dyncol_type).dyncol_type();
+ (yyval.dyncol_def)->cs= (yyvsp[0].Lex_dyncol_type).charset_collation();
+ if ((yyvsp[0].Lex_dyncol_type).has_explicit_length())
+ (yyval.dyncol_def)->len= (yyvsp[0].Lex_dyncol_type).length();
+ else
+ (yyval.dyncol_def)->len= 0;
+ if ((yyvsp[0].Lex_dyncol_type).has_explicit_dec())
+ (yyval.dyncol_def)->frac= (yyvsp[0].Lex_dyncol_type).dec();
+ else
+ (yyval.dyncol_def)->len= 0;
+ }
+#line 40559 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1474: /* dyncall_create_list: dyncall_create_element */
+#line 9636 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.dyncol_def_list)= new (thd->mem_root) List<DYNCALL_CREATE_DEF>;
+ if (unlikely((yyval.dyncol_def_list) == NULL))
+ MYSQL_YYABORT;
+ (yyval.dyncol_def_list)->push_back((yyvsp[0].dyncol_def), thd->mem_root);
+ }
+#line 40570 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1475: /* dyncall_create_list: dyncall_create_list ',' dyncall_create_element */
+#line 9643 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-2].dyncol_def_list)->push_back((yyvsp[0].dyncol_def), thd->mem_root);
+ (yyval.dyncol_def_list)= (yyvsp[-2].dyncol_def_list);
+ }
+#line 40579 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1476: /* plsql_cursor_attr: ISOPEN_SYM */
+#line 9651 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.plsql_cursor_attr)= PLSQL_CURSOR_ATTR_ISOPEN; }
+#line 40585 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1477: /* plsql_cursor_attr: FOUND_SYM */
+#line 9652 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.plsql_cursor_attr)= PLSQL_CURSOR_ATTR_FOUND; }
+#line 40591 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1478: /* plsql_cursor_attr: NOTFOUND_SYM */
+#line 9653 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.plsql_cursor_attr)= PLSQL_CURSOR_ATTR_NOTFOUND; }
+#line 40597 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1479: /* plsql_cursor_attr: ROWCOUNT_SYM */
+#line 9654 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.plsql_cursor_attr)= PLSQL_CURSOR_ATTR_ROWCOUNT; }
+#line 40603 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1480: /* explicit_cursor_attr: ident PERCENT_ORACLE_SYM plsql_cursor_attr */
+#line 9659 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_plsql_cursor_attr(thd, &(yyvsp[-2].ident_sys), (yyvsp[0].plsql_cursor_attr)))))
+ MYSQL_YYABORT;
+ }
+#line 40612 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1483: /* trim_operands_regular: expr */
+#line 9672 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.trim).set(TRIM_BOTH, (yyvsp[0].item)); }
+#line 40618 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1484: /* trim_operands_special: LEADING expr FROM expr */
+#line 9676 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.trim).set(TRIM_LEADING, (yyvsp[-2].item), (yyvsp[0].item)); }
+#line 40624 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1485: /* trim_operands_special: TRAILING expr FROM expr */
+#line 9677 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.trim).set(TRIM_TRAILING, (yyvsp[-2].item), (yyvsp[0].item)); }
+#line 40630 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1486: /* trim_operands_special: BOTH expr FROM expr */
+#line 9678 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.trim).set(TRIM_BOTH, (yyvsp[-2].item), (yyvsp[0].item)); }
+#line 40636 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1487: /* trim_operands_special: LEADING FROM expr */
+#line 9679 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.trim).set(TRIM_LEADING, (yyvsp[0].item)); }
+#line 40642 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1488: /* trim_operands_special: TRAILING FROM expr */
+#line 9680 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.trim).set(TRIM_TRAILING, (yyvsp[0].item)); }
+#line 40648 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1489: /* trim_operands_special: BOTH FROM expr */
+#line 9681 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.trim).set(TRIM_BOTH, (yyvsp[0].item)); }
+#line 40654 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1490: /* trim_operands_special: expr FROM expr */
+#line 9682 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.trim).set(TRIM_BOTH, (yyvsp[-2].item), (yyvsp[0].item)); }
+#line 40660 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1497: /* column_default_non_parenthesized_expr: param_marker */
+#line 9720 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)= (yyvsp[0].item_param); }
+#line 40666 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1499: /* column_default_non_parenthesized_expr: sum_expr */
+#line 9723 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!Lex->select_stack_top || Lex->json_table)
+ {
+ my_error(ER_INVALID_GROUP_FUNC_USE, MYF(0));
+ MYSQL_YYABORT;
+ }
+ }
+#line 40678 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1500: /* column_default_non_parenthesized_expr: window_func_expr */
+#line 9731 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!Lex->select_stack_top)
+ {
+ my_error(ER_WRONG_PLACEMENT_OF_WINDOW_FUNCTION, MYF(0));
+ MYSQL_YYABORT;
+ }
+ }
+#line 40690 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1502: /* column_default_non_parenthesized_expr: ROW_SYM '(' expr ',' expr_list ')' */
+#line 9740 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
+ (yyval.item)= new (thd->mem_root) Item_row(thd, *(yyvsp[-1].item_list));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40701 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1503: /* column_default_non_parenthesized_expr: EXISTS '(' subselect ')' */
+#line 9747 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_exists_subselect(thd, (yyvsp[-1].select_lex));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40711 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1504: /* column_default_non_parenthesized_expr: '{' ident expr '}' */
+#line 9753 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= (yyvsp[-1].item)->make_odbc_literal(thd, &(yyvsp[-2].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 40720 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1505: /* column_default_non_parenthesized_expr: MATCH ident_list_arg AGAINST '(' bit_expr fulltext_options ')' */
+#line 9758 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-5].item_list)->push_front((yyvsp[-2].item), thd->mem_root);
+ Item_func_match *i1= new (thd->mem_root) Item_func_match(thd, *(yyvsp[-5].item_list),
+ (yyvsp[-1].num));
+ if (unlikely(i1 == NULL))
+ MYSQL_YYABORT;
+ Select->add_ftfunc_to_list(thd, i1);
+ (yyval.item)= i1;
+ }
+#line 40734 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1506: /* column_default_non_parenthesized_expr: CAST_SYM '(' expr AS cast_type ')' */
+#line 9768 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= (yyvsp[-1].Lex_cast_type).create_typecast_item_or_error(thd, (yyvsp[-3].item)))))
+ MYSQL_YYABORT;
+ }
+#line 40743 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1507: /* column_default_non_parenthesized_expr: CASE_SYM when_list_opt_else END */
+#line 9773 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= new(thd->mem_root) Item_func_case_searched(thd, *(yyvsp[-1].item_list)))))
+ MYSQL_YYABORT;
+ }
+#line 40752 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1508: /* column_default_non_parenthesized_expr: CASE_SYM expr when_list_opt_else END */
+#line 9778 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-1].item_list)->push_front((yyvsp[-2].item), thd->mem_root);
+ if (unlikely(!((yyval.item)= new (thd->mem_root) Item_func_case_simple(thd, *(yyvsp[-1].item_list)))))
+ MYSQL_YYABORT;
+ }
+#line 40762 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1509: /* column_default_non_parenthesized_expr: CONVERT_SYM '(' expr ',' cast_type ')' */
+#line 9784 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= (yyvsp[-1].Lex_cast_type).create_typecast_item_or_error(thd, (yyvsp[-3].item)))))
+ MYSQL_YYABORT;
+ }
+#line 40771 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1510: /* column_default_non_parenthesized_expr: CONVERT_SYM '(' expr USING charset_name ')' */
+#line 9789 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_conv_charset(thd, (yyvsp[-3].item), (yyvsp[-1].charset));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40781 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1511: /* column_default_non_parenthesized_expr: DEFAULT '(' simple_ident ')' */
+#line 9795 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item_splocal *il= (yyvsp[-1].item)->get_item_splocal();
+ if (unlikely(il))
+ my_yyabort_error((ER_WRONG_COLUMN_NAME, MYF(0), il->my_name()->str));
+ (yyval.item)= new (thd->mem_root) Item_default_value(thd, Lex->current_context(),
+ (yyvsp[-1].item), 0);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ Lex->default_used= TRUE;
+ }
+#line 40796 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1512: /* column_default_non_parenthesized_expr: VALUE_SYM '(' simple_ident_nospvar ')' */
+#line 9806 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_insert_value(thd, Lex->current_context(),
+ (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40807 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1513: /* column_default_non_parenthesized_expr: NEXT_SYM VALUE_SYM FOR_SYM table_ident */
+#line 9813 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_func_nextval(thd, (yyvsp[0].table)))))
+ MYSQL_YYABORT;
+ }
+#line 40816 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1514: /* column_default_non_parenthesized_expr: NEXTVAL_SYM '(' table_ident ')' */
+#line 9818 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_func_nextval(thd, (yyvsp[-1].table)))))
+ MYSQL_YYABORT;
+ }
+#line 40825 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1515: /* column_default_non_parenthesized_expr: PREVIOUS_SYM VALUE_SYM FOR_SYM table_ident */
+#line 9823 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_func_lastval(thd, (yyvsp[0].table)))))
+ MYSQL_YYABORT;
+ }
+#line 40834 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1516: /* column_default_non_parenthesized_expr: LASTVAL_SYM '(' table_ident ')' */
+#line 9828 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_func_lastval(thd, (yyvsp[-1].table)))))
+ MYSQL_YYABORT;
+ }
+#line 40843 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1517: /* column_default_non_parenthesized_expr: SETVAL_SYM '(' table_ident ',' longlong_num ')' */
+#line 9833 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_func_setval(thd, (yyvsp[-3].table), (yyvsp[-1].longlong_number), 0, 1))))
+ MYSQL_YYABORT;
+ }
+#line 40852 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1518: /* column_default_non_parenthesized_expr: SETVAL_SYM '(' table_ident ',' longlong_num ',' bool ')' */
+#line 9838 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_func_setval(thd, (yyvsp[-5].table), (yyvsp[-3].longlong_number), 0, (yyvsp[-1].ulong_num)))))
+ MYSQL_YYABORT;
+ }
+#line 40861 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1519: /* column_default_non_parenthesized_expr: SETVAL_SYM '(' table_ident ',' longlong_num ',' bool ',' ulonglong_num ')' */
+#line 9843 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_func_setval(thd, (yyvsp[-7].table), (yyvsp[-5].longlong_number), (yyvsp[-1].ulonglong_number), (yyvsp[-3].ulong_num)))))
+ MYSQL_YYABORT;
+ }
+#line 40870 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1522: /* primary_expr: '(' parenthesized_expr ')' */
+#line 9852 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)= (yyvsp[-1].item); }
+#line 40876 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1523: /* primary_expr: subquery */
+#line 9854 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.item)= Lex->create_item_query_expression(thd, (yyvsp[0].select_lex)->master_unit())))
+ MYSQL_YYABORT;
+ }
+#line 40885 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1525: /* string_factor_expr: string_factor_expr COLLATE_SYM collation_name */
+#line 9863 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= new (thd->mem_root)
+ Item_func_set_collation(thd, (yyvsp[-2].item), (yyvsp[0].Lex_extended_collation)))))
+ MYSQL_YYABORT;
+ }
+#line 40895 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1527: /* simple_expr: BINARY simple_expr */
+#line 9873 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Type_cast_attributes at(&my_charset_bin);
+ if (unlikely(!((yyval.item)= type_handler_long_blob.create_typecast_item(thd, (yyvsp[0].item), at))))
+ MYSQL_YYABORT;
+ }
+#line 40905 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1528: /* simple_expr: '+' simple_expr */
+#line 9879 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= (yyvsp[0].item);
+ }
+#line 40913 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1529: /* simple_expr: '-' simple_expr */
+#line 9883 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= (yyvsp[0].item)->neg(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40923 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1530: /* simple_expr: '~' simple_expr */
+#line 9889 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_bit_neg(thd, (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40933 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1531: /* simple_expr: not2 simple_expr */
+#line 9895 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= negate_expression(thd, (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40943 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1533: /* mysql_concatenation_expr: mysql_concatenation_expr MYSQL_CONCAT_SYM simple_expr */
+#line 9905 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_concat(thd, (yyvsp[-2].item), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40953 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1534: /* function_call_keyword_timestamp: TIMESTAMP '(' expr ')' */
+#line 9914 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_datetime_typecast(thd, (yyvsp[-1].item),
+ AUTO_SEC_PART_DIGITS);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40964 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1535: /* function_call_keyword_timestamp: TIMESTAMP '(' expr ',' expr ')' */
+#line 9921 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_timestamp(thd, (yyvsp[-3].item), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40974 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1536: /* function_call_keyword: CHAR_SYM '(' expr_list ')' */
+#line 9935 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_char(thd, *(yyvsp[-1].item_list));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40984 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1537: /* function_call_keyword: CHAR_SYM '(' expr_list USING charset_name ')' */
+#line 9941 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_char(thd, *(yyvsp[-3].item_list), (yyvsp[-1].charset));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 40994 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1538: /* function_call_keyword: CURRENT_USER optional_braces */
+#line 9947 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_current_user(thd,
+ Lex->current_context());
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
+ Lex->safe_to_cache_query= 0;
+ }
+#line 41007 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1539: /* function_call_keyword: CURRENT_ROLE optional_braces */
+#line 9956 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_current_role(thd,
+ Lex->current_context());
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
+ Lex->safe_to_cache_query= 0;
+ }
+#line 41020 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1540: /* function_call_keyword: DATE_SYM '(' expr ')' */
+#line 9965 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_typecast(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41030 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1541: /* function_call_keyword: DAY_SYM '(' expr ')' */
+#line 9971 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_dayofmonth(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41040 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1542: /* function_call_keyword: HOUR_SYM '(' expr ')' */
+#line 9977 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_hour(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41050 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1543: /* function_call_keyword: INSERT '(' expr ',' expr ',' expr ',' expr ')' */
+#line 9983 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_insert(thd, (yyvsp[-7].item), (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41060 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1544: /* function_call_keyword: INTERVAL_SYM '(' expr ',' expr ')' */
+#line 9989 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ List<Item> *list= new (thd->mem_root) List<Item>;
+ if (unlikely(list == NULL))
+ MYSQL_YYABORT;
+ if (unlikely(list->push_front((yyvsp[-1].item), thd->mem_root)) ||
+ unlikely(list->push_front((yyvsp[-3].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ Item_row *item= new (thd->mem_root) Item_row(thd, *list);
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ (yyval.item)= new (thd->mem_root) Item_func_interval(thd, item);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41079 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1545: /* function_call_keyword: INTERVAL_SYM '(' expr ',' expr ',' expr_list ')' */
+#line 10004 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-1].item_list)->push_front((yyvsp[-3].item), thd->mem_root);
+ (yyvsp[-1].item_list)->push_front((yyvsp[-5].item), thd->mem_root);
+ Item_row *item= new (thd->mem_root) Item_row(thd, *(yyvsp[-1].item_list));
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ (yyval.item)= new (thd->mem_root) Item_func_interval(thd, item);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41094 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1546: /* function_call_keyword: LEFT '(' expr ',' expr ')' */
+#line 10015 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_left(thd, (yyvsp[-3].item), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41104 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1547: /* function_call_keyword: MINUTE_SYM '(' expr ')' */
+#line 10021 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_minute(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41114 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1548: /* function_call_keyword: MONTH_SYM '(' expr ')' */
+#line 10027 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_month(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41124 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1549: /* function_call_keyword: RIGHT '(' expr ',' expr ')' */
+#line 10033 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_right(thd, (yyvsp[-3].item), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41134 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1550: /* function_call_keyword: SECOND_SYM '(' expr ')' */
+#line 10039 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_second(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41144 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1551: /* function_call_keyword: SQL_SYM PERCENT_ORACLE_SYM ROWCOUNT_SYM */
+#line 10045 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_oracle_sql_rowcount(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
+ Lex->safe_to_cache_query= 0;
+ }
+#line 41156 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1552: /* function_call_keyword: TIME_SYM '(' expr ')' */
+#line 10053 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_time_typecast(thd, (yyvsp[-1].item),
+ AUTO_SEC_PART_DIGITS);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41167 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1553: /* function_call_keyword: function_call_keyword_timestamp */
+#line 10060 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= (yyvsp[0].item);
+ }
+#line 41175 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1554: /* function_call_keyword: TRIM '(' trim_operands ')' */
+#line 10064 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Schema::find_implied(thd)->
+ make_item_func_trim(thd, (yyvsp[-1].trim)))))
+ MYSQL_YYABORT;
+ }
+#line 41185 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1555: /* function_call_keyword: USER_SYM '(' ')' */
+#line 10070 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_user(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
+ Lex->safe_to_cache_query=0;
+ }
+#line 41197 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1556: /* function_call_keyword: YEAR_SYM '(' expr ')' */
+#line 10078 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_year(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41207 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1559: /* substring_operands_regular: expr ',' expr ',' expr */
+#line 10092 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.substring_spec)= Lex_substring_spec_st::init((yyvsp[-4].item), (yyvsp[-2].item), (yyvsp[0].item));
+ }
+#line 41215 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1560: /* substring_operands_regular: expr ',' expr */
+#line 10096 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.substring_spec)= Lex_substring_spec_st::init((yyvsp[-2].item), (yyvsp[0].item));
+ }
+#line 41223 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1561: /* substring_operands_special: expr FROM expr FOR_SYM expr */
+#line 10103 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.substring_spec)= Lex_substring_spec_st::init((yyvsp[-4].item), (yyvsp[-2].item), (yyvsp[0].item));
+ }
+#line 41231 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1562: /* substring_operands_special: expr FROM expr */
+#line 10107 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.substring_spec)= Lex_substring_spec_st::init((yyvsp[-2].item), (yyvsp[0].item));
+ }
+#line 41239 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1563: /* function_call_nonkeyword: ADDDATE_SYM '(' expr ',' expr ')' */
+#line 10127 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-3].item), (yyvsp[-1].item),
+ INTERVAL_DAY, 0);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41250 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1564: /* function_call_nonkeyword: ADDDATE_SYM '(' expr ',' INTERVAL_SYM expr interval ')' */
+#line 10134 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 0);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41260 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1565: /* function_call_nonkeyword: CURDATE optional_braces */
+#line 10140 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_curdate_local(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ Lex->safe_to_cache_query=0;
+ }
+#line 41271 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1566: /* function_call_nonkeyword: CURTIME opt_time_precision */
+#line 10147 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_curtime_local(thd, (yyvsp[0].num));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ Lex->safe_to_cache_query=0;
+ }
+#line 41282 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1567: /* function_call_nonkeyword: DATE_ADD_INTERVAL '(' expr ',' INTERVAL_SYM expr interval ')' */
+#line 10154 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 0);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41292 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1568: /* function_call_nonkeyword: DATE_SUB_INTERVAL '(' expr ',' INTERVAL_SYM expr interval ')' */
+#line 10160 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 1);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41302 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1569: /* function_call_nonkeyword: EXTRACT_SYM '(' interval FROM expr ')' */
+#line 10166 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)=new (thd->mem_root) Item_extract(thd, (yyvsp[-3].interval), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41312 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1570: /* function_call_nonkeyword: GET_FORMAT '(' date_time_type ',' expr ')' */
+#line 10172 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_get_format(thd, (yyvsp[-3].date_time_type), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41322 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1571: /* function_call_nonkeyword: NOW_SYM opt_time_precision */
+#line 10178 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_now_local(thd, (yyvsp[0].num));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ Lex->safe_to_cache_query=0;
+ }
+#line 41333 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1572: /* function_call_nonkeyword: POSITION_SYM '(' bit_expr IN_SYM expr ')' */
+#line 10185 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_locate(thd, (yyvsp[-1].item), (yyvsp[-3].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41343 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1573: /* function_call_nonkeyword: ROWNUM_SYM '(' ')' */
+#line 10196 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_rownum(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41353 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1574: /* function_call_nonkeyword: SUBDATE_SYM '(' expr ',' expr ')' */
+#line 10202 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-3].item), (yyvsp[-1].item),
+ INTERVAL_DAY, 1);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41364 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1575: /* function_call_nonkeyword: SUBDATE_SYM '(' expr ',' INTERVAL_SYM expr interval ')' */
+#line 10209 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 1);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41374 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1576: /* function_call_nonkeyword: SUBSTRING '(' substring_operands ')' */
+#line 10215 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Schema::find_implied(thd)->
+ make_item_func_substr(thd, (yyvsp[-1].substring_spec)))))
+ MYSQL_YYABORT;
+ }
+#line 41384 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1577: /* function_call_nonkeyword: SYSDATE '(' ')' */
+#line 10228 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_func_sysdate(thd, 0))))
+ MYSQL_YYABORT;
+ }
+#line 41393 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1578: /* function_call_nonkeyword: SYSDATE '(' real_ulong_num ')' */
+#line 10233 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_func_sysdate(thd, (uint) (yyvsp[-1].ulong_num)))))
+ MYSQL_YYABORT;
+ }
+#line 41402 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1579: /* function_call_nonkeyword: TIMESTAMP_ADD '(' interval_time_stamp ',' expr ',' expr ')' */
+#line 10238 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_date_add_interval(thd, (yyvsp[-1].item), (yyvsp[-3].item), (yyvsp[-5].interval_time_st), 0);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41412 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1580: /* function_call_nonkeyword: TIMESTAMP_DIFF '(' interval_time_stamp ',' expr ',' expr ')' */
+#line 10244 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_timestamp_diff(thd, (yyvsp[-3].item), (yyvsp[-1].item), (yyvsp[-5].interval_time_st));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41422 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1581: /* function_call_nonkeyword: TRIM_ORACLE '(' trim_operands ')' */
+#line 10250 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= (yyvsp[-1].trim).make_item_func_trim_oracle(thd))))
+ MYSQL_YYABORT;
+ }
+#line 41431 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1582: /* function_call_nonkeyword: UTC_DATE_SYM optional_braces */
+#line 10255 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_curdate_utc(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ Lex->safe_to_cache_query=0;
+ }
+#line 41442 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1583: /* function_call_nonkeyword: UTC_TIME_SYM opt_time_precision */
+#line 10262 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_curtime_utc(thd, (yyvsp[0].num));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ Lex->safe_to_cache_query=0;
+ }
+#line 41453 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1584: /* function_call_nonkeyword: UTC_TIMESTAMP_SYM opt_time_precision */
+#line 10269 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_now_utc(thd, (yyvsp[0].num));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ Lex->safe_to_cache_query=0;
+ }
+#line 41464 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1585: /* function_call_nonkeyword: COLUMN_ADD_SYM '(' expr ',' dyncall_create_list ')' */
+#line 10277 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= create_func_dyncol_add(thd, (yyvsp[-3].item), *(yyvsp[-1].dyncol_def_list));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41474 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1586: /* function_call_nonkeyword: COLUMN_DELETE_SYM '(' expr ',' expr_list ')' */
+#line 10284 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= create_func_dyncol_delete(thd, (yyvsp[-3].item), *(yyvsp[-1].item_list));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41484 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1587: /* function_call_nonkeyword: COLUMN_CREATE_SYM '(' dyncall_create_list ')' */
+#line 10291 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= create_func_dyncol_create(thd, *(yyvsp[-1].dyncol_def_list));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41494 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1588: /* function_call_nonkeyword: COLUMN_GET_SYM '(' expr ',' expr AS cast_type ')' */
+#line 10298 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= create_func_dyncol_get(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].Lex_cast_type).type_handler(),
+ (yyvsp[-1].Lex_cast_type), (yyvsp[-1].Lex_cast_type).charset());
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41505 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1589: /* function_call_conflict: ASCII_SYM '(' expr ')' */
+#line 10313 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_ascii(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41515 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1590: /* function_call_conflict: CHARSET '(' expr ')' */
+#line 10319 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_charset(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41525 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1591: /* function_call_conflict: IF_SYM '(' expr ',' expr ',' expr ')' */
+#line 10325 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_if(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41535 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1592: /* function_call_conflict: LAST_VALUE '(' expr ')' */
+#line 10334 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ List<Item> *list= new (thd->mem_root) List<Item>;
+ if (unlikely(list == NULL))
+ MYSQL_YYABORT;
+ list->push_back((yyvsp[-1].item), thd->mem_root);
+
+ (yyval.item)= new (thd->mem_root) Item_func_last_value(thd, *list);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41550 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1593: /* function_call_conflict: LAST_VALUE '(' expr_list ',' expr ')' */
+#line 10345 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-3].item_list)->push_back((yyvsp[-1].item), thd->mem_root);
+ (yyval.item)= new (thd->mem_root) Item_func_last_value(thd, *(yyvsp[-3].item_list));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41561 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1594: /* function_call_conflict: MOD_SYM '(' expr ',' expr ')' */
+#line 10352 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_mod(thd, (yyvsp[-3].item), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41571 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1595: /* function_call_conflict: PASSWORD_SYM '(' expr ')' */
+#line 10358 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item* i1;
+ i1= new (thd->mem_root) Item_func_password(thd, (yyvsp[-1].item));
+ if (unlikely(i1 == NULL))
+ MYSQL_YYABORT;
+ (yyval.item)= i1;
+ }
+#line 41583 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1596: /* function_call_conflict: REPEAT_SYM '(' expr ',' expr ')' */
+#line 10366 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_repeat(thd, (yyvsp[-3].item), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41593 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1597: /* function_call_conflict: REPLACE '(' expr ',' expr ',' expr ')' */
+#line 10372 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Schema::find_implied(thd)->
+ make_item_func_replace(thd, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item)))))
+ MYSQL_YYABORT;
+ }
+#line 41603 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1598: /* function_call_conflict: TRUNCATE_SYM '(' expr ',' expr ')' */
+#line 10378 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_round(thd, (yyvsp[-3].item), (yyvsp[-1].item), 1);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41613 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1599: /* function_call_conflict: WEIGHT_STRING_SYM '(' expr opt_ws_levels ')' */
+#line 10384 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_weight_string(thd, (yyvsp[-2].item), 0, 0, (yyvsp[-1].ulong_num));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41623 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1600: /* function_call_conflict: WEIGHT_STRING_SYM '(' expr AS CHAR_SYM ws_nweights opt_ws_levels ')' */
+#line 10390 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root)
+ Item_func_weight_string(thd, (yyvsp[-5].item), 0, (yyvsp[-2].ulong_num),
+ (yyvsp[-1].ulong_num) | MY_STRXFRM_PAD_WITH_SPACE);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41635 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1601: /* function_call_conflict: WEIGHT_STRING_SYM '(' expr AS BINARY ws_nweights ')' */
+#line 10398 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *item= new (thd->mem_root) Item_char_typecast(thd, (yyvsp[-4].item), (yyvsp[-1].ulong_num),
+ &my_charset_bin);
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ (yyval.item)= new (thd->mem_root)
+ Item_func_weight_string(thd, item, 0, (yyvsp[-1].ulong_num),
+ MY_STRXFRM_PAD_WITH_SPACE);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41651 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1602: /* function_call_conflict: WEIGHT_STRING_SYM '(' expr ',' ulong_num ',' ulong_num ',' ulong_num ')' */
+#line 10410 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_func_weight_string(thd, (yyvsp[-7].item), (yyvsp[-5].ulong_num), (yyvsp[-3].ulong_num),
+ (yyvsp[-1].ulong_num));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41662 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1603: /* @142: %empty */
+#line 10429 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+#ifdef HAVE_DLOPEN
+ udf_func *udf= 0;
+ LEX *lex= Lex;
+ if (using_udf_functions &&
+ (udf= find_udf((yyvsp[-1].ident_sys).str, (yyvsp[-1].ident_sys).length)) &&
+ udf->type == UDFTYPE_AGGREGATE)
+ {
+ if (unlikely(lex->current_select->inc_in_sum_expr()))
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ }
+ /* Temporary placing the result of find_udf in $3 */
+ (yyval.udf)= udf;
+#endif
+ }
+#line 41685 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1604: /* function_call_generic: ident_func '(' @142 opt_udf_expr_list ')' */
+#line 10448 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ const Type_handler *h;
+ Create_func *builder;
+ Item *item= NULL;
+
+ if (unlikely(check_routine_name(&(yyvsp[-4].ident_sys))))
+ MYSQL_YYABORT;
+
+ /*
+ Implementation note:
+ names are resolved with the following order:
+ - MySQL native functions,
+ - User Defined Functions,
+ - Constructors, like POINT(1,1)
+ - Stored Functions (assuming the current <use> database)
+
+ This will be revised with WL#2128 (SQL PATH)
+ */
+ builder= Schema::find_implied(thd)->
+ find_native_function_builder(thd, (yyvsp[-4].ident_sys));
+ if (builder)
+ {
+ item= builder->create_func(thd, &(yyvsp[-4].ident_sys), (yyvsp[-1].item_list));
+ }
+ else if ((h= Type_handler::handler_by_name(thd, (yyvsp[-4].ident_sys))) &&
+ (item= h->make_constructor_item(thd, (yyvsp[-1].item_list))))
+ {
+ // Found a constructor with a proper argument count
+ }
+ else
+ {
+#ifdef HAVE_DLOPEN
+ /* Retrieving the result of find_udf */
+ udf_func *udf= (yyvsp[-2].udf);
+
+ if (udf)
+ {
+ if (udf->type == UDFTYPE_AGGREGATE)
+ {
+ Select->in_sum_expr--;
+ }
+
+ item= Create_udf_func::s_singleton.create(thd, udf, (yyvsp[-1].item_list));
+ }
+ else
+#endif
+ {
+ builder= find_qualified_function_builder(thd);
+ DBUG_ASSERT(builder);
+ item= builder->create_func(thd, &(yyvsp[-4].ident_sys), (yyvsp[-1].item_list));
+ }
+ }
+
+ if (unlikely(! ((yyval.item)= item)))
+ MYSQL_YYABORT;
+ }
+#line 41746 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1605: /* function_call_generic: CONTAINS_SYM '(' opt_expr_list ')' */
+#line 10505 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.item)= Lex->make_item_func_call_native_or_parse_error(thd,
+ (yyvsp[-3].kwd), (yyvsp[-1].item_list))))
+ MYSQL_YYABORT;
+ }
+#line 41756 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1606: /* function_call_generic: OVERLAPS_SYM '(' opt_expr_list ')' */
+#line 10511 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.item)= Lex->make_item_func_call_native_or_parse_error(thd,
+ (yyvsp[-3].kwd), (yyvsp[-1].item_list))))
+ MYSQL_YYABORT;
+ }
+#line 41766 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1607: /* function_call_generic: WITHIN '(' opt_expr_list ')' */
+#line 10517 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.item)= Lex->make_item_func_call_native_or_parse_error(thd,
+ (yyvsp[-3].kwd), (yyvsp[-1].item_list))))
+ MYSQL_YYABORT;
+ }
+#line 41776 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1608: /* function_call_generic: ident_cli '.' ident_cli '(' opt_expr_list ')' */
+#line 10523 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_func_call_generic(thd, &(yyvsp[-5].ident_cli), &(yyvsp[-3].ident_cli), (yyvsp[-1].item_list)))))
+ MYSQL_YYABORT;
+ }
+#line 41785 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1609: /* function_call_generic: ident_cli '.' ident_cli '.' ident_cli '(' opt_expr_list ')' */
+#line 10528 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_func_call_generic(thd, &(yyvsp[-7].ident_cli), &(yyvsp[-5].ident_cli), &(yyvsp[-3].ident_cli), (yyvsp[-1].item_list)))))
+ MYSQL_YYABORT;
+ }
+#line 41794 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1610: /* function_call_generic: ident_cli '.' REPLACE '(' opt_expr_list ')' */
+#line 10533 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_func_replace(thd, (yyvsp[-5].ident_cli), (yyvsp[-3].kwd), (yyvsp[-1].item_list)))))
+ MYSQL_YYABORT;
+ }
+#line 41803 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1611: /* function_call_generic: ident_cli '.' SUBSTRING '(' opt_expr_list ')' */
+#line 10538 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_func_substr(thd, (yyvsp[-5].ident_cli), (yyvsp[-3].kwd), (yyvsp[-1].item_list)))))
+ MYSQL_YYABORT;
+ }
+#line 41812 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1612: /* function_call_generic: ident_cli '.' SUBSTRING '(' substring_operands_special ')' */
+#line 10543 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_func_substr(thd, (yyvsp[-5].ident_cli), (yyvsp[-3].kwd), (yyvsp[-1].substring_spec)))))
+ MYSQL_YYABORT;
+ }
+#line 41821 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1613: /* function_call_generic: ident_cli '.' TRIM '(' opt_expr_list ')' */
+#line 10548 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_func_trim(thd, (yyvsp[-5].ident_cli), (yyvsp[-3].kwd), (yyvsp[-1].item_list)))))
+ MYSQL_YYABORT;
+ }
+#line 41830 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1614: /* function_call_generic: ident_cli '.' TRIM '(' trim_operands_special ')' */
+#line 10553 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_func_trim(thd, (yyvsp[-5].ident_cli), (yyvsp[-3].kwd), (yyvsp[-1].trim)))))
+ MYSQL_YYABORT;
+ }
+#line 41839 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1615: /* fulltext_options: opt_natural_language_mode opt_query_expansion */
+#line 10573 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= (yyvsp[-1].num) | (yyvsp[0].num); }
+#line 41845 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1616: /* fulltext_options: IN_SYM BOOLEAN_SYM MODE_SYM */
+#line 10575 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= FT_BOOL; }
+#line 41851 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1617: /* opt_natural_language_mode: %empty */
+#line 10579 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= FT_NL; }
+#line 41857 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1618: /* opt_natural_language_mode: IN_SYM NATURAL LANGUAGE_SYM MODE_SYM */
+#line 10580 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= FT_NL; }
+#line 41863 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1619: /* opt_query_expansion: %empty */
+#line 10584 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 41869 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1620: /* opt_query_expansion: WITH QUERY_SYM EXPANSION_SYM */
+#line 10585 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= FT_EXPAND; }
+#line 41875 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1621: /* opt_udf_expr_list: %empty */
+#line 10589 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item_list)= NULL; }
+#line 41881 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1622: /* opt_udf_expr_list: udf_expr_list */
+#line 10590 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item_list)= (yyvsp[0].item_list); }
+#line 41887 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1623: /* udf_expr_list: udf_expr */
+#line 10595 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item_list)= new (thd->mem_root) List<Item>;
+ if (unlikely((yyval.item_list) == NULL))
+ MYSQL_YYABORT;
+ (yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root);
+ }
+#line 41898 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1624: /* udf_expr_list: udf_expr_list ',' udf_expr */
+#line 10602 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-2].item_list)->push_back((yyvsp[0].item), thd->mem_root);
+ (yyval.item_list)= (yyvsp[-2].item_list);
+ }
+#line 41907 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1625: /* udf_expr: remember_name expr remember_end select_alias */
+#line 10610 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ Use Item::name as a storage for the attribute value of user
+ defined function argument. It is safe to use Item::name
+ because the syntax will not allow having an explicit name here.
+ See WL#1017 re. udf attributes.
+ */
+ if ((yyvsp[0].lex_str).str)
+ {
+ (yyvsp[-2].item)->base_flags|= item_base_t::IS_EXPLICIT_NAME;
+ (yyvsp[-2].item)->set_name(thd, (yyvsp[0].lex_str));
+ }
+ /*
+ A field has to have its proper name in order for name
+ resolution to work, something we are only guaranteed if we
+ parse it out. If we hijack the input stream with
+ remember_name we may get quoted or escaped names.
+ */
+ else if ((yyvsp[-2].item)->type() != Item::FIELD_ITEM &&
+ (yyvsp[-2].item)->type() != Item::REF_ITEM /* For HAVING */ )
+ (yyvsp[-2].item)->set_name(thd, (yyvsp[-3].simple_string), (uint) ((yyvsp[-1].simple_string) - (yyvsp[-3].simple_string)), thd->charset());
+ (yyval.item)= (yyvsp[-2].item);
+ }
+#line 41935 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1626: /* sum_expr: AVG_SYM '(' in_sum_expr ')' */
+#line 10637 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_avg(thd, (yyvsp[-1].item), FALSE);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41945 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1627: /* sum_expr: AVG_SYM '(' DISTINCT in_sum_expr ')' */
+#line 10643 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_avg(thd, (yyvsp[-1].item), TRUE);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41955 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1628: /* sum_expr: BIT_AND '(' in_sum_expr ')' */
+#line 10649 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_and(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41965 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1629: /* sum_expr: BIT_OR '(' in_sum_expr ')' */
+#line 10655 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_or(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41975 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1630: /* sum_expr: BIT_XOR '(' in_sum_expr ')' */
+#line 10661 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_xor(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41985 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1631: /* sum_expr: COUNT_SYM '(' opt_all '*' ')' */
+#line 10667 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *item= new (thd->mem_root) Item_int(thd, (int32) 0L, 1);
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ (yyval.item)= new (thd->mem_root) Item_sum_count(thd, item);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 41998 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1632: /* sum_expr: COUNT_SYM '(' in_sum_expr ')' */
+#line 10676 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_count(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42008 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1633: /* $@143: %empty */
+#line 10682 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->in_sum_expr++; }
+#line 42014 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1634: /* $@144: %empty */
+#line 10684 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->in_sum_expr--; }
+#line 42020 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1635: /* sum_expr: COUNT_SYM '(' DISTINCT $@143 expr_list $@144 ')' */
+#line 10686 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_count(thd, *(yyvsp[-2].item_list));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42030 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1636: /* sum_expr: MIN_SYM '(' in_sum_expr ')' */
+#line 10692 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_min(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42040 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1637: /* sum_expr: MIN_SYM '(' DISTINCT in_sum_expr ')' */
+#line 10703 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_min(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42050 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1638: /* sum_expr: MAX_SYM '(' in_sum_expr ')' */
+#line 10709 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_max(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42060 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1639: /* sum_expr: MAX_SYM '(' DISTINCT in_sum_expr ')' */
+#line 10715 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_max(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42070 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1640: /* sum_expr: STD_SYM '(' in_sum_expr ')' */
+#line 10721 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_std(thd, (yyvsp[-1].item), 0);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42080 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1641: /* sum_expr: VARIANCE_SYM '(' in_sum_expr ')' */
+#line 10727 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_variance(thd, (yyvsp[-1].item), 0);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42090 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1642: /* sum_expr: STDDEV_SAMP_SYM '(' in_sum_expr ')' */
+#line 10733 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_std(thd, (yyvsp[-1].item), 1);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42100 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1643: /* sum_expr: VAR_SAMP_SYM '(' in_sum_expr ')' */
+#line 10739 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_variance(thd, (yyvsp[-1].item), 1);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42110 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1644: /* sum_expr: SUM_SYM '(' in_sum_expr ')' */
+#line 10745 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_sum(thd, (yyvsp[-1].item), FALSE);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42120 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1645: /* sum_expr: SUM_SYM '(' DISTINCT in_sum_expr ')' */
+#line 10751 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_sum(thd, (yyvsp[-1].item), TRUE);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42130 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1646: /* $@145: %empty */
+#line 10757 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->in_sum_expr++; }
+#line 42136 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1647: /* sum_expr: GROUP_CONCAT_SYM '(' opt_distinct $@145 expr_list opt_gorder_clause opt_gconcat_separator opt_glimit_clause ')' */
+#line 10761 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX *sel= Select;
+ sel->in_sum_expr--;
+ (yyval.item)= new (thd->mem_root)
+ Item_func_group_concat(thd, Lex->current_context(),
+ (yyvsp[-6].num), (yyvsp[-4].item_list),
+ sel->gorder_list, (yyvsp[-2].string), (yyvsp[-1].num),
+ sel->limit_params.select_limit,
+ sel->limit_params.offset_limit);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ sel->limit_params.clear();
+ (yyvsp[-4].item_list)->empty();
+ sel->gorder_list.empty();
+ }
+#line 42156 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1648: /* $@146: %empty */
+#line 10777 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->in_sum_expr++; }
+#line 42162 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1649: /* sum_expr: JSON_ARRAYAGG_SYM '(' opt_distinct $@146 expr_list opt_gorder_clause opt_glimit_clause ')' */
+#line 10780 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX *sel= Select;
+ List<Item> *args= (yyvsp[-3].item_list);
+ sel->in_sum_expr--;
+ if (args && args->elements > 1)
+ {
+ /* JSON_ARRAYAGG supports only one parameter */
+ my_error(ER_WRONG_PARAMCOUNT_TO_NATIVE_FCT, MYF(0), "JSON_ARRAYAGG");
+ MYSQL_YYABORT;
+ }
+ String* s= new (thd->mem_root) String(",", 1, &my_charset_latin1);
+ if (unlikely(s == NULL))
+ MYSQL_YYABORT;
+
+ (yyval.item)= new (thd->mem_root)
+ Item_func_json_arrayagg(thd, Lex->current_context(),
+ (yyvsp[-5].num), args,
+ sel->gorder_list, s, (yyvsp[-1].num),
+ sel->limit_params.select_limit,
+ sel->limit_params.offset_limit);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ sel->limit_params.clear();
+ (yyvsp[-3].item_list)->empty();
+ sel->gorder_list.empty();
+ }
+#line 42193 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1650: /* $@147: %empty */
+#line 10807 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->in_sum_expr++; }
+#line 42199 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1651: /* sum_expr: JSON_OBJECTAGG_SYM '(' $@147 expr ',' expr ')' */
+#line 10809 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX *sel= Select;
+ sel->in_sum_expr--;
+
+ (yyval.item)= new (thd->mem_root) Item_func_json_objectagg(thd, (yyvsp[-3].item), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42212 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1652: /* window_func_expr: window_func OVER_SYM window_name */
+#line 10821 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_window_func(thd, (Item_sum *) (yyvsp[-2].item), (yyvsp[0].lex_str_ptr));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ if (unlikely(Select->add_window_func((Item_window_func *) (yyval.item))))
+ MYSQL_YYABORT;
+ }
+#line 42224 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1653: /* window_func_expr: window_func OVER_SYM window_spec */
+#line 10830 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(Select->add_window_spec(thd, lex->win_ref,
+ Select->group_list,
+ Select->order_list,
+ lex->win_frame)))
+ MYSQL_YYABORT;
+ (yyval.item)= new (thd->mem_root) Item_window_func(thd, (Item_sum *) (yyvsp[-2].item),
+ thd->lex->win_spec);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ if (unlikely(Select->add_window_func((Item_window_func *) (yyval.item))))
+ MYSQL_YYABORT;
+ }
+#line 42243 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1656: /* window_func: function_call_generic */
+#line 10852 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item* item = (Item*)(yyvsp[0].item);
+ /* Only UDF aggregate here possible */
+ if ((item == NULL) ||
+ (item->type() != Item::SUM_FUNC_ITEM)
+ || (((Item_sum *)item)->sum_func() != Item_sum::UDF_SUM_FUNC))
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ }
+#line 42259 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1657: /* simple_window_func: ROW_NUMBER_SYM '(' ')' */
+#line 10867 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_row_number(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42269 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1658: /* simple_window_func: RANK_SYM '(' ')' */
+#line 10874 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_rank(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42279 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1659: /* simple_window_func: DENSE_RANK_SYM '(' ')' */
+#line 10881 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_dense_rank(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42289 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1660: /* simple_window_func: PERCENT_RANK_SYM '(' ')' */
+#line 10888 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_percent_rank(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42299 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1661: /* simple_window_func: CUME_DIST_SYM '(' ')' */
+#line 10895 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_cume_dist(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42309 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1662: /* simple_window_func: NTILE_SYM '(' expr ')' */
+#line 10902 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_ntile(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42319 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1663: /* simple_window_func: FIRST_VALUE_SYM '(' expr ')' */
+#line 10909 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_first_value(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42329 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1664: /* simple_window_func: LAST_VALUE '(' expr ')' */
+#line 10916 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_last_value(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42339 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1665: /* simple_window_func: NTH_VALUE_SYM '(' expr ',' expr ')' */
+#line 10923 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_nth_value(thd, (yyvsp[-3].item), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42349 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1666: /* simple_window_func: LEAD_SYM '(' expr ')' */
+#line 10930 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* No second argument defaults to 1. */
+ Item* item_offset= new (thd->mem_root) Item_uint(thd, 1);
+ if (unlikely(item_offset == NULL))
+ MYSQL_YYABORT;
+ (yyval.item)= new (thd->mem_root) Item_sum_lead(thd, (yyvsp[-1].item), item_offset);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42363 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1667: /* simple_window_func: LEAD_SYM '(' expr ',' expr ')' */
+#line 10941 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_lead(thd, (yyvsp[-3].item), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42373 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1668: /* simple_window_func: LAG_SYM '(' expr ')' */
+#line 10948 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* No second argument defaults to 1. */
+ Item* item_offset= new (thd->mem_root) Item_uint(thd, 1);
+ if (unlikely(item_offset == NULL))
+ MYSQL_YYABORT;
+ (yyval.item)= new (thd->mem_root) Item_sum_lag(thd, (yyvsp[-1].item), item_offset);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42387 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1669: /* simple_window_func: LAG_SYM '(' expr ',' expr ')' */
+#line 10959 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_lag(thd, (yyvsp[-3].item), (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42397 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1670: /* inverse_distribution_function: percentile_function OVER_SYM '(' opt_window_partition_clause ')' */
+#line 10971 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(Select->add_window_spec(thd, lex->win_ref,
+ Select->group_list,
+ Select->order_list,
+ NULL)))
+ MYSQL_YYABORT;
+ (yyval.item)= new (thd->mem_root) Item_window_func(thd, (Item_sum *) (yyvsp[-4].item),
+ thd->lex->win_spec);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ if (unlikely(Select->add_window_func((Item_window_func *) (yyval.item))))
+ MYSQL_YYABORT;
+ }
+#line 42416 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1671: /* $@148: %empty */
+#line 10989 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->prepare_add_window_spec(thd); }
+#line 42422 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1672: /* percentile_function: inverse_distribution_function_def WITHIN GROUP_SYM '(' $@148 order_by_single_element_list ')' */
+#line 10991 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= (yyvsp[-6].item);
+ }
+#line 42430 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1673: /* percentile_function: MEDIAN_SYM '(' expr ')' */
+#line 10995 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *args= new (thd->mem_root) Item_decimal(thd, "0.5", 3,
+ thd->charset());
+ if (unlikely(args == NULL) || unlikely(thd->is_error()))
+ MYSQL_YYABORT;
+ Select->prepare_add_window_spec(thd);
+ if (unlikely(add_order_to_list(thd, (yyvsp[-1].item),FALSE)))
+ MYSQL_YYABORT;
+
+ (yyval.item)= new (thd->mem_root) Item_sum_percentile_cont(thd, args);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42448 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1674: /* inverse_distribution_function_def: PERCENTILE_CONT_SYM '(' expr ')' */
+#line 11012 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_percentile_cont(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42458 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1675: /* inverse_distribution_function_def: PERCENTILE_DISC_SYM '(' expr ')' */
+#line 11018 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_sum_percentile_disc(thd, (yyvsp[-1].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42468 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1676: /* order_by_single_element_list: ORDER_SYM BY order_ident order_dir */
+#line 11027 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(add_order_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))))
+ MYSQL_YYABORT;
+ }
+#line 42477 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1677: /* window_name: ident */
+#line 11036 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.lex_str_ptr)= (LEX_CSTRING *) thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING));
+ if (unlikely((yyval.lex_str_ptr) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42487 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1678: /* $@149: %empty */
+#line 11045 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(! Lex->parsing_options.allows_variable))
+ my_yyabort_error((ER_VIEW_SELECT_VARIABLE, MYF(0)));
+ }
+#line 42496 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1679: /* variable: '@' $@149 variable_aux */
+#line 11050 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= (yyvsp[0].item);
+ }
+#line 42504 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1680: /* variable_aux: ident_or_text SET_VAR expr */
+#line 11057 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item_func_set_user_var *item;
+ if (!(yyvsp[-2].lex_str).length)
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ (yyval.item)= item= new (thd->mem_root) Item_func_set_user_var(thd, &(yyvsp[-2].lex_str), (yyvsp[0].item));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ LEX *lex= Lex;
+ lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
+ lex->set_var_list.push_back(item, thd->mem_root);
+ }
+#line 42523 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1681: /* variable_aux: ident_or_text */
+#line 11072 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!(yyvsp[0].lex_str).length)
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ (yyval.item)= new (thd->mem_root) Item_func_get_user_var(thd, &(yyvsp[0].lex_str));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ LEX *lex= Lex;
+ lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
+ }
+#line 42540 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1682: /* variable_aux: '@' opt_var_ident_type ident_sysvar_name */
+#line 11085 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_sysvar(thd, (yyvsp[-1].var_type), &(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 42549 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1683: /* variable_aux: '@' opt_var_ident_type ident_sysvar_name '.' ident */
+#line 11090 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_sysvar(thd, (yyvsp[-3].var_type), &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 42558 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1684: /* opt_distinct: %empty */
+#line 11097 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num) = 0; }
+#line 42564 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1685: /* opt_distinct: DISTINCT */
+#line 11098 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num) = 1; }
+#line 42570 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1686: /* opt_gconcat_separator: %empty */
+#line 11103 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.string)= new (thd->mem_root) String(",", 1, &my_charset_latin1);
+ if (unlikely((yyval.string) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 42580 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1687: /* opt_gconcat_separator: SEPARATOR_SYM text_string */
+#line 11108 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.string) = (yyvsp[0].string); }
+#line 42586 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1690: /* gorder_list: gorder_list ',' order_ident order_dir */
+#line 11118 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(add_gorder_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))))
+ MYSQL_YYABORT;
+ }
+#line 42595 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1691: /* gorder_list: order_ident order_dir */
+#line 11123 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(add_gorder_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))))
+ MYSQL_YYABORT;
+ }
+#line 42604 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1692: /* opt_glimit_clause: %empty */
+#line 11130 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num) = 0; }
+#line 42610 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1693: /* opt_glimit_clause: glimit_clause */
+#line 11131 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num) = 1; }
+#line 42616 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1694: /* glimit_clause: LIMIT glimit_options */
+#line 11137 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
+ }
+#line 42624 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1695: /* glimit_options: limit_options */
+#line 11144 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->limit_params= (yyvsp[0].select_limit);
+ }
+#line 42632 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1696: /* $@150: %empty */
+#line 11153 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(lex->current_select->inc_in_sum_expr()))
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ }
+#line 42645 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1697: /* in_sum_expr: opt_all $@150 expr */
+#line 11162 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->in_sum_expr--;
+ (yyval.item)= (yyvsp[0].item);
+ }
+#line 42654 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1698: /* cast_type: BINARY opt_field_length */
+#line 11170 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_long_blob, (yyvsp[0].Lex_length_and_dec), &my_charset_bin); }
+#line 42660 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1699: /* cast_type: CHAR_SYM opt_field_length opt_binary */
+#line 11172 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyval.Lex_cast_type).set(&type_handler_long_blob, (yyvsp[-1].Lex_length_and_dec), (yyvsp[0].Lex_exact_charset_extended_collation_attrs),
+ thd->variables.collation_connection))
+ MYSQL_YYABORT;
+ }
+#line 42670 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1700: /* cast_type: VARCHAR field_length opt_binary */
+#line 11178 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyval.Lex_cast_type).set(&type_handler_long_blob, (yyvsp[-1].Lex_length_and_dec), (yyvsp[0].Lex_exact_charset_extended_collation_attrs),
+ thd->variables.collation_connection))
+ MYSQL_YYABORT;
+ }
+#line 42680 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1701: /* cast_type: VARCHAR2_ORACLE_SYM field_length opt_binary */
+#line 11184 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyval.Lex_cast_type).set(&type_handler_long_blob, (yyvsp[-1].Lex_length_and_dec), (yyvsp[0].Lex_exact_charset_extended_collation_attrs),
+ thd->variables.collation_connection))
+ MYSQL_YYABORT;
+ }
+#line 42690 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1702: /* cast_type: NCHAR_SYM opt_field_length */
+#line 11190 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_cast_type).set(&type_handler_long_blob, (yyvsp[0].Lex_length_and_dec), national_charset_info);
+ }
+#line 42698 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1703: /* cast_type: cast_type_numeric */
+#line 11193 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type)= (yyvsp[0].Lex_cast_type); }
+#line 42704 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1704: /* cast_type: cast_type_temporal */
+#line 11194 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type)= (yyvsp[0].Lex_cast_type); }
+#line 42710 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1705: /* cast_type: udt_name */
+#line 11196 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->set_cast_type_udt(&(yyval.Lex_cast_type), (yyvsp[0].lex_str)))
+ MYSQL_YYABORT;
+ }
+#line 42719 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1706: /* cast_type_numeric: INT_SYM */
+#line 11203 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_slonglong); }
+#line 42725 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1707: /* cast_type_numeric: SIGNED_SYM */
+#line 11204 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_slonglong); }
+#line 42731 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1708: /* cast_type_numeric: SIGNED_SYM INT_SYM */
+#line 11205 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_slonglong); }
+#line 42737 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1709: /* cast_type_numeric: UNSIGNED */
+#line 11206 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_ulonglong); }
+#line 42743 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1710: /* cast_type_numeric: UNSIGNED INT_SYM */
+#line 11207 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_ulonglong); }
+#line 42749 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1711: /* cast_type_numeric: DECIMAL_SYM float_options */
+#line 11208 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_newdecimal, (yyvsp[0].Lex_length_and_dec)); }
+#line 42755 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1712: /* cast_type_numeric: FLOAT_SYM */
+#line 11209 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_float); }
+#line 42761 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1713: /* cast_type_numeric: DOUBLE_SYM opt_precision */
+#line 11210 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_double, (yyvsp[0].Lex_length_and_dec)); }
+#line 42767 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1714: /* cast_type_temporal: DATE_SYM */
+#line 11214 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_newdate); }
+#line 42773 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1715: /* cast_type_temporal: TIME_SYM opt_field_scale */
+#line 11215 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_time2, (yyvsp[0].Lex_length_and_dec)); }
+#line 42779 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1716: /* cast_type_temporal: DATETIME opt_field_scale */
+#line 11216 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.Lex_cast_type).set(&type_handler_datetime2, (yyvsp[0].Lex_length_and_dec)); }
+#line 42785 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1717: /* cast_type_temporal: INTERVAL_SYM DAY_SECOND_SYM field_scale */
+#line 11218 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.Lex_cast_type).set(&type_handler_interval_DDhhmmssff, (yyvsp[0].Lex_length_and_dec));
+ }
+#line 42793 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1718: /* opt_expr_list: %empty */
+#line 11224 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item_list)= NULL; }
+#line 42799 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1719: /* opt_expr_list: expr_list */
+#line 11225 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item_list)= (yyvsp[0].item_list);}
+#line 42805 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1720: /* expr_list: expr */
+#line 11230 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item_list)= List<Item>::make(thd->mem_root, (yyvsp[0].item)))))
+ MYSQL_YYABORT;
+ }
+#line 42814 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1721: /* expr_list: expr_list ',' expr */
+#line 11235 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-2].item_list)->push_back((yyvsp[0].item), thd->mem_root);
+ (yyval.item_list)= (yyvsp[-2].item_list);
+ }
+#line 42823 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1722: /* ident_list_arg: ident_list */
+#line 11242 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item_list)= (yyvsp[0].item_list); }
+#line 42829 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1723: /* ident_list_arg: '(' ident_list ')' */
+#line 11243 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item_list)= (yyvsp[-1].item_list); }
+#line 42835 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1724: /* ident_list: simple_ident */
+#line 11248 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item_list)= new (thd->mem_root) List<Item>;
+ if (unlikely((yyval.item_list) == NULL) ||
+ unlikely((yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 42846 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1725: /* ident_list: ident_list ',' simple_ident */
+#line 11255 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-2].item_list)->push_back((yyvsp[0].item), thd->mem_root);
+ (yyval.item_list)= (yyvsp[-2].item_list);
+ }
+#line 42855 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1726: /* when_list: WHEN_SYM expr THEN_SYM expr */
+#line 11263 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item_list)= new (thd->mem_root) List<Item>;
+ if (unlikely((yyval.item_list) == NULL))
+ MYSQL_YYABORT;
+ if (unlikely((yyval.item_list)->push_back((yyvsp[-2].item), thd->mem_root) ||
+ (yyval.item_list)->push_back((yyvsp[0].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 42868 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1727: /* when_list: when_list WHEN_SYM expr THEN_SYM expr */
+#line 11272 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[-4].item_list)->push_back((yyvsp[-2].item), thd->mem_root) ||
+ (yyvsp[-4].item_list)->push_back((yyvsp[0].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ (yyval.item_list)= (yyvsp[-4].item_list);
+ }
+#line 42879 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1729: /* when_list_opt_else: when_list ELSE expr */
+#line 11283 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[-2].item_list)->push_back((yyvsp[0].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ (yyval.item_list)= (yyvsp[-2].item_list);
+ }
+#line 42889 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1730: /* table_ref: table_factor */
+#line 11293 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[0].table_list); }
+#line 42895 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1731: /* table_ref: join_table */
+#line 11295 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(!((yyval.table_list)= lex->current_select->nest_last_join(thd))))
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ }
+#line 42908 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1732: /* json_text_literal: TEXT_STRING */
+#line 11307 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->json_table->m_text_literal_cs= NULL;
+ }
+#line 42916 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1733: /* json_text_literal: NCHAR_STRING */
+#line 11311 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->json_table->m_text_literal_cs= national_charset_info;
+ }
+#line 42924 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1734: /* json_text_literal: UNDERSCORE_CHARSET TEXT_STRING */
+#line 11315 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->json_table->m_text_literal_cs= (yyvsp[-1].charset);
+ (yyval.lex_string_with_metadata)= (yyvsp[0].lex_string_with_metadata);
+ }
+#line 42933 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1736: /* json_text_literal_or_num: NUM */
+#line 11324 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->json_table->m_text_literal_cs= NULL;
+ }
+#line 42941 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1737: /* json_text_literal_or_num: LONG_NUM */
+#line 11328 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->json_table->m_text_literal_cs= NULL;
+ }
+#line 42949 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1738: /* json_text_literal_or_num: DECIMAL_NUM */
+#line 11332 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->json_table->m_text_literal_cs= NULL;
+ }
+#line 42957 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1739: /* json_text_literal_or_num: FLOAT_NUM */
+#line 11336 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->json_table->m_text_literal_cs= NULL;
+ }
+#line 42965 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1740: /* join_table_list: derived_table_list */
+#line 11342 "/home/buildbot/git/sql/sql_yacc.yy"
+ { MYSQL_YYABORT_UNLESS((yyval.table_list)=(yyvsp[0].table_list)); }
+#line 42971 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1741: /* json_table_columns_clause: COLUMNS '(' json_table_columns_list ')' */
+#line 11347 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 42977 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1743: /* json_table_columns_list: json_table_columns_list ',' json_table_column */
+#line 11353 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 42983 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1744: /* $@151: %empty */
+#line 11358 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Create_field *f= new (thd->mem_root) Create_field();
+
+ if (unlikely(check_string_char_length(&(yyvsp[0].ident_sys), 0, NAME_CHAR_LEN,
+ system_charset_info, 1)))
+ my_yyabort_error((ER_TOO_LONG_IDENT, MYF(0), (yyvsp[0].ident_sys).str));
+
+ lex->json_table->m_cur_json_table_column=
+ new (thd->mem_root) Json_table_column(f,
+ lex->json_table->get_cur_nested_path());
+
+ if (unlikely(!f ||
+ !lex->json_table->m_cur_json_table_column))
+ MYSQL_YYABORT;
+
+ lex->init_last_field(f, &(yyvsp[0].ident_sys));
+ }
+#line 43006 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1745: /* json_table_column: ident $@151 json_table_column_type */
+#line 11377 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ if (unlikely(lex->json_table->
+ m_cur_json_table_column->m_field->check(thd)))
+ MYSQL_YYABORT;
+ lex->json_table->m_columns.push_back(
+ lex->json_table->m_cur_json_table_column, thd->mem_root);
+ }
+#line 43019 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1746: /* $@152: %empty */
+#line 11386 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Json_table_nested_path *np= new (thd->mem_root)
+ Json_table_nested_path();
+ np->set_path(thd, (yyvsp[0].lex_string_with_metadata));
+ lex->json_table->start_nested_path(np);
+ }
+#line 43031 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1747: /* json_table_column: NESTED_SYM PATH_SYM json_text_literal $@152 json_table_columns_clause */
+#line 11394 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->json_table->end_nested_path();
+ }
+#line 43040 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1748: /* json_table_column_type: FOR_SYM ORDINALITY_SYM */
+#line 11402 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex_field_type_st type;
+ type.set(&type_handler_slong);
+ Lex->last_field->set_attributes(thd, type,
+ COLUMN_DEFINITION_TABLE_FIELD);
+ Lex->json_table->m_cur_json_table_column->
+ set(Json_table_column::FOR_ORDINALITY);
+ }
+#line 43053 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1749: /* json_table_column_type: json_table_field_type PATH_SYM json_text_literal json_opt_on_empty_or_error */
+#line 11412 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->set_attributes(thd, (yyvsp[-3].Lex_field_type),
+ COLUMN_DEFINITION_TABLE_FIELD);
+ if (Lex->json_table->m_cur_json_table_column->
+ set(thd, Json_table_column::PATH, (yyvsp[-1].lex_string_with_metadata),
+ (yyvsp[-3].Lex_field_type).charset_collation_attrs()))
+ {
+ MYSQL_YYABORT;
+ }
+ }
+#line 43068 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1750: /* json_table_column_type: json_table_field_type EXISTS PATH_SYM json_text_literal */
+#line 11423 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_field->set_attributes(thd, (yyvsp[-3].Lex_field_type),
+ COLUMN_DEFINITION_TABLE_FIELD);
+ if (Lex->json_table->m_cur_json_table_column->
+ set(thd, Json_table_column::EXISTS_PATH, (yyvsp[0].lex_string_with_metadata),
+ (yyvsp[-3].Lex_field_type).charset_collation_attrs()))
+ MYSQL_YYABORT;
+ }
+#line 43081 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1755: /* json_opt_on_empty_or_error: %empty */
+#line 11442 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 43087 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1760: /* json_on_response: ERROR_SYM */
+#line 11451 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.json_on_response).m_response= Json_table_column::RESPONSE_ERROR;
+ }
+#line 43095 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1761: /* json_on_response: NULL_SYM */
+#line 11455 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.json_on_response).m_response= Json_table_column::RESPONSE_NULL;
+ }
+#line 43103 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1762: /* json_on_response: DEFAULT json_text_literal_or_num */
+#line 11459 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.json_on_response).m_response= Json_table_column::RESPONSE_DEFAULT;
+ (yyval.json_on_response).m_default= (yyvsp[0].lex_string_with_metadata);
+ Lex->json_table->m_cur_json_table_column->m_defaults_cs=
+ thd->variables.collation_connection;
+ }
+#line 43114 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1763: /* json_on_error_response: json_on_response ON ERROR_SYM */
+#line 11469 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->json_table->m_cur_json_table_column->m_on_error= (yyvsp[-2].json_on_response);
+ }
+#line 43122 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1764: /* json_on_empty_response: json_on_response ON EMPTY_SYM */
+#line 11476 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->json_table->m_cur_json_table_column->m_on_empty= (yyvsp[-2].json_on_response);
+ }
+#line 43130 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1765: /* $@153: %empty */
+#line 11483 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ push_table_function_arg_context(Lex, thd->mem_root);
+ //TODO: introduce IN_TABLE_FUNC_ARGUMENT?
+ Select->parsing_place= IN_ON;
+ }
+#line 43140 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1766: /* $@154: %empty */
+#line 11489 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Table_function_json_table *jt=
+ new (thd->mem_root) Table_function_json_table((yyvsp[-1].item));
+ if (unlikely(!jt))
+ MYSQL_YYABORT;
+ /* See comment for class Table_function_json_table: */
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_SYSTEM_FUNCTION);
+ Lex->json_table= jt;
+
+ Select->parsing_place= NO_MATTER;
+ jt->set_name_resolution_context(Lex->pop_context());
+ }
+#line 43157 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1767: /* table_function: JSON_TABLE_SYM '(' $@153 expr ',' $@154 json_text_literal json_table_columns_clause ')' opt_table_alias_clause */
+#line 11502 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX *sel= Select;
+ if (unlikely((yyvsp[0].lex_str_ptr) == NULL))
+ {
+ /* Alias is not optional. */
+ my_error(ER_JSON_TABLE_ALIAS_REQUIRED, MYF(0));
+ MYSQL_YYABORT;
+ }
+ if (unlikely(Lex->json_table->m_nested_path.set_path(thd, (yyvsp[-3].lex_string_with_metadata))))
+ MYSQL_YYABORT;
+ if (!((yyval.table_list)= sel->add_table_to_list(thd,
+ new (thd->mem_root) Table_ident(thd, &any_db,
+ (yyvsp[0].lex_str_ptr), TRUE),
+ NULL,
+ TL_OPTION_TABLE_FUNCTION,
+ YYPS->m_lock_type,
+ YYPS->m_mdl_type,
+ 0,0,0)))
+ MYSQL_YYABORT;
+ (yyval.table_list)->table_function= Lex->json_table;
+ Lex->json_table= 0;
+ status_var_increment(thd->status_var.feature_json);
+ }
+#line 43185 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1768: /* esc_table_ref: table_ref */
+#line 11535 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)=(yyvsp[0].table_list); }
+#line 43191 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1769: /* esc_table_ref: '{' ident table_ref '}' */
+#line 11536 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)=(yyvsp[-1].table_list); }
+#line 43197 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1770: /* derived_table_list: esc_table_ref */
+#line 11543 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.table_list)=(yyvsp[0].table_list);
+ Select->add_joined_table((yyvsp[0].table_list));
+ }
+#line 43206 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1771: /* derived_table_list: derived_table_list ',' esc_table_ref */
+#line 11548 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-2].table_list) && ((yyval.table_list)=(yyvsp[0].table_list)));
+ Select->add_joined_table((yyvsp[0].table_list));
+ }
+#line 43215 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1772: /* join_table: table_ref normal_join table_ref */
+#line 11562 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-2].table_list) && ((yyval.table_list)=(yyvsp[0].table_list)));
+ if (unlikely(Select->add_cross_joined_table((yyvsp[-2].table_list), (yyvsp[0].table_list), (yyvsp[-1].num))))
+ MYSQL_YYABORT;
+ }
+#line 43225 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1773: /* $@155: %empty */
+#line 11569 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-3].table_list) && (yyvsp[-1].table_list));
+ Select->add_joined_table((yyvsp[-3].table_list));
+ Select->add_joined_table((yyvsp[-1].table_list));
+ /* Change the current name resolution context to a local context. */
+ if (unlikely(push_new_name_resolution_context(thd, (yyvsp[-3].table_list), (yyvsp[-1].table_list))))
+ MYSQL_YYABORT;
+ Select->parsing_place= IN_ON;
+ }
+#line 43239 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1774: /* join_table: table_ref normal_join table_ref ON $@155 expr */
+#line 11579 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-3].table_list)->straight=(yyvsp[-4].num);
+ add_join_on(thd, (yyvsp[-3].table_list), (yyvsp[0].item));
+ (yyvsp[-3].table_list)->on_context= Lex->pop_context();
+ Select->parsing_place= NO_MATTER;
+ }
+#line 43250 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1775: /* $@156: %empty */
+#line 11587 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-3].table_list) && (yyvsp[-1].table_list));
+ Select->add_joined_table((yyvsp[-3].table_list));
+ Select->add_joined_table((yyvsp[-1].table_list));
+ }
+#line 43260 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1776: /* join_table: table_ref normal_join table_ref USING $@156 '(' using_list ')' */
+#line 11593 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[-5].table_list)->straight=(yyvsp[-6].num);
+ add_join_natural((yyvsp[-7].table_list),(yyvsp[-5].table_list),(yyvsp[-1].string_list),Select);
+ (yyval.table_list)=(yyvsp[-5].table_list);
+ }
+#line 43270 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1777: /* join_table: table_ref NATURAL inner_join table_factor */
+#line 11599 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-3].table_list) && ((yyval.table_list)=(yyvsp[0].table_list)));
+ Select->add_joined_table((yyvsp[-3].table_list));
+ Select->add_joined_table((yyvsp[0].table_list));
+ (yyvsp[0].table_list)->straight=(yyvsp[-1].num);
+ add_join_natural((yyvsp[-3].table_list),(yyvsp[0].table_list),NULL,Select);
+ }
+#line 43282 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1778: /* $@157: %empty */
+#line 11610 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[-1].table_list));
+ Select->add_joined_table((yyvsp[-5].table_list));
+ Select->add_joined_table((yyvsp[-1].table_list));
+ /* Change the current name resolution context to a local context. */
+ if (unlikely(push_new_name_resolution_context(thd, (yyvsp[-5].table_list), (yyvsp[-1].table_list))))
+ MYSQL_YYABORT;
+ Select->parsing_place= IN_ON;
+ }
+#line 43296 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1779: /* join_table: table_ref LEFT opt_outer JOIN_SYM table_ref ON $@157 expr */
+#line 11620 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ add_join_on(thd, (yyvsp[-3].table_list), (yyvsp[0].item));
+ (yyvsp[-3].table_list)->on_context= Lex->pop_context();
+ (yyvsp[-3].table_list)->outer_join|=JOIN_TYPE_LEFT;
+ (yyval.table_list)=(yyvsp[-3].table_list);
+ Select->parsing_place= NO_MATTER;
+ }
+#line 43308 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1780: /* $@158: %empty */
+#line 11628 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-4].table_list) && (yyvsp[0].table_list));
+ Select->add_joined_table((yyvsp[-4].table_list));
+ Select->add_joined_table((yyvsp[0].table_list));
+ }
+#line 43318 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1781: /* join_table: table_ref LEFT opt_outer JOIN_SYM table_factor $@158 USING '(' using_list ')' */
+#line 11634 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ add_join_natural((yyvsp[-9].table_list),(yyvsp[-5].table_list),(yyvsp[-1].string_list),Select);
+ (yyvsp[-5].table_list)->outer_join|=JOIN_TYPE_LEFT;
+ (yyval.table_list)=(yyvsp[-5].table_list);
+ }
+#line 43328 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1782: /* join_table: table_ref NATURAL LEFT opt_outer JOIN_SYM table_factor */
+#line 11640 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[0].table_list));
+ Select->add_joined_table((yyvsp[-5].table_list));
+ Select->add_joined_table((yyvsp[0].table_list));
+ add_join_natural((yyvsp[-5].table_list),(yyvsp[0].table_list),NULL,Select);
+ (yyvsp[0].table_list)->outer_join|=JOIN_TYPE_LEFT;
+ (yyval.table_list)=(yyvsp[0].table_list);
+ }
+#line 43341 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1783: /* $@159: %empty */
+#line 11652 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[-1].table_list));
+ Select->add_joined_table((yyvsp[-5].table_list));
+ Select->add_joined_table((yyvsp[-1].table_list));
+ /* Change the current name resolution context to a local context. */
+ if (unlikely(push_new_name_resolution_context(thd, (yyvsp[-5].table_list), (yyvsp[-1].table_list))))
+ MYSQL_YYABORT;
+ Select->parsing_place= IN_ON;
+ }
+#line 43355 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1784: /* join_table: table_ref RIGHT opt_outer JOIN_SYM table_ref ON $@159 expr */
+#line 11662 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(!((yyval.table_list)= lex->current_select->convert_right_join())))
+ MYSQL_YYABORT;
+ add_join_on(thd, (yyval.table_list), (yyvsp[0].item));
+ (yyvsp[-7].table_list)->on_context= Lex->pop_context();
+ Select->parsing_place= NO_MATTER;
+ }
+#line 43368 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1785: /* $@160: %empty */
+#line 11671 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-4].table_list) && (yyvsp[0].table_list));
+ Select->add_joined_table((yyvsp[-4].table_list));
+ Select->add_joined_table((yyvsp[0].table_list));
+ }
+#line 43378 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1786: /* join_table: table_ref RIGHT opt_outer JOIN_SYM table_factor $@160 USING '(' using_list ')' */
+#line 11677 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(!((yyval.table_list)= lex->current_select->convert_right_join())))
+ MYSQL_YYABORT;
+ add_join_natural((yyval.table_list),(yyvsp[-5].table_list),(yyvsp[-1].string_list),Select);
+ }
+#line 43389 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1787: /* join_table: table_ref NATURAL RIGHT opt_outer JOIN_SYM table_factor */
+#line 11684 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-5].table_list) && (yyvsp[0].table_list));
+ Select->add_joined_table((yyvsp[-5].table_list));
+ Select->add_joined_table((yyvsp[0].table_list));
+ add_join_natural((yyvsp[0].table_list),(yyvsp[-5].table_list),NULL,Select);
+ LEX *lex= Lex;
+ if (unlikely(!((yyval.table_list)= lex->current_select->convert_right_join())))
+ MYSQL_YYABORT;
+ }
+#line 43403 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1788: /* inner_join: JOIN_SYM */
+#line 11697 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num) = 0; }
+#line 43409 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1789: /* inner_join: INNER_SYM JOIN_SYM */
+#line 11698 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num) = 0; }
+#line 43415 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1790: /* inner_join: STRAIGHT_JOIN */
+#line 11699 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num) = 1; }
+#line 43421 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1791: /* normal_join: inner_join */
+#line 11703 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num) = (yyvsp[0].num); }
+#line 43427 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1792: /* normal_join: CROSS JOIN_SYM */
+#line 11704 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num) = 0; }
+#line 43433 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1793: /* opt_use_partition: %empty */
+#line 11712 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.string_list)= 0;}
+#line 43439 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1795: /* use_partition: PARTITION_SYM '(' using_list ')' have_partitioning */
+#line 11718 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.string_list)= (yyvsp[-2].string_list);
+ Select->parsing_place= Select->save_parsing_place;
+ Select->save_parsing_place= NO_MATTER;
+ }
+#line 43449 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1796: /* table_factor: table_primary_ident_opt_parens */
+#line 11726 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[0].table_list); }
+#line 43455 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1797: /* table_factor: table_primary_derived_opt_parens */
+#line 11727 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[0].table_list); }
+#line 43461 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1798: /* table_factor: join_table_parens */
+#line 11729 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[0].table_list)->nested_join->nest_type= 0;
+ (yyval.table_list)= (yyvsp[0].table_list);
+ }
+#line 43470 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1799: /* table_factor: table_reference_list_parens */
+#line 11733 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[0].table_list); }
+#line 43476 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1800: /* table_factor: table_function */
+#line 11734 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[0].table_list); }
+#line 43482 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1801: /* table_primary_ident_opt_parens: table_primary_ident */
+#line 11738 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[0].table_list); }
+#line 43488 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1802: /* table_primary_ident_opt_parens: '(' table_primary_ident_opt_parens ')' */
+#line 11739 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[-1].table_list); }
+#line 43494 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1803: /* table_primary_derived_opt_parens: table_primary_derived */
+#line 11743 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[0].table_list); }
+#line 43500 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1804: /* table_primary_derived_opt_parens: '(' table_primary_derived_opt_parens ')' */
+#line 11744 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[-1].table_list); }
+#line 43506 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1805: /* table_reference_list_parens: '(' table_reference_list_parens ')' */
+#line 11748 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[-1].table_list); }
+#line 43512 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1806: /* table_reference_list_parens: '(' nested_table_reference_list ')' */
+#line 11750 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.table_list)= Select->end_nested_join(thd)))
+ MYSQL_YYABORT;
+ }
+#line 43521 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1807: /* nested_table_reference_list: table_ref ',' table_ref */
+#line 11758 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Select->init_nested_join(thd))
+ MYSQL_YYABORT;
+ Select->add_joined_table((yyvsp[-2].table_list));
+ Select->add_joined_table((yyvsp[0].table_list));
+ (yyval.table_list)= (yyvsp[-2].table_list)->embedding;
+ }
+#line 43533 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1808: /* nested_table_reference_list: nested_table_reference_list ',' table_ref */
+#line 11766 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->add_joined_table((yyvsp[0].table_list));
+ (yyval.table_list)= (yyvsp[-2].table_list);
+ }
+#line 43542 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1809: /* join_table_parens: '(' join_table_parens ')' */
+#line 11773 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[-1].table_list); }
+#line 43548 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1810: /* join_table_parens: '(' join_table ')' */
+#line 11775 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (!((yyval.table_list)= lex->current_select->nest_last_join(thd)))
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+ }
+#line 43561 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1811: /* table_primary_ident: table_ident opt_use_partition opt_for_system_time_clause opt_table_alias_clause opt_key_definition */
+#line 11789 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.table_list)= Select->add_table_to_list(thd, (yyvsp[-4].table), (yyvsp[-1].lex_str_ptr),
+ 0,
+ YYPS->m_lock_type,
+ YYPS->m_mdl_type,
+ Select->pop_index_hints(),
+ (yyvsp[-3].string_list))))
+ MYSQL_YYABORT;
+ if ((yyvsp[-2].num))
+ (yyval.table_list)->vers_conditions= Lex->vers_conditions;
+ }
+#line 43577 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1812: /* table_primary_derived: subquery opt_for_system_time_clause table_alias_clause */
+#line 11805 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.table_list)= Lex->parsed_derived_table((yyvsp[-2].select_lex)->master_unit(), (yyvsp[-1].num), (yyvsp[0].lex_str_ptr))))
+ MYSQL_YYABORT;
+ }
+#line 43586 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1813: /* opt_outer: %empty */
+#line 11822 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 43592 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1814: /* opt_outer: OUTER */
+#line 11823 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 43598 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1815: /* index_hint_clause: %empty */
+#line 11828 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= (thd->variables.old_behavior & OLD_MODE_IGNORE_INDEX_ONLY_FOR_JOIN) ?
+ INDEX_HINT_MASK_JOIN : INDEX_HINT_MASK_ALL;
+ }
+#line 43607 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1816: /* index_hint_clause: FOR_SYM JOIN_SYM */
+#line 11832 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= INDEX_HINT_MASK_JOIN; }
+#line 43613 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1817: /* index_hint_clause: FOR_SYM ORDER_SYM BY */
+#line 11833 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= INDEX_HINT_MASK_ORDER; }
+#line 43619 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1818: /* index_hint_clause: FOR_SYM GROUP_SYM BY */
+#line 11834 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= INDEX_HINT_MASK_GROUP; }
+#line 43625 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1819: /* index_hint_type: FORCE_SYM */
+#line 11838 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.index_hint)= INDEX_HINT_FORCE; }
+#line 43631 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1820: /* index_hint_type: IGNORE_SYM */
+#line 11839 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.index_hint)= INDEX_HINT_IGNORE; }
+#line 43637 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1821: /* $@161: %empty */
+#line 11844 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->set_index_hint_type((yyvsp[-2].index_hint), (yyvsp[0].num));
+ }
+#line 43645 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1823: /* $@162: %empty */
+#line 11849 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->set_index_hint_type(INDEX_HINT_USE, (yyvsp[0].num));
+ }
+#line 43653 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1828: /* $@163: %empty */
+#line 11862 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->alloc_index_hints(thd); }
+#line 43659 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1830: /* $@164: %empty */
+#line 11866 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->clear_index_hints(); }
+#line 43665 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1832: /* opt_key_usage_list: %empty */
+#line 11871 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->add_index_hint(thd, NULL, 0); }
+#line 43671 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1833: /* opt_key_usage_list: key_usage_list */
+#line 11872 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 43677 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1834: /* key_usage_element: ident */
+#line 11877 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->add_index_hint(thd, (yyvsp[0].ident_sys).str, (yyvsp[0].ident_sys).length); }
+#line 43683 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1835: /* key_usage_element: PRIMARY_SYM */
+#line 11879 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->add_index_hint(thd, "PRIMARY", 7); }
+#line 43689 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1838: /* using_list: ident */
+#line 11889 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.string_list)= new (thd->mem_root) List<String>)))
+ MYSQL_YYABORT;
+ String *s= new (thd->mem_root) String((const char*) (yyvsp[0].ident_sys).str,
+ (yyvsp[0].ident_sys).length,
+ system_charset_info);
+ if (unlikely(unlikely(s == NULL)))
+ MYSQL_YYABORT;
+ (yyval.string_list)->push_back(s, thd->mem_root);
+ }
+#line 43704 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1839: /* using_list: using_list ',' ident */
+#line 11900 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ String *s= new (thd->mem_root) String((const char*) (yyvsp[0].ident_sys).str,
+ (yyvsp[0].ident_sys).length,
+ system_charset_info);
+ if (unlikely(unlikely(s == NULL)))
+ MYSQL_YYABORT;
+ if (unlikely((yyvsp[-2].string_list)->push_back(s, thd->mem_root)))
+ MYSQL_YYABORT;
+ (yyval.string_list)= (yyvsp[-2].string_list);
+ }
+#line 43719 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1840: /* interval: interval_time_stamp */
+#line 11913 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 43725 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1841: /* interval: DAY_HOUR_SYM */
+#line 11914 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval)=INTERVAL_DAY_HOUR; }
+#line 43731 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1842: /* interval: DAY_MICROSECOND_SYM */
+#line 11915 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval)=INTERVAL_DAY_MICROSECOND; }
+#line 43737 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1843: /* interval: DAY_MINUTE_SYM */
+#line 11916 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval)=INTERVAL_DAY_MINUTE; }
+#line 43743 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1844: /* interval: DAY_SECOND_SYM */
+#line 11917 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval)=INTERVAL_DAY_SECOND; }
+#line 43749 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1845: /* interval: HOUR_MICROSECOND_SYM */
+#line 11918 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval)=INTERVAL_HOUR_MICROSECOND; }
+#line 43755 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1846: /* interval: HOUR_MINUTE_SYM */
+#line 11919 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval)=INTERVAL_HOUR_MINUTE; }
+#line 43761 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1847: /* interval: HOUR_SECOND_SYM */
+#line 11920 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval)=INTERVAL_HOUR_SECOND; }
+#line 43767 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1848: /* interval: MINUTE_MICROSECOND_SYM */
+#line 11921 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval)=INTERVAL_MINUTE_MICROSECOND; }
+#line 43773 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1849: /* interval: MINUTE_SECOND_SYM */
+#line 11922 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval)=INTERVAL_MINUTE_SECOND; }
+#line 43779 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1850: /* interval: SECOND_MICROSECOND_SYM */
+#line 11923 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval)=INTERVAL_SECOND_MICROSECOND; }
+#line 43785 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1851: /* interval: YEAR_MONTH_SYM */
+#line 11924 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval)=INTERVAL_YEAR_MONTH; }
+#line 43791 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1852: /* interval_time_stamp: DAY_SYM */
+#line 11928 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval_time_st)=INTERVAL_DAY; }
+#line 43797 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1853: /* interval_time_stamp: WEEK_SYM */
+#line 11929 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval_time_st)=INTERVAL_WEEK; }
+#line 43803 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1854: /* interval_time_stamp: HOUR_SYM */
+#line 11930 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval_time_st)=INTERVAL_HOUR; }
+#line 43809 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1855: /* interval_time_stamp: MINUTE_SYM */
+#line 11931 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval_time_st)=INTERVAL_MINUTE; }
+#line 43815 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1856: /* interval_time_stamp: MONTH_SYM */
+#line 11932 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval_time_st)=INTERVAL_MONTH; }
+#line 43821 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1857: /* interval_time_stamp: QUARTER_SYM */
+#line 11933 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval_time_st)=INTERVAL_QUARTER; }
+#line 43827 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1858: /* interval_time_stamp: SECOND_SYM */
+#line 11934 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval_time_st)=INTERVAL_SECOND; }
+#line 43833 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1859: /* interval_time_stamp: MICROSECOND_SYM */
+#line 11935 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval_time_st)=INTERVAL_MICROSECOND; }
+#line 43839 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1860: /* interval_time_stamp: YEAR_SYM */
+#line 11936 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.interval_time_st)=INTERVAL_YEAR; }
+#line 43845 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1861: /* date_time_type: DATE_SYM */
+#line 11940 "/home/buildbot/git/sql/sql_yacc.yy"
+ {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATE;}
+#line 43851 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1862: /* date_time_type: TIME_SYM */
+#line 11941 "/home/buildbot/git/sql/sql_yacc.yy"
+ {(yyval.date_time_type)=MYSQL_TIMESTAMP_TIME;}
+#line 43857 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1863: /* date_time_type: DATETIME */
+#line 11942 "/home/buildbot/git/sql/sql_yacc.yy"
+ {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATETIME;}
+#line 43863 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1864: /* date_time_type: TIMESTAMP */
+#line 11943 "/home/buildbot/git/sql/sql_yacc.yy"
+ {(yyval.date_time_type)=MYSQL_TIMESTAMP_DATETIME;}
+#line 43869 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1868: /* opt_table_alias_clause: %empty */
+#line 11953 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str_ptr)=0; }
+#line 43875 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1869: /* opt_table_alias_clause: table_alias_clause */
+#line 11954 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str_ptr)= (yyvsp[0].lex_str_ptr); }
+#line 43881 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1870: /* table_alias_clause: table_alias ident_table_alias */
+#line 11959 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.lex_str_ptr)= (LEX_CSTRING*) thd->memdup(&(yyvsp[0].ident_sys),sizeof(LEX_STRING));
+ if (unlikely((yyval.lex_str_ptr) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 43891 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1873: /* opt_where_clause: %empty */
+#line 11972 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->where= 0; }
+#line 43897 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1874: /* $@165: %empty */
+#line 11974 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->parsing_place= IN_WHERE;
+ }
+#line 43905 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1875: /* opt_where_clause: WHERE $@165 expr */
+#line 11978 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX *select= Select;
+ select->where= normalize_cond(thd, (yyvsp[0].item));
+ select->parsing_place= NO_MATTER;
+ if ((yyvsp[0].item))
+ (yyvsp[0].item)->top_level_item();
+ }
+#line 43917 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1877: /* $@166: %empty */
+#line 11990 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->parsing_place= IN_HAVING;
+ }
+#line 43925 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1878: /* opt_having_clause: HAVING $@166 expr */
+#line 11994 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX *sel= Select;
+ sel->having= normalize_cond(thd, (yyvsp[0].item));
+ sel->parsing_place= NO_MATTER;
+ if ((yyvsp[0].item))
+ (yyvsp[0].item)->top_level_item();
+ }
+#line 43937 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1881: /* group_list: group_list ',' order_ident order_dir */
+#line 12014 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(add_group_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))))
+ MYSQL_YYABORT;
+ }
+#line 43946 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1882: /* group_list: order_ident order_dir */
+#line 12019 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(add_group_to_list(thd, (yyvsp[-1].item),(bool) (yyvsp[0].num))))
+ MYSQL_YYABORT;
+ }
+#line 43955 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1883: /* olap_opt: %empty */
+#line 12026 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 43961 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1884: /* olap_opt: WITH_CUBE_SYM */
+#line 12028 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ 'WITH CUBE' is reserved in the MySQL syntax, but not implemented,
+ and cause LALR(2) conflicts.
+ This syntax is not standard.
+ MySQL syntax: GROUP BY col1, col2, col3 WITH CUBE
+ SQL-2003: GROUP BY ... CUBE(col1, col2, col3)
+ */
+ LEX *lex=Lex;
+ if (unlikely(lex->current_select->get_linkage() == GLOBAL_OPTIONS_TYPE))
+ my_yyabort_error((ER_WRONG_USAGE, MYF(0), "WITH CUBE",
+ "global union parameters"));
+ lex->current_select->olap= CUBE_TYPE;
+
+ my_yyabort_error((ER_NOT_SUPPORTED_YET, MYF(0), "CUBE"));
+ }
+#line 43982 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1885: /* olap_opt: WITH_ROLLUP_SYM */
+#line 12045 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ 'WITH ROLLUP' is needed for backward compatibility,
+ and cause LALR(2) conflicts.
+ This syntax is not standard.
+ MySQL syntax: GROUP BY col1, col2, col3 WITH ROLLUP
+ SQL-2003: GROUP BY ... ROLLUP(col1, col2, col3)
+ */
+ LEX *lex= Lex;
+ if (unlikely(lex->current_select->get_linkage() == GLOBAL_OPTIONS_TYPE))
+ my_yyabort_error((ER_WRONG_USAGE, MYF(0), "WITH ROLLUP",
+ "global union parameters"));
+ lex->current_select->olap= ROLLUP_TYPE;
+ }
+#line 44001 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1886: /* opt_window_clause: %empty */
+#line 12067 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 44007 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1887: /* opt_window_clause: WINDOW_SYM window_def_list */
+#line 12070 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 44013 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1890: /* window_def: window_name AS window_spec */
+#line 12080 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(Select->add_window_def(thd, (yyvsp[-2].lex_str_ptr), lex->win_ref,
+ Select->group_list,
+ Select->order_list,
+ lex->win_frame)))
+ MYSQL_YYABORT;
+ }
+#line 44026 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1891: /* $@167: %empty */
+#line 12092 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->prepare_add_window_spec(thd); }
+#line 44032 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1892: /* window_spec: '(' $@167 opt_window_ref opt_window_partition_clause opt_window_order_clause opt_window_frame_clause ')' */
+#line 12096 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 44038 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1893: /* opt_window_ref: %empty */
+#line 12100 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 44044 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1894: /* opt_window_ref: ident */
+#line 12102 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ thd->lex->win_ref= (LEX_CSTRING *) thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING));
+ if (unlikely(thd->lex->win_ref == NULL))
+ MYSQL_YYABORT;
+ }
+#line 44054 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1895: /* opt_window_partition_clause: %empty */
+#line 12110 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 44060 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1897: /* opt_window_order_clause: %empty */
+#line 12115 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 44066 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1898: /* opt_window_order_clause: ORDER_SYM BY order_list */
+#line 12116 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->order_list= *((yyvsp[0].select_order)); }
+#line 44072 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1899: /* opt_window_frame_clause: %empty */
+#line 12120 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 44078 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1900: /* opt_window_frame_clause: window_frame_units window_frame_extent opt_window_frame_exclusion */
+#line 12122 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->win_frame=
+ new (thd->mem_root) Window_frame((yyvsp[-2].frame_units),
+ lex->frame_top_bound,
+ lex->frame_bottom_bound,
+ (yyvsp[0].frame_exclusion));
+ if (unlikely(lex->win_frame == NULL))
+ MYSQL_YYABORT;
+ }
+#line 44093 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1901: /* window_frame_units: ROWS_SYM */
+#line 12135 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.frame_units)= Window_frame::UNITS_ROWS; }
+#line 44099 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1902: /* window_frame_units: RANGE_SYM */
+#line 12136 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.frame_units)= Window_frame::UNITS_RANGE; }
+#line 44105 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1903: /* window_frame_extent: window_frame_start */
+#line 12141 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->frame_top_bound= (yyvsp[0].window_frame_bound);
+ lex->frame_bottom_bound=
+ new (thd->mem_root)
+ Window_frame_bound(Window_frame_bound::CURRENT, NULL);
+ if (unlikely(lex->frame_bottom_bound == NULL))
+ MYSQL_YYABORT;
+ }
+#line 44119 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1904: /* window_frame_extent: BETWEEN_SYM window_frame_bound AND_SYM window_frame_bound */
+#line 12151 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->frame_top_bound= (yyvsp[-2].window_frame_bound);
+ lex->frame_bottom_bound= (yyvsp[0].window_frame_bound);
+ }
+#line 44129 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1905: /* window_frame_start: UNBOUNDED_SYM PRECEDING_SYM */
+#line 12160 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.window_frame_bound)= new (thd->mem_root)
+ Window_frame_bound(Window_frame_bound::PRECEDING, NULL);
+ if (unlikely((yyval.window_frame_bound) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 44140 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1906: /* window_frame_start: CURRENT_SYM ROW_SYM */
+#line 12167 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.window_frame_bound)= new (thd->mem_root)
+ Window_frame_bound(Window_frame_bound::CURRENT, NULL);
+ if (unlikely((yyval.window_frame_bound) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 44151 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1907: /* window_frame_start: literal PRECEDING_SYM */
+#line 12174 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.window_frame_bound)= new (thd->mem_root)
+ Window_frame_bound(Window_frame_bound::PRECEDING, (yyvsp[-1].item));
+ if (unlikely((yyval.window_frame_bound) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 44162 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1908: /* window_frame_bound: window_frame_start */
+#line 12183 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.window_frame_bound)= (yyvsp[0].window_frame_bound); }
+#line 44168 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1909: /* window_frame_bound: UNBOUNDED_SYM FOLLOWING_SYM */
+#line 12185 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.window_frame_bound)= new (thd->mem_root)
+ Window_frame_bound(Window_frame_bound::FOLLOWING, NULL);
+ if (unlikely((yyval.window_frame_bound) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 44179 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1910: /* window_frame_bound: literal FOLLOWING_SYM */
+#line 12192 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.window_frame_bound)= new (thd->mem_root)
+ Window_frame_bound(Window_frame_bound::FOLLOWING, (yyvsp[-1].item));
+ if (unlikely((yyval.window_frame_bound) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 44190 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1911: /* opt_window_frame_exclusion: %empty */
+#line 12201 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.frame_exclusion)= Window_frame::EXCL_NONE; }
+#line 44196 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1912: /* opt_window_frame_exclusion: EXCLUDE_SYM CURRENT_SYM ROW_SYM */
+#line 12203 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.frame_exclusion)= Window_frame::EXCL_CURRENT_ROW; }
+#line 44202 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1913: /* opt_window_frame_exclusion: EXCLUDE_SYM GROUP_SYM */
+#line 12205 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.frame_exclusion)= Window_frame::EXCL_GROUP; }
+#line 44208 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1914: /* opt_window_frame_exclusion: EXCLUDE_SYM TIES_SYM */
+#line 12207 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.frame_exclusion)= Window_frame::EXCL_TIES; }
+#line 44214 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1915: /* opt_window_frame_exclusion: EXCLUDE_SYM NO_SYM OTHERS_MARIADB_SYM */
+#line 12209 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.frame_exclusion)= Window_frame::EXCL_NONE; }
+#line 44220 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1916: /* opt_window_frame_exclusion: EXCLUDE_SYM NO_SYM OTHERS_ORACLE_SYM */
+#line 12211 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.frame_exclusion)= Window_frame::EXCL_NONE; }
+#line 44226 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1920: /* alter_order_item: simple_ident_nospvar order_dir */
+#line 12229 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ bool ascending= ((yyvsp[0].num) == 1) ? true : false;
+ if (unlikely(add_order_to_list(thd, (yyvsp[-1].item), ascending)))
+ MYSQL_YYABORT;
+ }
+#line 44236 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1921: /* opt_order_clause: %empty */
+#line 12242 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_order)= NULL; }
+#line 44242 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1922: /* opt_order_clause: order_clause */
+#line 12244 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_order)= (yyvsp[0].select_order); }
+#line 44248 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1923: /* $@168: %empty */
+#line 12249 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ thd->where= "ORDER clause";
+ }
+#line 44256 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1924: /* order_clause: ORDER_SYM BY $@168 order_list */
+#line 12253 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_order)= (yyvsp[0].select_order);
+ }
+#line 44264 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1925: /* order_list: order_list ',' order_ident order_dir */
+#line 12260 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_order)= (yyvsp[-3].select_order);
+ if (add_to_list(thd, *(yyval.select_order), (yyvsp[-1].item),(bool) (yyvsp[0].num)))
+ MYSQL_YYABORT;
+ }
+#line 44274 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1926: /* order_list: order_ident order_dir */
+#line 12266 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_order)= new (thd->mem_root) SQL_I_List<ORDER>();
+ if (add_to_list(thd, *(yyval.select_order), (yyvsp[-1].item), (bool) (yyvsp[0].num)))
+ MYSQL_YYABORT;
+ }
+#line 44284 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1927: /* order_dir: %empty */
+#line 12274 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 44290 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1928: /* order_dir: ASC */
+#line 12275 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 44296 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1929: /* order_dir: DESC */
+#line 12276 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 44302 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1930: /* opt_limit_clause: %empty */
+#line 12282 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_limit).clear(); }
+#line 44308 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1931: /* opt_limit_clause: limit_clause */
+#line 12284 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.select_limit)= (yyvsp[0].select_limit); }
+#line 44314 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1932: /* limit_clause: LIMIT limit_options */
+#line 12289 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_limit)= (yyvsp[0].select_limit);
+ if (!(yyval.select_limit).select_limit->basic_const_item() ||
+ (yyval.select_limit).select_limit->val_int() > 0)
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
+ }
+#line 44325 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1933: /* limit_clause: LIMIT limit_options ROWS_SYM EXAMINED_SYM limit_rows_option */
+#line 12297 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_limit)= (yyvsp[-3].select_limit);
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
+ }
+#line 44334 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1934: /* limit_clause: LIMIT ROWS_SYM EXAMINED_SYM limit_rows_option */
+#line 12302 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_limit).clear();
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
+ }
+#line 44343 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1935: /* limit_clause: fetch_first_clause */
+#line 12307 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_limit)= (yyvsp[0].select_limit);
+ if (!(yyval.select_limit).select_limit ||
+ !(yyval.select_limit).select_limit->basic_const_item() ||
+ (yyval.select_limit).select_limit->val_int() > 0)
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
+ }
+#line 44355 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1936: /* fetch_first_clause: FETCH_SYM first_or_next row_or_rows only_or_with_ties */
+#line 12318 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *one= new (thd->mem_root) Item_int(thd, (int32) 1);
+ if (unlikely(one == NULL))
+ MYSQL_YYABORT;
+ (yyval.select_limit).select_limit= one;
+ (yyval.select_limit).offset_limit= 0;
+ (yyval.select_limit).explicit_limit= true;
+ (yyval.select_limit).with_ties= (yyvsp[0].num);
+ }
+#line 44369 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1937: /* fetch_first_clause: OFFSET_SYM limit_option row_or_rows FETCH_SYM first_or_next row_or_rows only_or_with_ties */
+#line 12329 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *one= new (thd->mem_root) Item_int(thd, (int32) 1);
+ if (unlikely(one == NULL))
+ MYSQL_YYABORT;
+ (yyval.select_limit).select_limit= one;
+ (yyval.select_limit).offset_limit= (yyvsp[-5].item);
+ (yyval.select_limit).explicit_limit= true;
+ (yyval.select_limit).with_ties= (yyvsp[0].num);
+ }
+#line 44383 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1938: /* fetch_first_clause: FETCH_SYM first_or_next limit_option row_or_rows only_or_with_ties */
+#line 12339 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_limit).select_limit= (yyvsp[-2].item);
+ (yyval.select_limit).offset_limit= 0;
+ (yyval.select_limit).explicit_limit= true;
+ (yyval.select_limit).with_ties= (yyvsp[0].num);
+ }
+#line 44394 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1939: /* fetch_first_clause: OFFSET_SYM limit_option row_or_rows FETCH_SYM first_or_next limit_option row_or_rows only_or_with_ties */
+#line 12347 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_limit).select_limit= (yyvsp[-2].item);
+ (yyval.select_limit).offset_limit= (yyvsp[-6].item);
+ (yyval.select_limit).explicit_limit= true;
+ (yyval.select_limit).with_ties= (yyvsp[0].num);
+ }
+#line 44405 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1940: /* fetch_first_clause: OFFSET_SYM limit_option row_or_rows */
+#line 12354 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_limit).select_limit= 0;
+ (yyval.select_limit).offset_limit= (yyvsp[-1].item);
+ (yyval.select_limit).explicit_limit= true;
+ (yyval.select_limit).with_ties= false;
+ }
+#line 44416 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1945: /* only_or_with_ties: ONLY_SYM */
+#line 12373 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 44422 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1946: /* only_or_with_ties: WITH TIES_SYM */
+#line 12374 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 44428 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1947: /* opt_global_limit_clause: opt_limit_clause */
+#line 12380 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->limit_params= (yyvsp[0].select_limit);
+ }
+#line 44436 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1948: /* limit_options: limit_option */
+#line 12387 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_limit).select_limit= (yyvsp[0].item);
+ (yyval.select_limit).offset_limit= NULL;
+ (yyval.select_limit).explicit_limit= true;
+ (yyval.select_limit).with_ties= false;
+ }
+#line 44447 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1949: /* limit_options: limit_option ',' limit_option */
+#line 12394 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_limit).select_limit= (yyvsp[0].item);
+ (yyval.select_limit).offset_limit= (yyvsp[-2].item);
+ (yyval.select_limit).explicit_limit= true;
+ (yyval.select_limit).with_ties= false;
+ }
+#line 44458 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1950: /* limit_options: limit_option OFFSET_SYM limit_option */
+#line 12401 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_limit).select_limit= (yyvsp[-2].item);
+ (yyval.select_limit).offset_limit= (yyvsp[0].item);
+ (yyval.select_limit).explicit_limit= true;
+ (yyval.select_limit).with_ties= false;
+ }
+#line 44469 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1951: /* limit_option: ident_cli */
+#line 12411 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_limit(thd, &(yyvsp[0].ident_cli)))))
+ MYSQL_YYABORT;
+ }
+#line 44478 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1952: /* limit_option: ident_cli '.' ident_cli */
+#line 12416 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_limit(thd, &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
+ MYSQL_YYABORT;
+ }
+#line 44487 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1953: /* limit_option: param_marker */
+#line 12421 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[0].item_param)->limit_clause_param= TRUE;
+ }
+#line 44495 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1954: /* limit_option: ULONGLONG_NUM */
+#line 12425 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 44505 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1955: /* limit_option: LONG_NUM */
+#line 12431 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 44515 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1956: /* limit_option: NUM */
+#line 12437 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 44525 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1957: /* limit_rows_option: limit_option */
+#line 12446 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->limit_rows_examined= (yyvsp[0].item);
+ }
+#line 44533 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1958: /* delete_limit_clause: %empty */
+#line 12453 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->current_select->limit_params.select_limit= 0;
+ }
+#line 44542 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1959: /* delete_limit_clause: LIMIT limit_option */
+#line 12458 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX *sel= Select;
+ sel->limit_params.select_limit= (yyvsp[0].item);
+ Lex->set_stmt_unsafe(LEX::BINLOG_STMT_UNSAFE_LIMIT);
+ sel->limit_params.explicit_limit= 1;
+ }
+#line 44553 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1960: /* delete_limit_clause: LIMIT ROWS_SYM EXAMINED_SYM */
+#line 12464 "/home/buildbot/git/sql/sql_yacc.yy"
+ { thd->parse_error(); MYSQL_YYABORT; }
+#line 44559 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1961: /* delete_limit_clause: LIMIT limit_option ROWS_SYM EXAMINED_SYM */
+#line 12465 "/home/buildbot/git/sql/sql_yacc.yy"
+ { thd->parse_error(); MYSQL_YYABORT; }
+#line 44565 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1962: /* order_limit_lock: order_or_limit */
+#line 12470 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.order_limit_lock)= (yyvsp[0].order_limit_lock);
+ (yyval.order_limit_lock)->lock.empty();
+ }
+#line 44574 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1963: /* order_limit_lock: order_or_limit select_lock_type */
+#line 12475 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.order_limit_lock)= (yyvsp[-1].order_limit_lock);
+ (yyval.order_limit_lock)->lock= (yyvsp[0].select_lock);
+ }
+#line 44583 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1964: /* order_limit_lock: select_lock_type */
+#line 12480 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.order_limit_lock)= new(thd->mem_root) Lex_order_limit_lock;
+ if (!(yyval.order_limit_lock))
+ YYABORT;
+ (yyval.order_limit_lock)->order_list= NULL;
+ (yyval.order_limit_lock)->limit.clear();
+ (yyval.order_limit_lock)->lock= (yyvsp[0].select_lock);
+ }
+#line 44596 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1965: /* opt_order_limit_lock: %empty */
+#line 12492 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select();
+ (yyval.order_limit_lock)= NULL;
+ }
+#line 44605 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1966: /* opt_order_limit_lock: order_limit_lock */
+#line 12496 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.order_limit_lock)= (yyvsp[0].order_limit_lock); }
+#line 44611 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1969: /* opt_procedure_or_into: %empty */
+#line 12509 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lock).empty();
+ }
+#line 44619 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1970: /* opt_procedure_or_into: procedure_clause opt_select_lock_type */
+#line 12513 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.select_lock)= (yyvsp[0].select_lock);
+ }
+#line 44627 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1971: /* opt_procedure_or_into: into opt_select_lock_type */
+#line 12517 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ push_warning_printf(thd, Sql_condition::WARN_LEVEL_WARN,
+ ER_WARN_DEPRECATED_SYNTAX,
+ ER_THD(thd, ER_WARN_DEPRECATED_SYNTAX),
+ "<select expression> INTO <destination>;",
+ "'SELECT <select list> INTO <destination>"
+ " FROM...'");
+ (yyval.select_lock)= (yyvsp[0].select_lock);
+ }
+#line 44641 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1972: /* order_or_limit: order_clause opt_limit_clause */
+#line 12531 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.order_limit_lock)= new(thd->mem_root) Lex_order_limit_lock;
+ if (!(yyval.order_limit_lock))
+ YYABORT;
+ (yyval.order_limit_lock)->order_list= (yyvsp[-1].select_order);
+ (yyval.order_limit_lock)->limit= (yyvsp[0].select_limit);
+ }
+#line 44653 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1973: /* order_or_limit: limit_clause */
+#line 12539 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.order_limit_lock)= new(thd->mem_root) Lex_order_limit_lock;
+ if (!(yyval.order_limit_lock))
+ YYABORT;
+ (yyval.order_limit_lock)->order_list= NULL;
+ (yyval.order_limit_lock)->limit= (yyvsp[0].select_limit);
+ }
+#line 44665 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1976: /* int_num: opt_plus NUM */
+#line 12555 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.num)= (int) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44671 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1977: /* int_num: '-' NUM */
+#line 12556 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.num)= -(int) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44677 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1978: /* ulong_num: opt_plus NUM */
+#line 12560 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44683 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1979: /* ulong_num: HEX_NUM */
+#line 12561 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= strtoul((yyvsp[0].lex_str).str, (char**) 0, 16); }
+#line 44689 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1980: /* ulong_num: opt_plus LONG_NUM */
+#line 12562 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44695 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1981: /* ulong_num: opt_plus ULONGLONG_NUM */
+#line 12563 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44701 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1982: /* ulong_num: opt_plus DECIMAL_NUM */
+#line 12564 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44707 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1983: /* ulong_num: opt_plus FLOAT_NUM */
+#line 12565 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44713 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1984: /* real_ulong_num: NUM */
+#line 12569 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44719 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1985: /* real_ulong_num: HEX_NUM */
+#line 12570 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= (ulong) strtol((yyvsp[0].lex_str).str, (char**) 0, 16); }
+#line 44725 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1986: /* real_ulong_num: LONG_NUM */
+#line 12571 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44731 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1987: /* real_ulong_num: ULONGLONG_NUM */
+#line 12572 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44737 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1988: /* real_ulong_num: dec_num_error */
+#line 12573 "/home/buildbot/git/sql/sql_yacc.yy"
+ { MYSQL_YYABORT; }
+#line 44743 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1989: /* longlong_num: opt_plus NUM */
+#line 12577 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.longlong_number)= (longlong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44749 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1990: /* longlong_num: LONG_NUM */
+#line 12578 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.longlong_number)= (longlong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44755 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1991: /* longlong_num: '-' NUM */
+#line 12579 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.longlong_number)= -(longlong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44761 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1992: /* longlong_num: '-' LONG_NUM */
+#line 12580 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.longlong_number)= -(longlong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44767 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1993: /* ulonglong_num: opt_plus NUM */
+#line 12584 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44773 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1994: /* ulonglong_num: opt_plus ULONGLONG_NUM */
+#line 12585 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44779 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1995: /* ulonglong_num: opt_plus LONG_NUM */
+#line 12586 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44785 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1996: /* ulonglong_num: opt_plus DECIMAL_NUM */
+#line 12587 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44791 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1997: /* ulonglong_num: opt_plus FLOAT_NUM */
+#line 12588 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44797 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1998: /* real_ulonglong_num: NUM */
+#line 12592 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44803 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 1999: /* real_ulonglong_num: ULONGLONG_NUM */
+#line 12593 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44809 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2000: /* real_ulonglong_num: HEX_NUM */
+#line 12594 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulonglong_number)= strtoull((yyvsp[0].lex_str).str, (char**) 0, 16); }
+#line 44815 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2001: /* real_ulonglong_num: LONG_NUM */
+#line 12595 "/home/buildbot/git/sql/sql_yacc.yy"
+ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); }
+#line 44821 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2002: /* real_ulonglong_num: dec_num_error */
+#line 12596 "/home/buildbot/git/sql/sql_yacc.yy"
+ { MYSQL_YYABORT; }
+#line 44827 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2003: /* dec_num_error: dec_num */
+#line 12601 "/home/buildbot/git/sql/sql_yacc.yy"
+ { thd->parse_error(ER_ONLY_INTEGERS_ALLOWED); }
+#line 44833 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2006: /* choice: ulong_num */
+#line 12610 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.choice)= (yyvsp[0].ulong_num) != 0 ? HA_CHOICE_YES : HA_CHOICE_NO; }
+#line 44839 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2007: /* choice: DEFAULT */
+#line 12611 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.choice)= HA_CHOICE_UNDEF; }
+#line 44845 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2008: /* bool: ulong_num */
+#line 12615 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= (yyvsp[0].ulong_num) != 0; }
+#line 44851 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2009: /* bool: TRUE_SYM */
+#line 12616 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= 1; }
+#line 44857 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2010: /* bool: FALSE_SYM */
+#line 12617 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ulong_num)= 0; }
+#line 44863 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2011: /* $@169: %empty */
+#line 12622 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+
+ lex->proc_list.elements=0;
+ lex->proc_list.first=0;
+ lex->proc_list.next= &lex->proc_list.first;
+ Item_field *item= new (thd->mem_root)
+ Item_field(thd, &lex->current_select->context,
+ (yyvsp[0].ident_sys));
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ if (unlikely(add_proc_to_list(thd, item)))
+ MYSQL_YYABORT;
+ Lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
+
+ /*
+ PROCEDURE CLAUSE cannot handle subquery as one of its parameter,
+ so disallow any subqueries further.
+ Alow subqueries back once the parameters are reduced.
+ */
+ Lex->clause_that_disallows_subselect= "PROCEDURE";
+ Select->options|= OPTION_PROCEDURE_CLAUSE;
+ }
+#line 44891 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2012: /* procedure_clause: PROCEDURE_SYM ident $@169 '(' procedure_list ')' */
+#line 12646 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* Subqueries are allowed from now.*/
+ Lex->clause_that_disallows_subselect= NULL;
+ }
+#line 44900 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2013: /* procedure_list: %empty */
+#line 12653 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 44906 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2014: /* procedure_list: procedure_list2 */
+#line 12654 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 44912 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2017: /* procedure_item: remember_name expr remember_end */
+#line 12664 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(add_proc_to_list(thd, (yyvsp[-1].item))))
+ MYSQL_YYABORT;
+ if (!(yyvsp[-1].item)->name.str || (yyvsp[-1].item)->name.str == item_empty_name)
+ (yyvsp[-1].item)->set_name(thd, (yyvsp[-2].simple_string), (uint) ((yyvsp[0].simple_string) - (yyvsp[-2].simple_string)), thd->charset());
+ }
+#line 44923 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2018: /* $@170: %empty */
+#line 12673 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ if (!lex->describe &&
+ unlikely((!(lex->result= new (thd->mem_root)
+ select_dumpvar(thd)))))
+ MYSQL_YYABORT;
+ }
+#line 44935 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2019: /* select_var_list_init: $@170 select_var_list */
+#line 12681 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 44941 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2021: /* select_var_list: select_var_ident */
+#line 12686 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 44947 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2022: /* select_var_ident: select_outvar */
+#line 12690 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->result)
+ {
+ if (unlikely((yyvsp[0].myvar) == NULL))
+ MYSQL_YYABORT;
+ ((select_dumpvar *)Lex->result)->var_list.push_back((yyvsp[0].myvar), thd->mem_root);
+ }
+ else
+ {
+ /*
+ The parser won't create select_result instance only
+ if it's an EXPLAIN.
+ */
+ DBUG_ASSERT(Lex->describe);
+ }
+ }
+#line 44968 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2023: /* select_outvar: '@' ident_or_text */
+#line 12710 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!(yyvsp[0].lex_str).length)
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+
+ (yyval.myvar) = Lex->result ? new (thd->mem_root) my_var_user(&(yyvsp[0].lex_str)) : NULL;
+ }
+#line 44982 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2024: /* select_outvar: ident_or_text */
+#line 12720 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.myvar)= Lex->create_outvar(thd, &(yyvsp[0].lex_str))) && Lex->result))
+ MYSQL_YYABORT;
+ }
+#line 44991 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2025: /* select_outvar: ident '.' ident */
+#line 12725 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.myvar)= Lex->create_outvar(thd, &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys))) && Lex->result))
+ MYSQL_YYABORT;
+ }
+#line 45000 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2026: /* into: INTO into_destination */
+#line 12733 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45006 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2027: /* $@171: %empty */
+#line 12738 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
+ if (unlikely(!(lex->exchange=
+ new (thd->mem_root) sql_exchange((yyvsp[0].lex_str).str, 0))) ||
+ unlikely(!(lex->result=
+ new (thd->mem_root)
+ select_export(thd, lex->exchange))))
+ MYSQL_YYABORT;
+ }
+#line 45021 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2028: /* $@172: %empty */
+#line 12749 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->exchange->cs= (yyvsp[0].charset); }
+#line 45027 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2030: /* into_destination: DUMPFILE TEXT_STRING_filesystem */
+#line 12752 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ if (!lex->describe)
+ {
+ lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
+ if (unlikely(!(lex->exchange=
+ new (thd->mem_root) sql_exchange((yyvsp[0].lex_str).str,1))))
+ MYSQL_YYABORT;
+ if (unlikely(!(lex->result=
+ new (thd->mem_root)
+ select_dump(thd, lex->exchange))))
+ MYSQL_YYABORT;
+ }
+ }
+#line 45046 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2031: /* into_destination: select_var_list_init */
+#line 12767 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->uncacheable(UNCACHEABLE_SIDEEFFECT);
+ }
+#line 45054 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2032: /* $@173: %empty */
+#line 12778 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command = SQLCOM_DO;
+ if (lex->main_select_push(true))
+ MYSQL_YYABORT;
+ lex->init_select();
+ }
+#line 45066 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2033: /* do: DO_SYM $@173 expr_list */
+#line 12786 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->insert_list= (yyvsp[0].item_list);
+ Lex->pop_select(); //main select
+ if (Lex->check_cte_dependencies_and_resolve_references())
+ MYSQL_YYABORT;
+ }
+#line 45077 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2034: /* $@174: %empty */
+#line 12800 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->set_command(SQLCOM_DROP_TABLE, (yyvsp[-2].num), (yyvsp[0].object_ddl_options));
+ YYPS->m_lock_type= TL_UNLOCK;
+ YYPS->m_mdl_type= MDL_EXCLUSIVE;
+ }
+#line 45088 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2035: /* drop: DROP opt_temporary table_or_tables opt_if_exists $@174 table_list opt_lock_wait_timeout opt_restrict */
+#line 12807 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45094 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2036: /* $@175: %empty */
+#line 12809 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ }
+#line 45103 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2037: /* drop: DROP INDEX_SYM $@175 opt_if_exists_table_element ident ON table_ident opt_lock_wait_timeout */
+#line 12814 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Alter_drop *ad= (new (thd->mem_root)
+ Alter_drop(Alter_drop::KEY, (yyvsp[-3].ident_sys).str, (yyvsp[-4].num)));
+ if (unlikely(ad == NULL))
+ MYSQL_YYABORT;
+ lex->sql_command= SQLCOM_DROP_INDEX;
+ lex->alter_info.reset();
+ lex->alter_info.flags= ALTER_DROP_INDEX;
+ lex->alter_info.drop_list.push_back(ad, thd->mem_root);
+ if (unlikely(!lex->current_select->
+ add_table_to_list(thd, (yyvsp[-1].table), NULL, TL_OPTION_UPDATING,
+ TL_READ_NO_INSERT,
+ MDL_SHARED_UPGRADABLE)))
+ MYSQL_YYABORT;
+ Lex->pop_select(); //main select
+ }
+#line 45125 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2038: /* drop: DROP DATABASE opt_if_exists ident */
+#line 12832 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->set_command(SQLCOM_DROP_DB, (yyvsp[-1].object_ddl_options));
+ lex->name= (yyvsp[0].ident_sys);
+ }
+#line 45135 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2039: /* drop: DROP USER_SYM opt_if_exists clear_privileges user_list */
+#line 12838 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->set_command(SQLCOM_DROP_USER, (yyvsp[-2].object_ddl_options));
+ }
+#line 45143 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2040: /* drop: DROP ROLE_SYM opt_if_exists clear_privileges role_list */
+#line 12842 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->set_command(SQLCOM_DROP_ROLE, (yyvsp[-2].object_ddl_options));
+ }
+#line 45151 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2041: /* $@176: %empty */
+#line 12846 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->set_command(SQLCOM_DROP_VIEW, (yyvsp[0].object_ddl_options));
+ YYPS->m_lock_type= TL_UNLOCK;
+ YYPS->m_mdl_type= MDL_EXCLUSIVE;
+ }
+#line 45162 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2042: /* drop: DROP VIEW_SYM opt_if_exists $@176 table_list opt_restrict */
+#line 12853 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45168 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2043: /* drop: DROP EVENT_SYM opt_if_exists sp_name */
+#line 12855 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->spname= (yyvsp[0].spname);
+ Lex->set_command(SQLCOM_DROP_EVENT, (yyvsp[-1].object_ddl_options));
+ }
+#line 45177 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2044: /* drop: DROP TRIGGER_SYM opt_if_exists sp_name */
+#line 12860 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->set_command(SQLCOM_DROP_TRIGGER, (yyvsp[-1].object_ddl_options));
+ lex->spname= (yyvsp[0].spname);
+ }
+#line 45187 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2045: /* drop: DROP SERVER_SYM opt_if_exists ident_or_text */
+#line 12866 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->set_command(SQLCOM_DROP_SERVER, (yyvsp[-1].object_ddl_options));
+ Lex->server_options.reset((yyvsp[0].lex_str));
+ }
+#line 45196 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2046: /* $@177: %empty */
+#line 12872 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->set_command(SQLCOM_DROP_SEQUENCE, (yyvsp[-2].num), (yyvsp[0].object_ddl_options));
+ lex->table_type= TABLE_TYPE_SEQUENCE;
+ YYPS->m_lock_type= TL_UNLOCK;
+ YYPS->m_mdl_type= MDL_EXCLUSIVE;
+ }
+#line 45208 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2047: /* drop: DROP opt_temporary SEQUENCE_SYM opt_if_exists $@177 table_list */
+#line 12880 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45214 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2051: /* table_name: table_ident */
+#line 12891 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!thd->lex->current_select_or_default()->
+ add_table_to_list(thd, (yyvsp[0].table), NULL,
+ TL_OPTION_UPDATING,
+ YYPS->m_lock_type,
+ YYPS->m_mdl_type))
+ MYSQL_YYABORT;
+ }
+#line 45227 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2052: /* table_name_with_opt_use_partition: table_ident opt_use_partition */
+#line 12903 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-1].table), NULL,
+ TL_OPTION_UPDATING,
+ YYPS->m_lock_type,
+ YYPS->m_mdl_type,
+ NULL,
+ (yyvsp[0].string_list))))
+ MYSQL_YYABORT;
+ }
+#line 45241 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2055: /* table_alias_ref: table_ident_opt_wild */
+#line 12921 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!Select->
+ add_table_to_list(thd, (yyvsp[0].table), NULL,
+ (TL_OPTION_UPDATING |
+ TL_OPTION_ALIAS),
+ YYPS->m_lock_type,
+ YYPS->m_mdl_type)))
+ MYSQL_YYABORT;
+ }
+#line 45255 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2056: /* opt_if_exists_table_element: %empty */
+#line 12934 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->check_exists= FALSE;
+ (yyval.num)= 0;
+ }
+#line 45264 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2057: /* opt_if_exists_table_element: IF_SYM EXISTS */
+#line 12939 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->check_exists= TRUE;
+ (yyval.num)= 1;
+ }
+#line 45273 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2058: /* opt_if_exists: %empty */
+#line 12947 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.object_ddl_options).set(DDL_options_st::OPT_NONE);
+ }
+#line 45281 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2059: /* opt_if_exists: IF_SYM EXISTS */
+#line 12951 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.object_ddl_options).set(DDL_options_st::OPT_IF_EXISTS);
+ }
+#line 45289 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2060: /* opt_temporary: %empty */
+#line 12957 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 45295 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2061: /* opt_temporary: TEMPORARY */
+#line 12958 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= HA_LEX_CREATE_TMP_TABLE; }
+#line 45301 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2062: /* $@178: %empty */
+#line 12966 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_INSERT;
+ Lex->duplicates= DUP_ERROR;
+ thd->get_stmt_da()->opt_clear_warning_info(thd->query_id);
+ thd->get_stmt_da()->reset_current_row_for_warning(1);
+ }
+#line 45312 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2063: /* $@179: %empty */
+#line 12973 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->set_lock_for_tables((yyvsp[-3].lock_type), true, false);
+ }
+#line 45320 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2064: /* insert: INSERT $@178 insert_start insert_lock_option opt_ignore opt_into insert_table $@179 insert_field_spec opt_insert_update opt_returning stmt_end */
+#line 12978 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mark_first_table_as_inserting();
+ thd->get_stmt_da()->reset_current_row_for_warning(0);
+ }
+#line 45329 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2065: /* $@180: %empty */
+#line 12986 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_REPLACE;
+ Lex->duplicates= DUP_REPLACE;
+ thd->get_stmt_da()->opt_clear_warning_info(thd->query_id);
+ thd->get_stmt_da()->reset_current_row_for_warning(1);
+ }
+#line 45340 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2066: /* $@181: %empty */
+#line 12993 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->set_lock_for_tables((yyvsp[-2].lock_type), true, false);
+ }
+#line 45348 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2067: /* replace: REPLACE $@180 insert_start replace_lock_option opt_into insert_table $@181 insert_field_spec opt_returning stmt_end */
+#line 12998 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mark_first_table_as_inserting();
+ thd->get_stmt_da()->reset_current_row_for_warning(0);
+ }
+#line 45357 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2068: /* insert_start: %empty */
+#line 13004 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ Lex->init_select();
+ Lex->inc_select_stack_outer_barrier();
+ Lex->current_select->parsing_place= BEFORE_OPT_LIST;
+ }
+#line 45369 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2069: /* stmt_end: %empty */
+#line 13013 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ if (Lex->check_main_unit_semantics())
+ MYSQL_YYABORT;
+ }
+#line 45379 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2070: /* insert_lock_option: %empty */
+#line 13022 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ If it is SP we do not allow insert optimisation when result of
+ insert visible only after the table unlocking but everyone can
+ read table.
+ */
+ (yyval.lock_type)= (Lex->sphead ? TL_WRITE_DEFAULT : TL_WRITE_CONCURRENT_INSERT);
+ }
+#line 45392 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2072: /* insert_lock_option: HIGH_PRIORITY */
+#line 13031 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lock_type)= TL_WRITE; }
+#line 45398 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2073: /* replace_lock_option: %empty */
+#line 13035 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lock_type)= TL_WRITE_DEFAULT; }
+#line 45404 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2075: /* insert_replace_option: LOW_PRIORITY */
+#line 13040 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
+#line 45410 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2076: /* insert_replace_option: DELAYED_SYM */
+#line 13042 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->keyword_delayed_begin_offset= (uint)((yyvsp[0].kwd).pos() - thd->query());
+ Lex->keyword_delayed_end_offset= (uint)((yyvsp[0].kwd).end() - thd->query());
+ (yyval.lock_type)= TL_WRITE_DELAYED;
+ }
+#line 45420 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2079: /* $@182: %empty */
+#line 13052 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->save_parsing_place= Select->parsing_place;
+ }
+#line 45428 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2080: /* insert_table: $@182 table_name_with_opt_use_partition */
+#line 13056 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ //lex->field_list.empty();
+ lex->many_values.empty();
+ lex->insert_list=0;
+ }
+#line 45439 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2081: /* insert_field_spec: insert_values */
+#line 13065 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45445 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2082: /* insert_field_spec: insert_field_list insert_values */
+#line 13066 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45451 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2083: /* $@183: %empty */
+#line 13068 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ if (unlikely(!(lex->insert_list= new (thd->mem_root) List_item)) ||
+ unlikely(lex->many_values.push_back(lex->insert_list,
+ thd->mem_root)))
+ MYSQL_YYABORT;
+ lex->current_select->parsing_place= NO_MATTER;
+ }
+#line 45464 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2085: /* insert_field_list: LEFT_PAREN_ALT opt_fields ')' */
+#line 13081 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->current_select->parsing_place= AFTER_LIST;
+ }
+#line 45472 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2088: /* fields: fields ',' insert_ident */
+#line 13093 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
+#line 45478 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2089: /* fields: insert_ident */
+#line 13094 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
+#line 45484 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2090: /* insert_values: create_select_query_expression */
+#line 13100 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45490 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2095: /* ident_eq_value: simple_ident_nospvar equal expr_or_ignore_or_default */
+#line 13115 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ if (unlikely(lex->field_list.push_back((yyvsp[-2].item), thd->mem_root)) ||
+ unlikely(lex->insert_list->push_back((yyvsp[0].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 45501 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2096: /* equal: '=' */
+#line 13124 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45507 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2097: /* equal: SET_VAR */
+#line 13125 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45513 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2098: /* opt_equal: %empty */
+#line 13129 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45519 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2099: /* opt_equal: equal */
+#line 13130 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45525 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2100: /* opt_with: opt_equal */
+#line 13134 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45531 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2101: /* opt_with: WITH */
+#line 13135 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45537 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2102: /* opt_by: opt_equal */
+#line 13139 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45543 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2103: /* opt_by: BY */
+#line 13140 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45549 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2104: /* $@184: %empty */
+#line 13145 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!(Lex->insert_list= new (thd->mem_root) List_item)))
+ MYSQL_YYABORT;
+ }
+#line 45558 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2105: /* no_braces: '(' $@184 opt_values ')' */
+#line 13150 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ thd->get_stmt_da()->inc_current_row_for_warning();
+ if (unlikely(lex->many_values.push_back(lex->insert_list,
+ thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 45570 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2106: /* $@185: %empty */
+#line 13161 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!(Lex->insert_list= new (thd->mem_root) List_item)))
+ MYSQL_YYABORT;
+ }
+#line 45579 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2107: /* no_braces_with_names: '(' $@185 opt_values_with_names ')' */
+#line 13166 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ thd->get_stmt_da()->inc_current_row_for_warning();
+ if (unlikely(lex->many_values.push_back(lex->insert_list,
+ thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 45591 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2108: /* opt_values: %empty */
+#line 13176 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45597 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2110: /* opt_values_with_names: %empty */
+#line 13181 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45603 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2112: /* values: values ',' expr_or_ignore_or_default */
+#line 13187 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->insert_list->push_back((yyvsp[0].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 45612 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2113: /* values: expr_or_ignore_or_default */
+#line 13192 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->insert_list->push_back((yyvsp[0].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 45621 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2114: /* values_with_names: values_with_names ',' remember_name expr_or_ignore_or_default remember_end */
+#line 13200 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->insert_list->push_back((yyvsp[-1].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ // give some name in case of using in table value constuctor (TVC)
+ if (!(yyvsp[-1].item)->name.str || (yyvsp[-1].item)->name.str == item_empty_name)
+ (yyvsp[-1].item)->set_name(thd, (yyvsp[-2].simple_string), (uint) ((yyvsp[0].simple_string) - (yyvsp[-2].simple_string)), thd->charset());
+ }
+#line 45633 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2115: /* values_with_names: remember_name expr_or_ignore_or_default remember_end */
+#line 13208 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->insert_list->push_back((yyvsp[-1].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ // give some name in case of using in table value constuctor (TVC)
+ if (!(yyvsp[-1].item)->name.str || (yyvsp[-1].item)->name.str == item_empty_name)
+ (yyvsp[-1].item)->set_name(thd, (yyvsp[-2].simple_string), (uint) ((yyvsp[0].simple_string) - (yyvsp[-2].simple_string)), thd->charset());
+ }
+#line 45645 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2116: /* expr_or_ignore: expr */
+#line 13218 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)= (yyvsp[0].item);}
+#line 45651 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2117: /* expr_or_ignore: IGNORE_SYM */
+#line 13220 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_ignore_specification(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 45661 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2118: /* expr_or_ignore_or_default: expr_or_ignore */
+#line 13228 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)= (yyvsp[0].item);}
+#line 45667 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2119: /* expr_or_ignore_or_default: DEFAULT */
+#line 13230 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_default_specification(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 45677 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2121: /* $@186: %empty */
+#line 13239 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->duplicates= DUP_UPDATE; }
+#line 45683 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2122: /* $@187: %empty */
+#line 13241 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->parsing_place= IN_UPDATE_ON_DUP_KEY;
+ }
+#line 45691 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2123: /* opt_insert_update: ON DUPLICATE_SYM $@186 KEY_SYM UPDATE_SYM $@187 insert_update_list */
+#line 13245 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->parsing_place= NO_MATTER;
+ }
+#line 45699 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2124: /* update_table_list: table_ident opt_use_partition for_portion_of_time_clause opt_table_alias_clause opt_key_definition */
+#line 13253 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.table_list)= Select->add_table_to_list(thd, (yyvsp[-4].table), (yyvsp[-1].lex_str_ptr),
+ 0,
+ YYPS->m_lock_type,
+ YYPS->m_mdl_type,
+ Select->pop_index_hints(),
+ (yyvsp[-3].string_list))))
+ MYSQL_YYABORT;
+ (yyval.table_list)->period_conditions= Lex->period_conditions;
+ }
+#line 45714 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2125: /* update_table_list: join_table_list */
+#line 13263 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.table_list)= (yyvsp[0].table_list); }
+#line 45720 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2126: /* $@188: %empty */
+#line 13270 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ lex->init_select();
+ lex->sql_command= SQLCOM_UPDATE;
+ lex->duplicates= DUP_ERROR;
+ }
+#line 45733 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2127: /* $@189: %empty */
+#line 13280 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ SELECT_LEX *slex= Lex->first_select_lex();
+ if (slex->table_list.elements > 1)
+ Lex->sql_command= SQLCOM_UPDATE_MULTI;
+ else if (slex->get_table_list()->derived)
+ {
+ /* it is single table update and it is update of derived table */
+ my_error(ER_NON_UPDATABLE_TABLE, MYF(0),
+ slex->get_table_list()->alias.str, "UPDATE");
+ MYSQL_YYABORT;
+ }
+ /*
+ In case of multi-update setting write lock for all tables may
+ be too pessimistic. We will decrease lock level if possible in
+ mysql_multi_update().
+ */
+ slex->set_lock_for_tables((yyvsp[-4].lock_type), slex->table_list.elements == 1, false);
+ }
+#line 45756 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2128: /* $@190: %empty */
+#line 13299 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyvsp[-1].select_order))
+ Select->order_list= *((yyvsp[-1].select_order));
+ }
+#line 45765 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2129: /* update: UPDATE_SYM $@188 opt_low_priority opt_ignore update_table_list SET update_list $@189 opt_where_clause opt_order_clause delete_limit_clause $@190 stmt_end */
+#line 13302 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45771 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2132: /* update_elem: simple_ident_nospvar equal DEFAULT */
+#line 13312 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *def= new (thd->mem_root) Item_default_value(thd,
+ Lex->current_context(), (yyvsp[-2].item), 1);
+ if (!def || add_item_to_list(thd, (yyvsp[-2].item)) || add_value_to_list(thd, def))
+ MYSQL_YYABORT;
+ }
+#line 45782 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2133: /* update_elem: simple_ident_nospvar equal expr_or_ignore */
+#line 13319 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (add_item_to_list(thd, (yyvsp[-2].item)) || add_value_to_list(thd, (yyvsp[0].item)))
+ MYSQL_YYABORT;
+ }
+#line 45791 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2136: /* insert_update_elem: simple_ident_nospvar equal expr_or_ignore_or_default */
+#line 13332 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(lex->update_list.push_back((yyvsp[-2].item), thd->mem_root)) ||
+ unlikely(lex->value_list.push_back((yyvsp[0].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 45802 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2137: /* opt_low_priority: %empty */
+#line 13341 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lock_type)= TL_WRITE_DEFAULT; }
+#line 45808 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2138: /* opt_low_priority: LOW_PRIORITY */
+#line 13342 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
+#line 45814 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2139: /* $@191: %empty */
+#line 13349 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_DELETE;
+ YYPS->m_lock_type= TL_WRITE_DEFAULT;
+ YYPS->m_mdl_type= MDL_SHARED_WRITE;
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ lex->init_select();
+ lex->ignore= 0;
+ lex->first_select_lex()->order_list.empty();
+ }
+#line 45830 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2140: /* delete: DELETE_SYM $@191 delete_part2 */
+#line 13361 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->check_cte_dependencies_and_resolve_references())
+ MYSQL_YYABORT;
+ }
+#line 45839 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2141: /* opt_delete_system_time: %empty */
+#line 13369 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->vers_conditions.init(SYSTEM_TIME_HISTORY);
+ }
+#line 45847 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2142: /* opt_delete_system_time: BEFORE_SYM SYSTEM_TIME_SYM history_point */
+#line 13373 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->vers_conditions.init(SYSTEM_TIME_BEFORE, (yyvsp[0].vers_history_point));
+ }
+#line 45855 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2143: /* delete_part2: opt_delete_options single_multi */
+#line 13379 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45861 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2144: /* delete_part2: HISTORY_SYM delete_single_table opt_delete_system_time */
+#line 13381 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->last_table()->vers_conditions= Lex->vers_conditions;
+ Lex->pop_select(); //main select
+ if (Lex->check_main_unit_semantics())
+ MYSQL_YYABORT;
+ }
+#line 45872 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2145: /* delete_single_table: FROM table_ident opt_use_partition */
+#line 13391 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!Select->
+ add_table_to_list(thd, (yyvsp[-1].table), NULL, TL_OPTION_UPDATING,
+ YYPS->m_lock_type,
+ YYPS->m_mdl_type,
+ NULL,
+ (yyvsp[0].string_list))))
+ MYSQL_YYABORT;
+ YYPS->m_lock_type= TL_READ_DEFAULT;
+ YYPS->m_mdl_type= MDL_SHARED_READ;
+ }
+#line 45888 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2146: /* delete_single_table_for_period: delete_single_table opt_for_portion_of_time_clause */
+#line 13406 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyvsp[0].num))
+ Lex->last_table()->period_conditions= Lex->period_conditions;
+ }
+#line 45897 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2147: /* single_multi: delete_single_table_for_period opt_where_clause opt_order_clause delete_limit_clause opt_returning */
+#line 13418 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyvsp[-2].select_order))
+ Select->order_list= *((yyvsp[-2].select_order));
+ Lex->pop_select(); //main select
+ if (Lex->check_main_unit_semantics())
+ MYSQL_YYABORT;
+ }
+#line 45909 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2148: /* $@192: %empty */
+#line 13426 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ mysql_init_multi_delete(Lex);
+ YYPS->m_lock_type= TL_READ_DEFAULT;
+ YYPS->m_mdl_type= MDL_SHARED_READ;
+ }
+#line 45919 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2149: /* $@193: %empty */
+#line 13432 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(multi_delete_set_locks_and_link_aux_tables(Lex)))
+ MYSQL_YYABORT;
+ }
+#line 45928 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2150: /* single_multi: table_wild_list $@192 FROM join_table_list opt_where_clause $@193 stmt_end */
+#line 13435 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45934 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2151: /* $@194: %empty */
+#line 13437 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ mysql_init_multi_delete(Lex);
+ YYPS->m_lock_type= TL_READ_DEFAULT;
+ YYPS->m_mdl_type= MDL_SHARED_READ;
+ }
+#line 45944 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2152: /* $@195: %empty */
+#line 13443 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(multi_delete_set_locks_and_link_aux_tables(Lex)))
+ MYSQL_YYABORT;
+ }
+#line 45953 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2153: /* single_multi: FROM table_alias_ref_list $@194 USING join_table_list opt_where_clause $@195 stmt_end */
+#line 13446 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 45959 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2154: /* opt_returning: %empty */
+#line 13451 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(!Lex->has_returning());
+ }
+#line 45967 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2155: /* $@196: %empty */
+#line 13455 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(!Lex->has_returning());
+ /*
+ When parsing_place is IN_RETURNING, we push select items to
+ item_list of builtin_select instead of current_select.
+ But set parsing_place of current_select to true.
+
+ Because parsing_place for builtin_select will be IN_RETURNING,
+ regardless there is SELECT in RETURNING. Example, if
+ there is RETURNING (SELECT...), then when we parse
+ SELECT inside RETURNING, builtin_select->parsing_place
+ will still be true. So the select items of SELECT inside
+ RETURNING will be added to item_list of builtin_select which
+ is incorrect. We want to prevent this from happening.
+ Since for every new select, a new SELECT_LEX
+ object is created and pushed to select stack, current_select
+ will point to SELECT inside RETURNING, and also has
+ parsing_place not set to IN_RETURNING by default.
+ So items are correctly added to item_list of SELECT inside
+ RETURNING instead of builtin_select.
+ */
+
+ thd->lex->current_select->parsing_place= IN_RETURNING;
+ thd->lex->push_context(&thd->lex->returning()->context);
+ }
+#line 45997 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2156: /* opt_returning: RETURNING_SYM $@196 select_item_list */
+#line 13481 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ thd->lex->pop_context();
+ thd->lex->current_select->parsing_place= NO_MATTER;
+ }
+#line 46006 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2159: /* table_wild_one: ident opt_wild */
+#line 13494 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Table_ident *ti= new (thd->mem_root) Table_ident(&(yyvsp[-1].ident_sys));
+ if (unlikely(ti == NULL))
+ MYSQL_YYABORT;
+ if (unlikely(!Select->
+ add_table_to_list(thd,
+ ti,
+ NULL,
+ (TL_OPTION_UPDATING |
+ TL_OPTION_ALIAS),
+ YYPS->m_lock_type,
+ YYPS->m_mdl_type)))
+ MYSQL_YYABORT;
+ }
+#line 46025 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2160: /* table_wild_one: ident '.' ident opt_wild */
+#line 13509 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Table_ident *ti= new (thd->mem_root) Table_ident(thd, &(yyvsp[-3].ident_sys), &(yyvsp[-1].ident_sys), 0);
+ if (unlikely(ti == NULL))
+ MYSQL_YYABORT;
+ if (unlikely(!Select->
+ add_table_to_list(thd,
+ ti,
+ NULL,
+ (TL_OPTION_UPDATING |
+ TL_OPTION_ALIAS),
+ YYPS->m_lock_type,
+ YYPS->m_mdl_type)))
+ MYSQL_YYABORT;
+ }
+#line 46044 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2161: /* opt_wild: %empty */
+#line 13526 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 46050 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2162: /* opt_wild: '.' '*' */
+#line 13527 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 46056 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2163: /* opt_delete_options: %empty */
+#line 13531 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 46062 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2164: /* opt_delete_options: opt_delete_option opt_delete_options */
+#line 13532 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 46068 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2165: /* opt_delete_option: QUICK */
+#line 13536 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->options|= OPTION_QUICK; }
+#line 46074 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2166: /* opt_delete_option: LOW_PRIORITY */
+#line 13537 "/home/buildbot/git/sql/sql_yacc.yy"
+ { YYPS->m_lock_type= TL_WRITE_LOW_PRIORITY; }
+#line 46080 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2167: /* opt_delete_option: IGNORE_SYM */
+#line 13538 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ignore= 1; }
+#line 46086 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2168: /* $@197: %empty */
+#line 13543 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX* lex= Lex;
+ lex->sql_command= SQLCOM_TRUNCATE;
+ lex->alter_info.reset();
+ lex->first_select_lex()->options= 0;
+ lex->sql_cache= LEX::SQL_CACHE_UNSPECIFIED;
+ lex->first_select_lex()->order_list.empty();
+ YYPS->m_lock_type= TL_WRITE;
+ YYPS->m_mdl_type= MDL_EXCLUSIVE;
+ }
+#line 46101 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2169: /* $@198: %empty */
+#line 13554 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX* lex= thd->lex;
+ DBUG_ASSERT(!lex->m_sql_cmd);
+ lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_truncate_table();
+ if (unlikely(lex->m_sql_cmd == NULL))
+ MYSQL_YYABORT;
+ }
+#line 46113 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2170: /* truncate: TRUNCATE_SYM $@197 opt_table_sym table_name opt_lock_wait_timeout $@198 opt_truncate_table_storage_clause */
+#line 13561 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 46119 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2177: /* profile_def: CPU_SYM */
+#line 13579 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->profile_options|= PROFILE_CPU;
+ }
+#line 46127 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2178: /* profile_def: MEMORY_SYM */
+#line 13583 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->profile_options|= PROFILE_MEMORY;
+ }
+#line 46135 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2179: /* profile_def: BLOCK_SYM IO_SYM */
+#line 13587 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->profile_options|= PROFILE_BLOCK_IO;
+ }
+#line 46143 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2180: /* profile_def: CONTEXT_SYM SWITCHES_SYM */
+#line 13591 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->profile_options|= PROFILE_CONTEXT;
+ }
+#line 46151 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2181: /* profile_def: PAGE_SYM FAULTS_SYM */
+#line 13595 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->profile_options|= PROFILE_PAGE_FAULTS;
+ }
+#line 46159 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2182: /* profile_def: IPC_SYM */
+#line 13599 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->profile_options|= PROFILE_IPC;
+ }
+#line 46167 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2183: /* profile_def: SWAPS_SYM */
+#line 13603 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->profile_options|= PROFILE_SWAPS;
+ }
+#line 46175 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2184: /* profile_def: SOURCE_SYM */
+#line 13607 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->profile_options|= PROFILE_SOURCE;
+ }
+#line 46183 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2185: /* profile_def: ALL */
+#line 13611 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->profile_options|= PROFILE_ALL;
+ }
+#line 46191 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2186: /* opt_profile_args: %empty */
+#line 13618 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->profile_query_id= 0;
+ }
+#line 46199 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2187: /* opt_profile_args: FOR_SYM QUERY_SYM NUM */
+#line 13622 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->profile_query_id= atoi((yyvsp[0].lex_str).str);
+ }
+#line 46207 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2188: /* $@199: %empty */
+#line 13631 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->wild=0;
+ lex->ident= null_clex_str;
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ lex->init_select();
+ lex->current_select->parsing_place= SELECT_LIST;
+ lex->create_info.init();
+ }
+#line 46222 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2189: /* show: SHOW $@199 show_param */
+#line 13642 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->parsing_place= NO_MATTER;
+ Lex->pop_select(); //main select
+ }
+#line 46231 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2190: /* show_param: DATABASES wild_and_where */
+#line 13650 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_DATABASES;
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_SCHEMATA)))
+ MYSQL_YYABORT;
+ }
+#line 46242 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2191: /* show_param: opt_full TABLES opt_db wild_and_where */
+#line 13657 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_TABLES;
+ lex->first_select_lex()->db= (yyvsp[-1].lex_str);
+ if (prepare_schema_table(thd, lex, 0, SCH_TABLE_NAMES))
+ MYSQL_YYABORT;
+ }
+#line 46254 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2192: /* show_param: opt_full TRIGGERS_SYM opt_db wild_and_where */
+#line 13665 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_TRIGGERS;
+ lex->first_select_lex()->db= (yyvsp[-1].lex_str);
+ if (prepare_schema_table(thd, lex, 0, SCH_TRIGGERS))
+ MYSQL_YYABORT;
+ }
+#line 46266 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2193: /* show_param: EVENTS_SYM opt_db wild_and_where */
+#line 13673 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_EVENTS;
+ lex->first_select_lex()->db= (yyvsp[-1].lex_str);
+ if (prepare_schema_table(thd, lex, 0, SCH_EVENTS))
+ MYSQL_YYABORT;
+ }
+#line 46278 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2194: /* show_param: TABLE_SYM STATUS_SYM opt_db wild_and_where */
+#line 13681 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_TABLE_STATUS;
+ lex->first_select_lex()->db= (yyvsp[-1].lex_str);
+ if (prepare_schema_table(thd, lex, 0, SCH_TABLES))
+ MYSQL_YYABORT;
+ }
+#line 46290 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2195: /* show_param: OPEN_SYM TABLES opt_db wild_and_where */
+#line 13689 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_OPEN_TABLES;
+ lex->first_select_lex()->db= (yyvsp[-1].lex_str);
+ if (prepare_schema_table(thd, lex, 0, SCH_OPEN_TABLES))
+ MYSQL_YYABORT;
+ }
+#line 46302 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2196: /* show_param: PLUGINS_SYM */
+#line 13697 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_PLUGINS;
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PLUGINS)))
+ MYSQL_YYABORT;
+ }
+#line 46313 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2197: /* show_param: PLUGINS_SYM SONAME_SYM TEXT_STRING_sys */
+#line 13704 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->ident= (yyvsp[0].lex_str);
+ Lex->sql_command= SQLCOM_SHOW_PLUGINS;
+ if (unlikely(prepare_schema_table(thd, Lex, 0, SCH_ALL_PLUGINS)))
+ MYSQL_YYABORT;
+ }
+#line 46324 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2198: /* show_param: PLUGINS_SYM SONAME_SYM wild_and_where */
+#line 13711 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_SHOW_PLUGINS;
+ if (unlikely(prepare_schema_table(thd, Lex, 0, SCH_ALL_PLUGINS)))
+ MYSQL_YYABORT;
+ }
+#line 46334 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2199: /* show_param: ENGINE_SYM known_storage_engines show_engine_param */
+#line 13717 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->create_info.db_type= (yyvsp[-1].db_type); }
+#line 46340 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2200: /* show_param: ENGINE_SYM ALL show_engine_param */
+#line 13719 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->create_info.db_type= NULL; }
+#line 46346 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2201: /* show_param: opt_full COLUMNS from_or_in table_ident opt_db wild_and_where */
+#line 13721 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_FIELDS;
+ if ((yyvsp[-1].lex_str).str)
+ (yyvsp[-2].table)->change_db(&(yyvsp[-1].lex_str));
+ if (unlikely(prepare_schema_table(thd, lex, (yyvsp[-2].table), SCH_COLUMNS)))
+ MYSQL_YYABORT;
+ }
+#line 46359 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2202: /* show_param: master_or_binary LOGS_SYM */
+#line 13730 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_SHOW_BINLOGS;
+ }
+#line 46367 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2203: /* show_param: SLAVE HOSTS_SYM */
+#line 13734 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_SHOW_SLAVE_HOSTS;
+ }
+#line 46375 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2204: /* $@200: %empty */
+#line 13738 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_BINLOG_EVENTS;
+ }
+#line 46384 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2206: /* $@201: %empty */
+#line 13744 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_RELAYLOG_EVENTS;
+ }
+#line 46393 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2207: /* show_param: RELAYLOG_SYM optional_connection_name EVENTS_SYM binlog_in binlog_from $@201 opt_global_limit_clause optional_for_channel */
+#line 13749 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 46399 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2208: /* show_param: keys_or_index from_or_in table_ident opt_db opt_where_clause */
+#line 13751 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_KEYS;
+ if ((yyvsp[-1].lex_str).str)
+ (yyvsp[-2].table)->change_db(&(yyvsp[-1].lex_str));
+ if (unlikely(prepare_schema_table(thd, lex, (yyvsp[-2].table), SCH_STATISTICS)))
+ MYSQL_YYABORT;
+ }
+#line 46412 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2209: /* show_param: opt_storage ENGINES_SYM */
+#line 13760 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_SHOW_STORAGE_ENGINES;
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_ENGINES)))
+ MYSQL_YYABORT;
+ }
+#line 46423 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2210: /* show_param: AUTHORS_SYM */
+#line 13767 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_SHOW_AUTHORS;
+ }
+#line 46432 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2211: /* show_param: CONTRIBUTORS_SYM */
+#line 13772 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_SHOW_CONTRIBUTORS;
+ }
+#line 46441 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2212: /* show_param: PRIVILEGES */
+#line 13777 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_SHOW_PRIVILEGES;
+ }
+#line 46450 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2213: /* show_param: COUNT_SYM '(' '*' ')' WARNINGS */
+#line 13782 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX_CSTRING var= {STRING_WITH_LEN("warning_count")};
+ (void) create_select_for_variable(thd, &var);
+ }
+#line 46459 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2214: /* show_param: COUNT_SYM '(' '*' ')' ERRORS */
+#line 13787 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX_CSTRING var= {STRING_WITH_LEN("error_count")};
+ (void) create_select_for_variable(thd, &var);
+ }
+#line 46468 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2215: /* show_param: WARNINGS opt_global_limit_clause */
+#line 13792 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sql_command = SQLCOM_SHOW_WARNS;}
+#line 46474 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2216: /* show_param: ERRORS opt_global_limit_clause */
+#line 13794 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sql_command = SQLCOM_SHOW_ERRORS;}
+#line 46480 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2217: /* show_param: PROFILES_SYM */
+#line 13796 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sql_command = SQLCOM_SHOW_PROFILES; }
+#line 46486 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2218: /* show_param: PROFILE_SYM opt_profile_defs opt_profile_args opt_global_limit_clause */
+#line 13798 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_PROFILE;
+ if (unlikely(prepare_schema_table(thd, lex, NULL, SCH_PROFILES)))
+ MYSQL_YYABORT;
+ }
+#line 46497 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2219: /* show_param: opt_var_type STATUS_SYM wild_and_where */
+#line 13805 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_STATUS;
+ lex->option_type= (yyvsp[-2].var_type);
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_SESSION_STATUS)))
+ MYSQL_YYABORT;
+ }
+#line 46509 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2220: /* show_param: opt_full PROCESSLIST_SYM */
+#line 13813 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sql_command= SQLCOM_SHOW_PROCESSLIST;}
+#line 46515 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2221: /* show_param: opt_var_type VARIABLES wild_and_where */
+#line 13815 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_VARIABLES;
+ lex->option_type= (yyvsp[-2].var_type);
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_SESSION_VARIABLES)))
+ MYSQL_YYABORT;
+ }
+#line 46527 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2222: /* show_param: charset wild_and_where */
+#line 13823 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_CHARSETS;
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_CHARSETS)))
+ MYSQL_YYABORT;
+ }
+#line 46538 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2223: /* show_param: COLLATION_SYM wild_and_where */
+#line 13830 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_COLLATIONS;
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_COLLATIONS)))
+ MYSQL_YYABORT;
+ }
+#line 46549 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2224: /* show_param: GRANTS */
+#line 13837 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_SHOW_GRANTS;
+ if (unlikely(!(Lex->grant_user=
+ (LEX_USER*)thd->calloc(sizeof(LEX_USER)))))
+ MYSQL_YYABORT;
+ Lex->grant_user->user= current_user_and_current_role;
+ }
+#line 46561 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2225: /* show_param: GRANTS FOR_SYM user_or_role clear_privileges */
+#line 13845 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_SHOW_GRANTS;
+ lex->grant_user=(yyvsp[-1].lex_user);
+ }
+#line 46571 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2226: /* show_param: CREATE DATABASE opt_if_not_exists ident */
+#line 13851 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->set_command(SQLCOM_SHOW_CREATE_DB, (yyvsp[-1].object_ddl_options));
+ Lex->name= (yyvsp[0].ident_sys);
+ }
+#line 46580 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2227: /* show_param: CREATE TABLE_SYM table_ident */
+#line 13856 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command = SQLCOM_SHOW_CREATE;
+ if (!lex->first_select_lex()->add_table_to_list(thd, (yyvsp[0].table), NULL,0))
+ MYSQL_YYABORT;
+ lex->create_info.storage_media= HA_SM_DEFAULT;
+ }
+#line 46592 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2228: /* show_param: CREATE VIEW_SYM table_ident */
+#line 13864 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command = SQLCOM_SHOW_CREATE;
+ if (!lex->first_select_lex()->add_table_to_list(thd, (yyvsp[0].table), NULL, 0))
+ MYSQL_YYABORT;
+ lex->table_type= TABLE_TYPE_VIEW;
+ }
+#line 46604 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2229: /* show_param: CREATE SEQUENCE_SYM table_ident */
+#line 13872 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command = SQLCOM_SHOW_CREATE;
+ if (!lex->first_select_lex()->add_table_to_list(thd, (yyvsp[0].table), NULL, 0))
+ MYSQL_YYABORT;
+ lex->table_type= TABLE_TYPE_SEQUENCE;
+ }
+#line 46616 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2230: /* show_param: BINLOG_SYM STATUS_SYM */
+#line 13880 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_SHOW_BINLOG_STAT;
+ }
+#line 46624 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2231: /* show_param: MASTER_SYM STATUS_SYM */
+#line 13884 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_SHOW_BINLOG_STAT;
+ }
+#line 46632 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2232: /* show_param: ALL SLAVES STATUS_SYM */
+#line 13888 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!(Lex->m_sql_cmd= new (thd->mem_root)
+ Sql_cmd_show_slave_status(true)))
+ MYSQL_YYABORT;
+ Lex->sql_command = SQLCOM_SHOW_SLAVE_STAT;
+ }
+#line 46643 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2233: /* show_param: SLAVE optional_connection_name STATUS_SYM optional_for_channel */
+#line 13895 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!(Lex->m_sql_cmd= new (thd->mem_root)
+ Sql_cmd_show_slave_status()))
+ MYSQL_YYABORT;
+ Lex->sql_command = SQLCOM_SHOW_SLAVE_STAT;
+ }
+#line 46654 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2234: /* show_param: CREATE PROCEDURE_SYM sp_name */
+#line 13902 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+
+ lex->sql_command = SQLCOM_SHOW_CREATE_PROC;
+ lex->spname= (yyvsp[0].spname);
+ }
+#line 46665 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2235: /* show_param: CREATE FUNCTION_SYM sp_name */
+#line 13909 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+
+ lex->sql_command = SQLCOM_SHOW_CREATE_FUNC;
+ lex->spname= (yyvsp[0].spname);
+ }
+#line 46676 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2236: /* show_param: CREATE PACKAGE_MARIADB_SYM sp_name */
+#line 13916 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command = SQLCOM_SHOW_CREATE_PACKAGE;
+ lex->spname= (yyvsp[0].spname);
+ }
+#line 46686 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2237: /* show_param: CREATE PACKAGE_ORACLE_SYM sp_name */
+#line 13922 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command = SQLCOM_SHOW_CREATE_PACKAGE;
+ lex->spname= (yyvsp[0].spname);
+ }
+#line 46696 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2238: /* show_param: CREATE PACKAGE_MARIADB_SYM BODY_MARIADB_SYM sp_name */
+#line 13928 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command = SQLCOM_SHOW_CREATE_PACKAGE_BODY;
+ lex->spname= (yyvsp[0].spname);
+ }
+#line 46706 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2239: /* show_param: CREATE PACKAGE_ORACLE_SYM BODY_ORACLE_SYM sp_name */
+#line 13934 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command = SQLCOM_SHOW_CREATE_PACKAGE_BODY;
+ lex->spname= (yyvsp[0].spname);
+ }
+#line 46716 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2240: /* show_param: CREATE TRIGGER_SYM sp_name */
+#line 13940 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_CREATE_TRIGGER;
+ lex->spname= (yyvsp[0].spname);
+ }
+#line 46726 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2241: /* show_param: CREATE USER_SYM */
+#line 13946 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_SHOW_CREATE_USER;
+ if (unlikely(!(Lex->grant_user=
+ (LEX_USER*)thd->calloc(sizeof(LEX_USER)))))
+ MYSQL_YYABORT;
+ Lex->grant_user->user= current_user;
+ }
+#line 46738 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2242: /* show_param: CREATE USER_SYM user */
+#line 13954 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_SHOW_CREATE_USER;
+ Lex->grant_user= (yyvsp[0].lex_user);
+ }
+#line 46747 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2243: /* show_param: PROCEDURE_SYM STATUS_SYM wild_and_where */
+#line 13959 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_STATUS_PROC;
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)))
+ MYSQL_YYABORT;
+ }
+#line 46758 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2244: /* show_param: FUNCTION_SYM STATUS_SYM wild_and_where */
+#line 13966 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_STATUS_FUNC;
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)))
+ MYSQL_YYABORT;
+ }
+#line 46769 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2245: /* show_param: PACKAGE_MARIADB_SYM STATUS_SYM wild_and_where */
+#line 13973 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_STATUS_PACKAGE;
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)))
+ MYSQL_YYABORT;
+ }
+#line 46780 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2246: /* show_param: PACKAGE_ORACLE_SYM STATUS_SYM wild_and_where */
+#line 13980 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_STATUS_PACKAGE;
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)))
+ MYSQL_YYABORT;
+ }
+#line 46791 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2247: /* show_param: PACKAGE_MARIADB_SYM BODY_MARIADB_SYM STATUS_SYM wild_and_where */
+#line 13987 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_STATUS_PACKAGE_BODY;
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)))
+ MYSQL_YYABORT;
+ }
+#line 46802 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2248: /* show_param: PACKAGE_ORACLE_SYM BODY_ORACLE_SYM STATUS_SYM wild_and_where */
+#line 13994 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_SHOW_STATUS_PACKAGE_BODY;
+ if (unlikely(prepare_schema_table(thd, lex, 0, SCH_PROCEDURES)))
+ MYSQL_YYABORT;
+ }
+#line 46813 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2249: /* show_param: PROCEDURE_SYM CODE_SYM sp_name */
+#line 14001 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_SHOW_PROC_CODE;
+ Lex->spname= (yyvsp[0].spname);
+ }
+#line 46822 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2250: /* show_param: FUNCTION_SYM CODE_SYM sp_name */
+#line 14006 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_SHOW_FUNC_CODE;
+ Lex->spname= (yyvsp[0].spname);
+ }
+#line 46831 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2251: /* show_param: PACKAGE_MARIADB_SYM BODY_MARIADB_SYM CODE_SYM sp_name */
+#line 14011 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_SHOW_PACKAGE_BODY_CODE;
+ Lex->spname= (yyvsp[0].spname);
+ }
+#line 46840 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2252: /* show_param: PACKAGE_ORACLE_SYM BODY_ORACLE_SYM CODE_SYM sp_name */
+#line 14016 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_SHOW_PACKAGE_BODY_CODE;
+ Lex->spname= (yyvsp[0].spname);
+ }
+#line 46849 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2253: /* show_param: CREATE EVENT_SYM sp_name */
+#line 14021 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->spname= (yyvsp[0].spname);
+ Lex->sql_command = SQLCOM_SHOW_CREATE_EVENT;
+ }
+#line 46858 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2254: /* show_param: describe_command opt_format_json FOR_SYM expr */
+#line 14030 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_SHOW_EXPLAIN;
+ if (unlikely(prepare_schema_table(thd, Lex, 0,
+ Lex->explain_json ? SCH_EXPLAIN_JSON : SCH_EXPLAIN_TABULAR)))
+ MYSQL_YYABORT;
+ add_value_to_list(thd, (yyvsp[0].item));
+ }
+#line 46870 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2255: /* show_param: ANALYZE_SYM opt_format_json FOR_SYM expr */
+#line 14038 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_SHOW_ANALYZE;
+ if (unlikely(prepare_schema_table(thd, Lex, 0,
+ Lex->explain_json ? SCH_ANALYZE_JSON : SCH_ANALYZE_TABULAR)))
+ MYSQL_YYABORT;
+ add_value_to_list(thd, (yyvsp[0].item));
+ }
+#line 46882 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2256: /* show_param: IDENT_sys remember_tok_start wild_and_where */
+#line 14046 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ bool in_plugin;
+ lex->sql_command= SQLCOM_SHOW_GENERIC;
+ ST_SCHEMA_TABLE *table= find_schema_table(thd, &(yyvsp[-2].ident_sys), &in_plugin);
+ if (unlikely(!table || !table->old_format || !in_plugin))
+ {
+ thd->parse_error(ER_SYNTAX_ERROR, (yyvsp[-1].simple_string));
+ MYSQL_YYABORT;
+ }
+ if (unlikely(lex->wild && table->idx_field1 < 0))
+ {
+ thd->parse_error(ER_SYNTAX_ERROR, (yyvsp[0].simple_string));
+ MYSQL_YYABORT;
+ }
+ if (unlikely(make_schema_select(thd, Lex->current_select, table)))
+ MYSQL_YYABORT;
+ }
+#line 46905 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2257: /* show_engine_param: STATUS_SYM */
+#line 14068 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sql_command= SQLCOM_SHOW_ENGINE_STATUS; }
+#line 46911 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2258: /* show_engine_param: MUTEX_SYM */
+#line 14070 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sql_command= SQLCOM_SHOW_ENGINE_MUTEX; }
+#line 46917 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2259: /* show_engine_param: LOGS_SYM */
+#line 14072 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sql_command= SQLCOM_SHOW_ENGINE_LOGS; }
+#line 46923 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2264: /* opt_db: %empty */
+#line 14086 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= null_clex_str; }
+#line 46929 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2265: /* opt_db: from_or_in ident */
+#line 14087 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= (yyvsp[0].ident_sys); }
+#line 46935 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2266: /* opt_full: %empty */
+#line 14091 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->verbose=0; }
+#line 46941 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2267: /* opt_full: FULL */
+#line 14092 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->verbose=1; }
+#line 46947 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2270: /* binlog_in: %empty */
+#line 14101 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->mi.log_file_name = 0; }
+#line 46953 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2271: /* binlog_in: IN_SYM TEXT_STRING_sys */
+#line 14102 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->mi.log_file_name = (yyvsp[0].lex_str).str; }
+#line 46959 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2272: /* binlog_from: %empty */
+#line 14106 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->mi.pos = 4; /* skip magic number */ }
+#line 46965 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2273: /* binlog_from: FROM ulonglong_num */
+#line 14107 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->mi.pos = (yyvsp[0].ulonglong_number); }
+#line 46971 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2274: /* wild_and_where: %empty */
+#line 14111 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.simple_string)= 0; }
+#line 46977 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2275: /* wild_and_where: LIKE remember_tok_start TEXT_STRING_sys */
+#line 14113 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->wild= new (thd->mem_root) String((const char*) (yyvsp[0].lex_str).str,
+ (yyvsp[0].lex_str).length,
+ system_charset_info);
+ if (unlikely(Lex->wild == NULL))
+ MYSQL_YYABORT;
+ (yyval.simple_string)= (yyvsp[-1].simple_string);
+ }
+#line 46990 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2276: /* wild_and_where: WHERE remember_tok_start expr */
+#line 14122 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->where= normalize_cond(thd, (yyvsp[0].item));
+ if ((yyvsp[0].item))
+ (yyvsp[0].item)->top_level_item();
+ (yyval.simple_string)= (yyvsp[-1].simple_string);
+ }
+#line 47001 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2277: /* $@202: %empty */
+#line 14133 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (lex->main_select_push())
+ MYSQL_YYABORT;
+ lex->init_select();
+ lex->current_select->parsing_place= SELECT_LIST;
+ lex->sql_command= SQLCOM_SHOW_FIELDS;
+ lex->first_select_lex()->db= null_clex_str;
+ lex->verbose= 0;
+ if (unlikely(prepare_schema_table(thd, lex, (yyvsp[0].table), SCH_COLUMNS)))
+ MYSQL_YYABORT;
+ }
+#line 47018 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2278: /* describe: describe_command table_ident $@202 opt_describe_column */
+#line 14146 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Select->parsing_place= NO_MATTER;
+ Lex->pop_select(); //main select
+ }
+#line 47027 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2279: /* $@203: %empty */
+#line 14151 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->describe|= DESCRIBE_NORMAL; }
+#line 47033 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2280: /* describe: describe_command opt_extended_describe $@203 explainable_command */
+#line 14153 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->first_select_lex()->options|= SELECT_DESCRIBE;
+ }
+#line 47042 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2289: /* analyze_stmt_command: ANALYZE_SYM opt_format_json explainable_command */
+#line 14175 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->analyze_stmt= true;
+ }
+#line 47050 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2290: /* opt_extended_describe: EXTENDED_SYM */
+#line 14181 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->describe|= DESCRIBE_EXTENDED; }
+#line 47056 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2291: /* opt_extended_describe: EXTENDED_SYM ALL */
+#line 14183 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->describe|= DESCRIBE_EXTENDED | DESCRIBE_EXTENDED2; }
+#line 47062 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2292: /* opt_extended_describe: PARTITIONS_SYM */
+#line 14184 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->describe|= DESCRIBE_PARTITIONS; }
+#line 47068 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2293: /* opt_extended_describe: opt_format_json */
+#line 14185 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47074 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2294: /* opt_format_json: %empty */
+#line 14189 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47080 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2295: /* opt_format_json: FORMAT_SYM '=' ident_or_text */
+#line 14191 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (lex_string_eq(&(yyvsp[0].lex_str), STRING_WITH_LEN("JSON")))
+ Lex->explain_json= true;
+ else if (lex_string_eq(&(yyvsp[0].lex_str), STRING_WITH_LEN("TRADITIONAL")))
+ DBUG_ASSERT(Lex->explain_json==false);
+ else
+ my_yyabort_error((ER_UNKNOWN_EXPLAIN_FORMAT, MYF(0),
+ "EXPLAIN/ANALYZE", (yyvsp[0].lex_str).str));
+ }
+#line 47094 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2296: /* opt_describe_column: %empty */
+#line 14203 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47100 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2297: /* opt_describe_column: text_string */
+#line 14204 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->wild= (yyvsp[0].string); }
+#line 47106 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2298: /* opt_describe_column: ident */
+#line 14206 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->wild= new (thd->mem_root) String((const char*) (yyvsp[0].ident_sys).str,
+ (yyvsp[0].ident_sys).length,
+ system_charset_info);
+ if (unlikely(Lex->wild == NULL))
+ MYSQL_YYABORT;
+ }
+#line 47118 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2299: /* explain_for_connection: describe_command opt_format_json FOR_SYM CONNECTION_SYM expr */
+#line 14222 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->wild=0;
+ lex->ident= null_clex_str;
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ lex->init_select();
+ lex->current_select->parsing_place= SELECT_LIST;
+ lex->create_info.init();
+ Select->parsing_place= NO_MATTER;
+ Lex->pop_select(); //main select
+ Lex->sql_command= SQLCOM_SHOW_EXPLAIN;
+ if (unlikely(prepare_schema_table(thd, Lex, 0,
+ Lex->explain_json ? SCH_EXPLAIN_JSON : SCH_EXPLAIN_TABULAR)))
+ MYSQL_YYABORT;
+ add_value_to_list(thd, (yyvsp[0].item));
+ }
+#line 47140 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2300: /* $@204: %empty */
+#line 14245 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_FLUSH;
+ lex->type= 0;
+ lex->no_write_to_binlog= (yyvsp[0].num);
+ }
+#line 47151 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2301: /* flush: FLUSH_SYM opt_no_write_to_binlog $@204 flush_options */
+#line 14251 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47157 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2302: /* $@205: %empty */
+#line 14256 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->type|= REFRESH_TABLES;
+ /*
+ Set type of metadata and table locks for
+ FLUSH TABLES table_list [WITH READ LOCK].
+ */
+ YYPS->m_lock_type= TL_READ_NO_INSERT;
+ YYPS->m_mdl_type= MDL_SHARED_HIGH_PRIO;
+ }
+#line 47171 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2303: /* flush_options: table_or_tables $@205 opt_table_list opt_flush_lock */
+#line 14266 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47177 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2304: /* flush_options: flush_options_list */
+#line 14268 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47183 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2305: /* opt_flush_lock: %empty */
+#line 14272 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47189 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2306: /* opt_flush_lock: flush_lock */
+#line 14274 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ TABLE_LIST *tables= Lex->query_tables;
+ for (; tables; tables= tables->next_global)
+ {
+ tables->mdl_request.set_type(MDL_SHARED_NO_WRITE);
+ /* Ignore temporary tables. */
+ tables->open_type= OT_BASE_ONLY;
+ }
+ }
+#line 47203 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2307: /* flush_lock: WITH READ_SYM LOCK_SYM optional_flush_tables_arguments */
+#line 14287 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_READ_LOCK | (yyvsp[0].num); }
+#line 47209 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2308: /* $@206: %empty */
+#line 14289 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->query_tables == NULL))
+ {
+ // Table list can't be empty
+ thd->parse_error(ER_NO_TABLES_USED);
+ MYSQL_YYABORT;
+ }
+ Lex->type|= REFRESH_FOR_EXPORT;
+ }
+#line 47223 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2309: /* flush_lock: FOR_SYM $@206 EXPORT_SYM */
+#line 14297 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47229 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2311: /* flush_options_list: flush_option */
+#line 14303 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47235 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2312: /* flush_option: ERROR_SYM LOGS_SYM */
+#line 14308 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_ERROR_LOG; }
+#line 47241 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2313: /* flush_option: ENGINE_SYM LOGS_SYM */
+#line 14310 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_ENGINE_LOG; }
+#line 47247 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2314: /* flush_option: GENERAL LOGS_SYM */
+#line 14312 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_GENERAL_LOG; }
+#line 47253 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2315: /* flush_option: SLOW LOGS_SYM */
+#line 14314 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_SLOW_LOG; }
+#line 47259 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2316: /* flush_option: BINARY LOGS_SYM opt_delete_gtid_domain */
+#line 14316 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_BINARY_LOG; }
+#line 47265 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2317: /* flush_option: RELAY LOGS_SYM optional_connection_name optional_for_channel */
+#line 14318 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(lex->type & REFRESH_RELAY_LOG))
+ my_yyabort_error((ER_WRONG_USAGE, MYF(0), "FLUSH", "RELAY LOGS"));
+ lex->type|= REFRESH_RELAY_LOG;
+ lex->relay_log_connection_name= lex->mi.connection_name;
+ }
+#line 47277 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2318: /* flush_option: QUERY_SYM CACHE_SYM */
+#line 14326 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_QUERY_CACHE_FREE; }
+#line 47283 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2319: /* flush_option: HOSTS_SYM */
+#line 14328 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_HOSTS; }
+#line 47289 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2320: /* flush_option: PRIVILEGES */
+#line 14330 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_GRANT; }
+#line 47295 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2321: /* flush_option: LOGS_SYM */
+#line 14332 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->type|= REFRESH_LOG;
+ Lex->relay_log_connection_name= empty_clex_str;
+ }
+#line 47304 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2322: /* flush_option: STATUS_SYM */
+#line 14337 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_STATUS; }
+#line 47310 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2323: /* flush_option: SLAVE optional_connection_name */
+#line 14339 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(lex->type & REFRESH_SLAVE))
+ my_yyabort_error((ER_WRONG_USAGE, MYF(0), "FLUSH","SLAVE"));
+ lex->type|= REFRESH_SLAVE;
+ lex->reset_slave_info.all= false;
+ }
+#line 47322 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2324: /* flush_option: MASTER_SYM */
+#line 14347 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_MASTER; }
+#line 47328 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2325: /* flush_option: DES_KEY_FILE */
+#line 14349 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_DES_KEY_FILE; }
+#line 47334 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2326: /* flush_option: RESOURCES */
+#line 14351 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_USER_RESOURCES; }
+#line 47340 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2327: /* flush_option: SSL_SYM */
+#line 14353 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_SSL;}
+#line 47346 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2328: /* flush_option: THREADS_SYM */
+#line 14355 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_THREADS;}
+#line 47352 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2329: /* flush_option: IDENT_sys remember_tok_start */
+#line 14357 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->type|= REFRESH_GENERIC;
+ ST_SCHEMA_TABLE *table= find_schema_table(thd, &(yyvsp[-1].ident_sys));
+ if (unlikely(!table || !table->reset_table))
+ {
+ thd->parse_error(ER_SYNTAX_ERROR, (yyvsp[0].simple_string));
+ MYSQL_YYABORT;
+ }
+ if (unlikely(Lex->view_list.push_back((LEX_CSTRING*)
+ thd->memdup(&(yyvsp[-1].ident_sys), sizeof(LEX_CSTRING)),
+ thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 47370 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2330: /* opt_table_list: %empty */
+#line 14373 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47376 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2331: /* opt_table_list: table_list */
+#line 14374 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47382 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2332: /* backup: BACKUP_SYM backup_statements */
+#line 14378 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47388 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2333: /* backup_statements: STAGE_SYM ident */
+#line 14383 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ int type;
+ if (unlikely(Lex->sphead))
+ my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "BACKUP STAGE"));
+ if ((type= find_type((yyvsp[0].ident_sys).str, &backup_stage_names,
+ FIND_TYPE_NO_PREFIX)) <= 0)
+ my_yyabort_error((ER_BACKUP_UNKNOWN_STAGE, MYF(0), (yyvsp[0].ident_sys).str));
+ Lex->sql_command= SQLCOM_BACKUP;
+ Lex->backup_stage= (backup_stages) (type-1);
+ break;
+ }
+#line 47404 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2334: /* $@207: %empty */
+#line 14395 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sphead))
+ my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "BACKUP LOCK"));
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ }
+#line 47415 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2335: /* backup_statements: LOCK_SYM $@207 table_ident */
+#line 14402 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!Select->add_table_to_list(thd, (yyvsp[0].table), NULL, 0,
+ TL_READ, MDL_SHARED_HIGH_PRIO)))
+ MYSQL_YYABORT;
+ Lex->sql_command= SQLCOM_BACKUP_LOCK;
+ Lex->pop_select(); //main select
+ }
+#line 47427 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2336: /* backup_statements: UNLOCK_SYM */
+#line 14410 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sphead))
+ my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "BACKUP UNLOCK"));
+ /* Table list is empty for unlock */
+ Lex->sql_command= SQLCOM_BACKUP_LOCK;
+ }
+#line 47438 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2337: /* opt_delete_gtid_domain: %empty */
+#line 14419 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47444 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2338: /* opt_delete_gtid_domain: DELETE_DOMAIN_ID_SYM '=' '(' delete_domain_id_list ')' */
+#line 14421 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47450 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2342: /* delete_domain_id: ulonglong_num */
+#line 14431 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ uint32 value= (uint32) (yyvsp[0].ulonglong_number);
+ if ((yyvsp[0].ulonglong_number) > UINT_MAX32)
+ {
+ my_printf_error(ER_BINLOG_CANT_DELETE_GTID_DOMAIN,
+ "The value of gtid domain being deleted ('%llu') "
+ "exceeds its maximum size "
+ "of 32 bit unsigned integer", MYF(0), (yyvsp[0].ulonglong_number));
+ MYSQL_YYABORT;
+ }
+ insert_dynamic(&Lex->delete_gtid_domain, (uchar*) &value);
+ }
+#line 47467 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2343: /* optional_flush_tables_arguments: %empty */
+#line 14446 "/home/buildbot/git/sql/sql_yacc.yy"
+ {(yyval.num)= 0;}
+#line 47473 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2344: /* optional_flush_tables_arguments: AND_SYM DISABLE_SYM CHECKPOINT_SYM */
+#line 14447 "/home/buildbot/git/sql/sql_yacc.yy"
+ {(yyval.num)= REFRESH_CHECKPOINT; }
+#line 47479 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2345: /* $@208: %empty */
+#line 14452 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_RESET; lex->type=0;
+ }
+#line 47488 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2346: /* reset: RESET_SYM $@208 reset_options */
+#line 14457 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47494 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2349: /* $@209: %empty */
+#line 14466 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_SLAVE; }
+#line 47500 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2350: /* reset_option: SLAVE $@209 optional_connection_name slave_reset_options optional_for_channel */
+#line 14469 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 47506 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2351: /* $@210: %empty */
+#line 14471 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->type|= REFRESH_MASTER;
+ Lex->next_binlog_file_number= 0;
+ }
+#line 47515 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2353: /* reset_option: QUERY_SYM CACHE_SYM */
+#line 14476 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->type|= REFRESH_QUERY_CACHE;}
+#line 47521 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2354: /* slave_reset_options: %empty */
+#line 14480 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->reset_slave_info.all= false; }
+#line 47527 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2355: /* slave_reset_options: ALL */
+#line 14481 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->reset_slave_info.all= true; }
+#line 47533 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2356: /* master_reset_options: %empty */
+#line 14485 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47539 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2357: /* master_reset_options: TO_SYM ulong_num */
+#line 14487 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->next_binlog_file_number = (yyvsp[0].ulong_num);
+ }
+#line 47547 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2358: /* purge: PURGE master_or_binary LOGS_SYM TO_SYM TEXT_STRING_sys */
+#line 14494 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->stmt_purge_to((yyvsp[0].lex_str));
+ }
+#line 47555 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2359: /* $@211: %empty */
+#line 14498 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->clause_that_disallows_subselect= "PURGE..BEFORE"; }
+#line 47561 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2360: /* purge: PURGE master_or_binary LOGS_SYM BEFORE_SYM $@211 expr */
+#line 14500 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->clause_that_disallows_subselect= NULL;
+ if (Lex->stmt_purge_before((yyvsp[0].item)))
+ MYSQL_YYABORT;
+ }
+#line 47571 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2361: /* $@212: %empty */
+#line 14512 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->value_list.empty();
+ lex->users_list.empty();
+ lex->sql_command= SQLCOM_KILL;
+ lex->kill_type= KILL_TYPE_ID;
+ }
+#line 47583 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2362: /* kill: KILL_SYM $@212 kill_type kill_option */
+#line 14520 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->kill_signal= (killed_state) ((yyvsp[-1].num) | (yyvsp[0].num));
+ }
+#line 47591 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2363: /* kill_type: %empty */
+#line 14526 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= (int) KILL_HARD_BIT; }
+#line 47597 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2364: /* kill_type: HARD_SYM */
+#line 14527 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= (int) KILL_HARD_BIT; }
+#line 47603 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2365: /* kill_type: SOFT_SYM */
+#line 14528 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 47609 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2366: /* kill_option: opt_connection kill_expr */
+#line 14532 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= (int) KILL_CONNECTION; }
+#line 47615 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2367: /* kill_option: QUERY_SYM kill_expr */
+#line 14533 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= (int) KILL_QUERY; }
+#line 47621 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2368: /* kill_option: QUERY_SYM ID_SYM expr */
+#line 14535 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= (int) KILL_QUERY;
+ Lex->kill_type= KILL_TYPE_QUERY;
+ Lex->value_list.push_front((yyvsp[0].item), thd->mem_root);
+ }
+#line 47631 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2369: /* opt_connection: %empty */
+#line 14543 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 47637 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2370: /* opt_connection: CONNECTION_SYM */
+#line 14544 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 47643 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2371: /* kill_expr: expr */
+#line 14549 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->value_list.push_front((yyval.item), thd->mem_root);
+ }
+#line 47651 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2372: /* kill_expr: USER_SYM user */
+#line 14553 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root);
+ Lex->kill_type= KILL_TYPE_USER;
+ }
+#line 47660 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2373: /* $@213: %empty */
+#line 14560 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->sql_command= SQLCOM_SHUTDOWN; }
+#line 47666 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2374: /* shutdown: SHUTDOWN $@213 shutdown_option */
+#line 14561 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47672 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2375: /* shutdown_option: %empty */
+#line 14565 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->is_shutdown_wait_for_slaves= false; }
+#line 47678 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2376: /* shutdown_option: WAIT_SYM FOR_SYM ALL SLAVES */
+#line 14567 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->is_shutdown_wait_for_slaves= true;
+ }
+#line 47686 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2377: /* use: USE_SYM ident */
+#line 14576 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command=SQLCOM_CHANGE_DB;
+ lex->first_select_lex()->db= (yyvsp[0].ident_sys);
+ }
+#line 47696 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2378: /* $@214: %empty */
+#line 14587 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+
+ if (unlikely(lex->sphead))
+ {
+ my_error(ER_SP_BADSTATEMENT, MYF(0),
+ (yyvsp[0].filetype) == FILETYPE_CSV ? "LOAD DATA" : "LOAD XML");
+ MYSQL_YYABORT;
+ }
+ if (lex->main_select_push())
+ MYSQL_YYABORT;
+ lex->init_select();
+ }
+#line 47714 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2379: /* $@215: %empty */
+#line 14601 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_LOAD;
+ lex->local_file= (yyvsp[-2].num);
+ lex->duplicates= DUP_ERROR;
+ lex->ignore= 0;
+ if (unlikely(!(lex->exchange= new (thd->mem_root)
+ sql_exchange((yyvsp[0].lex_str).str, 0, (yyvsp[-5].filetype)))))
+ MYSQL_YYABORT;
+ }
+#line 47729 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2380: /* $@216: %empty */
+#line 14612 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ if (unlikely(!Select->add_table_to_list(thd, (yyvsp[-1].table), NULL,
+ TL_OPTION_UPDATING,
+ (yyvsp[-9].lock_type), MDL_SHARED_WRITE,
+ NULL, (yyvsp[0].string_list))))
+ MYSQL_YYABORT;
+ lex->field_list.empty();
+ lex->update_list.empty();
+ lex->value_list.empty();
+ lex->many_values.empty();
+ }
+#line 47746 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2381: /* $@217: %empty */
+#line 14625 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->exchange->cs= (yyvsp[0].charset); }
+#line 47752 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2382: /* load: LOAD data_or_xml $@214 load_data_lock opt_local INFILE TEXT_STRING_filesystem $@215 opt_duplicate INTO TABLE_SYM table_ident opt_use_partition $@216 opt_load_data_charset $@217 opt_xml_rows_identified_by opt_field_term opt_line_term opt_ignore_lines opt_field_or_var_spec opt_load_data_set_spec stmt_end */
+#line 14630 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->mark_first_table_as_inserting();
+ }
+#line 47760 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2383: /* data_or_xml: DATA_SYM */
+#line 14636 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.filetype)= FILETYPE_CSV; }
+#line 47766 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2384: /* data_or_xml: XML_SYM */
+#line 14637 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.filetype)= FILETYPE_XML; }
+#line 47772 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2385: /* opt_local: %empty */
+#line 14641 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)=0;}
+#line 47778 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2386: /* opt_local: LOCAL_SYM */
+#line 14642 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)=1;}
+#line 47784 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2387: /* load_data_lock: %empty */
+#line 14646 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lock_type)= TL_WRITE_DEFAULT; }
+#line 47790 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2388: /* load_data_lock: CONCURRENT */
+#line 14648 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ Ignore this option in SP to avoid problem with query cache and
+ triggers with non default priority locks
+ */
+ (yyval.lock_type)= (Lex->sphead ? TL_WRITE_DEFAULT : TL_WRITE_CONCURRENT_INSERT);
+ }
+#line 47802 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2389: /* load_data_lock: LOW_PRIORITY */
+#line 14655 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; }
+#line 47808 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2390: /* opt_duplicate: %empty */
+#line 14659 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->duplicates=DUP_ERROR; }
+#line 47814 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2391: /* opt_duplicate: REPLACE */
+#line 14660 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->duplicates=DUP_REPLACE; }
+#line 47820 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2392: /* opt_duplicate: IGNORE_SYM */
+#line 14661 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ignore= 1; }
+#line 47826 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2397: /* field_term: TERMINATED BY text_string */
+#line 14676 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(Lex->exchange != 0);
+ Lex->exchange->field_term= (yyvsp[0].string);
+ }
+#line 47835 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2398: /* field_term: OPTIONALLY ENCLOSED BY text_string */
+#line 14681 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ DBUG_ASSERT(lex->exchange != 0);
+ lex->exchange->enclosed= (yyvsp[0].string);
+ lex->exchange->opt_enclosed= 1;
+ }
+#line 47846 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2399: /* field_term: ENCLOSED BY text_string */
+#line 14688 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(Lex->exchange != 0);
+ Lex->exchange->enclosed= (yyvsp[0].string);
+ }
+#line 47855 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2400: /* field_term: ESCAPED BY text_string */
+#line 14693 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(Lex->exchange != 0);
+ Lex->exchange->escaped= (yyvsp[0].string);
+ }
+#line 47864 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2405: /* line_term: TERMINATED BY text_string */
+#line 14711 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(Lex->exchange != 0);
+ Lex->exchange->line_term= (yyvsp[0].string);
+ }
+#line 47873 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2406: /* line_term: STARTING BY text_string */
+#line 14716 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(Lex->exchange != 0);
+ Lex->exchange->line_start= (yyvsp[0].string);
+ }
+#line 47882 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2407: /* opt_xml_rows_identified_by: %empty */
+#line 14723 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 47888 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2408: /* opt_xml_rows_identified_by: ROWS_SYM IDENTIFIED_SYM BY text_string */
+#line 14725 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->exchange->line_term = (yyvsp[0].string); }
+#line 47894 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2410: /* opt_ignore_lines: IGNORE_SYM NUM lines_or_rows */
+#line 14731 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ DBUG_ASSERT(Lex->exchange != 0);
+ Lex->exchange->skip_lines= atol((yyvsp[-1].lex_str).str);
+ }
+#line 47903 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2411: /* lines_or_rows: LINES */
+#line 14738 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 47909 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2412: /* lines_or_rows: ROWS_SYM */
+#line 14739 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 47915 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2413: /* opt_field_or_var_spec: %empty */
+#line 14743 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47921 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2414: /* opt_field_or_var_spec: '(' fields_or_vars ')' */
+#line 14744 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47927 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2415: /* opt_field_or_var_spec: '(' ')' */
+#line 14745 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47933 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2416: /* fields_or_vars: fields_or_vars ',' field_or_var */
+#line 14750 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
+#line 47939 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2417: /* fields_or_vars: field_or_var */
+#line 14752 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->field_list.push_back((yyvsp[0].item), thd->mem_root); }
+#line 47945 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2418: /* field_or_var: simple_ident_nospvar */
+#line 14756 "/home/buildbot/git/sql/sql_yacc.yy"
+ {(yyval.item)= (yyvsp[0].item);}
+#line 47951 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2419: /* field_or_var: '@' ident_or_text */
+#line 14758 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!(yyvsp[0].lex_str).length)
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+
+ (yyval.item)= new (thd->mem_root) Item_user_var_as_out_param(thd, &(yyvsp[0].lex_str));
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 47967 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2420: /* opt_load_data_set_spec: %empty */
+#line 14772 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47973 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2421: /* opt_load_data_set_spec: SET load_data_set_list */
+#line 14773 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 47979 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2424: /* load_data_set_elem: simple_ident_nospvar equal remember_name expr_or_ignore_or_default remember_end */
+#line 14783 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(lex->update_list.push_back((yyvsp[-4].item), thd->mem_root)) ||
+ unlikely(lex->value_list.push_back((yyvsp[-1].item), thd->mem_root)))
+ MYSQL_YYABORT;
+ (yyvsp[-1].item)->set_name_no_truncate(thd, (yyvsp[-2].simple_string), (uint) ((yyvsp[0].simple_string) - (yyvsp[-2].simple_string)), thd->charset());
+ }
+#line 47991 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2425: /* text_literal: TEXT_STRING */
+#line 14796 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item_basic_constant)= thd->make_string_literal((yyvsp[0].lex_string_with_metadata)))))
+ MYSQL_YYABORT;
+ }
+#line 48000 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2426: /* text_literal: NCHAR_STRING */
+#line 14801 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item_basic_constant)= thd->make_string_literal_nchar((yyvsp[0].lex_string_with_metadata)))))
+ MYSQL_YYABORT;
+ }
+#line 48009 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2427: /* text_literal: UNDERSCORE_CHARSET TEXT_STRING */
+#line 14806 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item_basic_constant)= thd->make_string_literal_charset((yyvsp[0].lex_string_with_metadata), (yyvsp[-1].charset)))))
+ MYSQL_YYABORT;
+ }
+#line 48018 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2428: /* text_literal: text_literal TEXT_STRING_literal */
+#line 14811 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item_basic_constant)= (yyvsp[-1].item_basic_constant)->make_string_literal_concat(thd, &(yyvsp[0].lex_str)))))
+ MYSQL_YYABORT;
+ }
+#line 48027 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2429: /* text_string: TEXT_STRING_literal */
+#line 14819 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.string)= new (thd->mem_root) String((const char*) (yyvsp[0].lex_str).str,
+ (yyvsp[0].lex_str).length,
+ thd->variables.collation_connection);
+ if (unlikely((yyval.string) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48039 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2430: /* text_string: hex_or_bin_String */
+#line 14826 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.string)= (yyvsp[0].string); }
+#line 48045 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2431: /* hex_or_bin_String: HEX_NUM */
+#line 14832 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *tmp= new (thd->mem_root) Item_hex_hybrid(thd, (yyvsp[0].lex_str).str,
+ (yyvsp[0].lex_str).length);
+ if (unlikely(tmp == NULL))
+ MYSQL_YYABORT;
+ (yyval.string)= tmp->val_str((String*) 0);
+ }
+#line 48057 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2432: /* hex_or_bin_String: HEX_STRING */
+#line 14840 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *tmp= new (thd->mem_root) Item_hex_string(thd, (yyvsp[0].lex_str).str,
+ (yyvsp[0].lex_str).length);
+ if (unlikely(tmp == NULL))
+ MYSQL_YYABORT;
+ (yyval.string)= tmp->val_str((String*) 0);
+ }
+#line 48069 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2433: /* hex_or_bin_String: BIN_NUM */
+#line 14848 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item *tmp= new (thd->mem_root) Item_bin_string(thd, (yyvsp[0].lex_str).str,
+ (yyvsp[0].lex_str).length);
+ if (unlikely(tmp == NULL))
+ MYSQL_YYABORT;
+ /*
+ it is OK only emulate fix_fields, because we need only
+ value of constant
+ */
+ (yyval.string)= tmp->val_str((String*) 0);
+ }
+#line 48085 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2434: /* param_marker: PARAM_MARKER */
+#line 14863 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item_param)= Lex->add_placeholder(thd, &param_clex_str,
+ YYLIP->get_tok_start(),
+ YYLIP->get_tok_start() + 1))))
+ MYSQL_YYABORT;
+ }
+#line 48096 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2435: /* param_marker: COLON_ORACLE_SYM ident_cli */
+#line 14870 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item_param)= Lex->add_placeholder(thd, &null_clex_str,
+ (yyvsp[-1].kwd).pos(), (yyvsp[0].ident_cli).end()))))
+ MYSQL_YYABORT;
+ }
+#line 48106 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2436: /* param_marker: COLON_ORACLE_SYM NUM */
+#line 14876 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item_param)= Lex->add_placeholder(thd, &null_clex_str,
+ (yyvsp[-1].kwd).pos(),
+ YYLIP->get_ptr()))))
+ MYSQL_YYABORT;
+ }
+#line 48117 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2437: /* signed_literal: '+' NUM_literal */
+#line 14885 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item) = (yyvsp[0].item_num); }
+#line 48123 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2438: /* signed_literal: '-' NUM_literal */
+#line 14887 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[0].item_num)->max_length++;
+ (yyval.item)= (yyvsp[0].item_num)->neg(thd);
+ }
+#line 48132 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2439: /* literal: text_literal */
+#line 14894 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item) = (yyvsp[0].item_basic_constant); }
+#line 48138 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2440: /* literal: NUM_literal */
+#line 14895 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item) = (yyvsp[0].item_num); }
+#line 48144 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2441: /* literal: temporal_literal */
+#line 14896 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)= (yyvsp[0].item); }
+#line 48150 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2442: /* literal: NULL_SYM */
+#line 14898 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ For the digest computation, in this context only,
+ NULL is considered a literal, hence reduced to '?'
+ REDUCE:
+ TOK_GENERIC_VALUE := NULL_SYM
+ */
+ YYLIP->reduce_digest_token(TOK_GENERIC_VALUE, NULL_SYM);
+ (yyval.item)= new (thd->mem_root) Item_null(thd);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ YYLIP->next_state= MY_LEX_OPERATOR_OR_IDENT;
+ }
+#line 48168 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2443: /* literal: FALSE_SYM */
+#line 14912 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_bool(thd, (char*) "FALSE",0);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48178 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2444: /* literal: TRUE_SYM */
+#line 14918 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_bool(thd, (char*) "TRUE",1);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48188 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2445: /* literal: HEX_NUM */
+#line 14924 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_hex_hybrid(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48198 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2446: /* literal: HEX_STRING */
+#line 14930 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_hex_string(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48208 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2447: /* literal: BIN_NUM */
+#line 14936 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)= new (thd->mem_root) Item_bin_string(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48218 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2448: /* literal: UNDERSCORE_CHARSET hex_or_bin_String */
+#line 14942 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Item_string_with_introducer *item_str;
+ LEX_CSTRING tmp;
+ (yyvsp[0].string)->get_value(&tmp);
+ /*
+ Pass NULL as name. Name will be set in the "select_item" rule and
+ will include the introducer and the original hex/bin notation.
+ */
+ item_str= new (thd->mem_root)
+ Item_string_with_introducer(thd, null_clex_str,
+ tmp, (yyvsp[-1].charset));
+ if (unlikely(!item_str ||
+ !item_str->check_well_formed_result(true)))
+ MYSQL_YYABORT;
+
+ (yyval.item)= item_str;
+ }
+#line 48240 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2449: /* NUM_literal: NUM */
+#line 14963 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ int error;
+ (yyval.item_num)= new (thd->mem_root)
+ Item_int(thd, (yyvsp[0].lex_str).str,
+ (longlong) my_strtoll10((yyvsp[0].lex_str).str, NULL, &error),
+ (yyvsp[0].lex_str).length);
+ if (unlikely((yyval.item_num) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48254 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2450: /* NUM_literal: LONG_NUM */
+#line 14973 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ int error;
+ (yyval.item_num)= new (thd->mem_root)
+ Item_int(thd, (yyvsp[0].lex_str).str,
+ (longlong) my_strtoll10((yyvsp[0].lex_str).str, NULL, &error),
+ (yyvsp[0].lex_str).length);
+ if (unlikely((yyval.item_num) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48268 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2451: /* NUM_literal: ULONGLONG_NUM */
+#line 14983 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item_num)= new (thd->mem_root) Item_uint(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
+ if (unlikely((yyval.item_num) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48278 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2452: /* NUM_literal: DECIMAL_NUM */
+#line 14989 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item_num)= new (thd->mem_root) Item_decimal(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length,
+ thd->charset());
+ if (unlikely((yyval.item_num) == NULL) || unlikely(thd->is_error()))
+ MYSQL_YYABORT;
+ }
+#line 48289 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2453: /* NUM_literal: FLOAT_NUM */
+#line 14996 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item_num)= new (thd->mem_root) Item_float(thd, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
+ if (unlikely((yyval.item_num) == NULL) || unlikely(thd->is_error()))
+ MYSQL_YYABORT;
+ }
+#line 48299 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2454: /* temporal_literal: DATE_SYM TEXT_STRING */
+#line 15006 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= type_handler_newdate.create_literal_item(thd,
+ (yyvsp[0].lex_string_with_metadata).str, (yyvsp[0].lex_string_with_metadata).length,
+ YYCSCL, true))))
+ MYSQL_YYABORT;
+ }
+#line 48310 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2455: /* temporal_literal: TIME_SYM TEXT_STRING */
+#line 15013 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= type_handler_time2.create_literal_item(thd,
+ (yyvsp[0].lex_string_with_metadata).str, (yyvsp[0].lex_string_with_metadata).length,
+ YYCSCL, true))))
+ MYSQL_YYABORT;
+ }
+#line 48321 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2456: /* temporal_literal: TIMESTAMP TEXT_STRING */
+#line 15020 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= type_handler_datetime.create_literal_item(thd,
+ (yyvsp[0].lex_string_with_metadata).str, (yyvsp[0].lex_string_with_metadata).length,
+ YYCSCL, true))))
+ MYSQL_YYABORT;
+ }
+#line 48332 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2457: /* $@218: %empty */
+#line 15030 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ With_clause *with_clause=
+ new With_clause((yyvsp[0].num), Lex->curr_with_clause);
+ if (unlikely(with_clause == NULL))
+ MYSQL_YYABORT;
+ lex->derived_tables|= DERIVED_WITH;
+ lex->with_cte_resolution= true;
+ lex->curr_with_clause= with_clause;
+ with_clause->add_to_list(&lex->with_clauses_list,
+ lex->with_clauses_list_last_next);
+ if (lex->current_select &&
+ lex->current_select->parsing_place == BEFORE_OPT_LIST)
+ lex->current_select->parsing_place= NO_MATTER;
+ }
+#line 48352 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2458: /* with_clause: WITH opt_recursive $@218 with_list */
+#line 15046 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.with_clause)= Lex->curr_with_clause;
+ Lex->curr_with_clause= Lex->curr_with_clause->pop();
+ }
+#line 48361 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2459: /* opt_recursive: %empty */
+#line 15054 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 48367 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2460: /* opt_recursive: RECURSIVE_SYM */
+#line 15055 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 48373 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2463: /* with_list_element: with_element_head opt_with_column_list AS '(' query_expression ')' opt_cycle */
+#line 15069 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ const char *query_start= lex->sphead ? lex->sphead->m_tmp_query
+ : thd->query();
+ const char *spec_start= (yyvsp[-3].kwd).pos() + 1;
+ With_element *elem= new With_element((yyvsp[-6].with_element_head), *(yyvsp[-5].ident_sys_list), (yyvsp[-2].select_lex_unit));
+ if (elem == NULL || Lex->curr_with_clause->add_with_element(elem))
+ MYSQL_YYABORT;
+ if (elem->set_unparsed_spec(thd, spec_start, (yyvsp[-1].kwd).pos(),
+ spec_start - query_start))
+ MYSQL_YYABORT;
+ if ((yyvsp[0].ident_sys_list))
+ {
+ elem->set_cycle_list((yyvsp[0].ident_sys_list));
+ }
+ elem->set_tables_end_pos(lex->query_tables_last);
+ }
+#line 48395 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2464: /* opt_cycle: %empty */
+#line 15090 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ident_sys_list)= NULL; }
+#line 48401 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2465: /* $@219: %empty */
+#line 15093 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!Lex->curr_with_clause->with_recursive)
+ {
+ thd->parse_error(ER_SYNTAX_ERROR, (yyvsp[0].kwd).pos());
+ }
+ }
+#line 48412 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2466: /* opt_cycle: CYCLE_SYM $@219 comma_separated_ident_list RESTRICT */
+#line 15100 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.ident_sys_list)= (yyvsp[-1].ident_sys_list);
+ }
+#line 48420 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2467: /* opt_with_column_list: %empty */
+#line 15108 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (((yyval.ident_sys_list)= new (thd->mem_root) List<Lex_ident_sys>) == NULL)
+ MYSQL_YYABORT;
+ }
+#line 48429 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2468: /* opt_with_column_list: '(' with_column_list ')' */
+#line 15113 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ident_sys_list)= (yyvsp[-1].ident_sys_list); }
+#line 48435 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2470: /* ident_sys_alloc: ident_cli */
+#line 15122 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.ident_sys_ptr)= new (thd->mem_root) Lex_ident_sys(thd, &(yyvsp[0].ident_cli));
+ }
+#line 48443 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2471: /* comma_separated_ident_list: ident_sys_alloc */
+#line 15129 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.ident_sys_list)= new (thd->mem_root) List<Lex_ident_sys>;
+ if (unlikely((yyval.ident_sys_list) == NULL || (yyval.ident_sys_list)->push_back((yyvsp[0].ident_sys_ptr))))
+ MYSQL_YYABORT;
+ }
+#line 48453 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2472: /* comma_separated_ident_list: comma_separated_ident_list ',' ident_sys_alloc */
+#line 15135 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (((yyval.ident_sys_list)= (yyvsp[-2].ident_sys_list))->push_back((yyvsp[0].ident_sys_ptr)))
+ MYSQL_YYABORT;
+ }
+#line 48462 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2473: /* with_element_head: ident */
+#line 15144 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX_CSTRING *name=
+ (LEX_CSTRING *) thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING));
+ (yyval.with_element_head)= new (thd->mem_root) With_element_head(name);
+ if (unlikely(name == NULL || (yyval.with_element_head) == NULL))
+ MYSQL_YYABORT;
+ (yyval.with_element_head)->tables_pos.set_start_pos(Lex->query_tables_last);
+ }
+#line 48475 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2474: /* insert_ident: simple_ident_nospvar */
+#line 15161 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)=(yyvsp[0].item); }
+#line 48481 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2475: /* insert_ident: table_wild */
+#line 15162 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)=(yyvsp[0].item); }
+#line 48487 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2476: /* table_wild: ident '.' '*' */
+#line 15167 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_qualified_asterisk(thd, &(yyvsp[-2].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 48496 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2477: /* table_wild: ident '.' ident '.' '*' */
+#line 15172 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_qualified_asterisk(thd, &(yyvsp[-4].ident_sys), &(yyvsp[-2].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 48505 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2478: /* select_sublist_qualified_asterisk: ident_cli '.' '*' */
+#line 15180 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_qualified_asterisk(thd, &(yyvsp[-2].ident_cli)))))
+ MYSQL_YYABORT;
+ }
+#line 48514 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2479: /* select_sublist_qualified_asterisk: ident_cli '.' ident_cli '.' '*' */
+#line 15185 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_qualified_asterisk(thd, &(yyvsp[-4].ident_cli), &(yyvsp[-2].ident_cli)))))
+ MYSQL_YYABORT;
+ }
+#line 48523 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2480: /* order_ident: expr */
+#line 15192 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)=(yyvsp[0].item); }
+#line 48529 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2481: /* simple_ident: ident_cli */
+#line 15198 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &(yyvsp[0].ident_cli)))))
+ MYSQL_YYABORT;
+ }
+#line 48538 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2482: /* simple_ident: ident_cli '.' ident_cli */
+#line 15203 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
+ MYSQL_YYABORT;
+ }
+#line 48547 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2483: /* simple_ident: '.' ident_cli '.' ident_cli */
+#line 15208 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex_ident_cli empty((yyvsp[-2].ident_cli).pos(), 0);
+ if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &empty, &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
+ MYSQL_YYABORT;
+ }
+#line 48557 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2484: /* simple_ident: ident_cli '.' ident_cli '.' ident_cli */
+#line 15214 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &(yyvsp[-4].ident_cli), &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
+ MYSQL_YYABORT;
+ }
+#line 48566 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2485: /* simple_ident: COLON_ORACLE_SYM ident_cli '.' ident_cli */
+#line 15219 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_colon_ident_ident(thd, &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
+ MYSQL_YYABORT;
+ }
+#line 48575 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2486: /* simple_ident_nospvar: ident */
+#line 15227 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_ident_nosp(thd, &(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 48584 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2487: /* simple_ident_nospvar: ident '.' ident */
+#line 15232 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_ident_nospvar(thd, &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 48593 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2488: /* simple_ident_nospvar: COLON_ORACLE_SYM ident_cli '.' ident_cli */
+#line 15237 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->make_item_colon_ident_ident(thd, &(yyvsp[-2].ident_cli), &(yyvsp[0].ident_cli)))))
+ MYSQL_YYABORT;
+ }
+#line 48602 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2489: /* simple_ident_nospvar: '.' ident '.' ident */
+#line 15242 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex_ident_sys none;
+ if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &none, &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 48612 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2490: /* simple_ident_nospvar: ident '.' ident '.' ident */
+#line 15248 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.item)= Lex->create_item_ident(thd, &(yyvsp[-4].ident_sys), &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys)))))
+ MYSQL_YYABORT;
+ }
+#line 48621 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2491: /* field_ident: ident */
+#line 15255 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)=(yyvsp[0].ident_sys);}
+#line 48627 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2492: /* field_ident: ident '.' ident '.' ident */
+#line 15257 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ TABLE_LIST *table= Select->table_list.first;
+ if (unlikely(my_strcasecmp(table_alias_charset, (yyvsp[-4].ident_sys).str,
+ table->db.str)))
+ my_yyabort_error((ER_WRONG_DB_NAME, MYF(0), (yyvsp[-4].ident_sys).str));
+ if (unlikely(my_strcasecmp(table_alias_charset, (yyvsp[-2].ident_sys).str,
+ table->table_name.str)))
+ my_yyabort_error((ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[-2].ident_sys).str));
+ (yyval.lex_str)=(yyvsp[0].ident_sys);
+ }
+#line 48642 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2493: /* field_ident: ident '.' ident */
+#line 15268 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ TABLE_LIST *table= Select->table_list.first;
+ if (unlikely(my_strcasecmp(table_alias_charset, (yyvsp[-2].ident_sys).str,
+ table->alias.str)))
+ my_yyabort_error((ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[-2].ident_sys).str));
+ (yyval.lex_str)=(yyvsp[0].ident_sys);
+ }
+#line 48654 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2494: /* field_ident: '.' ident */
+#line 15275 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)=(yyvsp[0].ident_sys);}
+#line 48660 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2495: /* table_ident: ident */
+#line 15280 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.table)= new (thd->mem_root) Table_ident(&(yyvsp[0].ident_sys));
+ if (unlikely((yyval.table) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48670 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2496: /* table_ident: ident '.' ident */
+#line 15286 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.table)= new (thd->mem_root) Table_ident(thd, &(yyvsp[-2].ident_sys), &(yyvsp[0].ident_sys), 0);
+ if (unlikely((yyval.table) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48680 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2497: /* table_ident: '.' ident */
+#line 15292 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /* For Delphi */
+ (yyval.table)= new (thd->mem_root) Table_ident(&(yyvsp[0].ident_sys));
+ if (unlikely((yyval.table) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48691 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2498: /* table_ident_opt_wild: ident opt_wild */
+#line 15302 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.table)= new (thd->mem_root) Table_ident(&(yyvsp[-1].ident_sys));
+ if (unlikely((yyval.table) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48701 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2499: /* table_ident_opt_wild: ident '.' ident opt_wild */
+#line 15308 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.table)= new (thd->mem_root) Table_ident(thd, &(yyvsp[-3].ident_sys), &(yyvsp[-1].ident_sys), 0);
+ if (unlikely((yyval.table) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48711 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2500: /* table_ident_nodb: ident */
+#line 15317 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX_CSTRING db= any_db;
+ (yyval.table)= new (thd->mem_root) Table_ident(thd, &db, &(yyvsp[0].ident_sys), 0);
+ if (unlikely((yyval.table) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 48722 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2505: /* ident_cli: keyword_ident */
+#line 15333 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ident_cli)= (yyvsp[0].kwd); }
+#line 48728 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2506: /* IDENT_sys: IDENT_cli */
+#line 15338 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(thd->to_ident_sys_alloc(&(yyval.ident_sys), &(yyvsp[0].ident_cli))))
+ MYSQL_YYABORT;
+ }
+#line 48737 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2509: /* ident_cli_func: keyword_func_sp_var_and_label */
+#line 15347 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ident_cli)= (yyvsp[0].kwd); }
+#line 48743 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2510: /* ident_cli_func: keyword_func_sp_var_not_label */
+#line 15348 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ident_cli)= (yyvsp[0].kwd); }
+#line 48749 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2511: /* ident_func: ident_cli_func */
+#line 15353 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(thd->to_ident_sys_alloc(&(yyval.ident_sys), &(yyvsp[0].ident_cli))))
+ MYSQL_YYABORT;
+ }
+#line 48758 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2512: /* TEXT_STRING_sys: TEXT_STRING */
+#line 15362 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (thd->make_text_string_sys(&(yyval.lex_str), &(yyvsp[0].lex_string_with_metadata)))
+ MYSQL_YYABORT;
+ }
+#line 48767 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2513: /* TEXT_STRING_literal: TEXT_STRING */
+#line 15370 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (thd->make_text_string_connection(&(yyval.lex_str), &(yyvsp[0].lex_string_with_metadata)))
+ MYSQL_YYABORT;
+ }
+#line 48776 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2514: /* TEXT_STRING_filesystem: TEXT_STRING */
+#line 15378 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (thd->make_text_string_filesystem(&(yyval.lex_str), &(yyvsp[0].lex_string_with_metadata)))
+ MYSQL_YYABORT;
+ }
+#line 48785 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2516: /* ident_table_alias: keyword_table_alias */
+#line 15387 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyval.ident_sys).copy_keyword(thd, &(yyvsp[0].kwd))))
+ MYSQL_YYABORT;
+ }
+#line 48794 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2517: /* ident_cli_set_usual_case: IDENT_cli */
+#line 15394 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ident_cli)= (yyvsp[0].ident_cli); }
+#line 48800 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2518: /* ident_cli_set_usual_case: keyword_set_usual_case */
+#line 15395 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ident_cli)= (yyvsp[0].kwd); }
+#line 48806 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2520: /* ident_sysvar_name: keyword_sysvar_name */
+#line 15401 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyval.ident_sys).copy_keyword(thd, &(yyvsp[0].kwd))))
+ MYSQL_YYABORT;
+ }
+#line 48815 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2521: /* ident_sysvar_name: TEXT_STRING_sys */
+#line 15406 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyval.ident_sys).copy_sys(thd, &(yyvsp[0].lex_str))))
+ MYSQL_YYABORT;
+ }
+#line 48824 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2523: /* ident: keyword_ident */
+#line 15416 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyval.ident_sys).copy_keyword(thd, &(yyvsp[0].kwd))))
+ MYSQL_YYABORT;
+ }
+#line 48833 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2525: /* label_ident: keyword_label */
+#line 15425 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyval.ident_sys).copy_keyword(thd, &(yyvsp[0].kwd))))
+ MYSQL_YYABORT;
+ }
+#line 48842 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2526: /* ident_or_text: ident */
+#line 15432 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)=(yyvsp[0].ident_sys);}
+#line 48848 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2527: /* ident_or_text: TEXT_STRING_sys */
+#line 15433 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)=(yyvsp[0].lex_str);}
+#line 48854 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2528: /* ident_or_text: LEX_HOSTNAME */
+#line 15434 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)=(yyvsp[0].lex_str);}
+#line 48860 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2529: /* user_maybe_role: ident_or_text */
+#line 15439 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.lex_user)=(LEX_USER*) thd->calloc(sizeof(LEX_USER)))))
+ MYSQL_YYABORT;
+ (yyval.lex_user)->user = (yyvsp[0].lex_str);
+
+ if (unlikely(check_string_char_length(&(yyval.lex_user)->user, ER_USERNAME,
+ username_char_length,
+ system_charset_info, 0)))
+ MYSQL_YYABORT;
+ }
+#line 48875 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2530: /* user_maybe_role: ident_or_text '@' ident_or_text */
+#line 15450 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.lex_user)=(LEX_USER*) thd->calloc(sizeof(LEX_USER)))))
+ MYSQL_YYABORT;
+ (yyval.lex_user)->user = (yyvsp[-2].lex_str); (yyval.lex_user)->host=(yyvsp[0].lex_str);
+
+ if (unlikely(check_string_char_length(&(yyval.lex_user)->user, ER_USERNAME,
+ username_char_length,
+ system_charset_info, 0)) ||
+ unlikely(check_host_name(&(yyval.lex_user)->host)))
+ MYSQL_YYABORT;
+ if ((yyval.lex_user)->host.str[0])
+ {
+ /*
+ Convert hostname part of username to lowercase.
+ It's OK to use in-place lowercase as long as
+ the character set is utf8.
+ */
+ my_casedn_str(system_charset_info, (char*) (yyval.lex_user)->host.str);
+ }
+ else
+ {
+ /*
+ fix historical undocumented convention that empty host is the
+ same as '%'
+ */
+ (yyval.lex_user)->host= host_not_specified;
+ }
+ }
+#line 48908 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2531: /* user_maybe_role: CURRENT_USER optional_braces */
+#line 15479 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.lex_user)=(LEX_USER*)thd->calloc(sizeof(LEX_USER)))))
+ MYSQL_YYABORT;
+ (yyval.lex_user)->user= current_user;
+ (yyval.lex_user)->auth= new (thd->mem_root) USER_AUTH();
+ }
+#line 48919 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 2534: /* user: user_maybe_role */
+#line 15490 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if ((yyvsp[0].lex_user)->user.str != current_user.str && (yyvsp[0].lex_user)->host.str == 0)
+ (yyvsp[0].lex_user)->host= host_not_specified;
+ (yyval.lex_user)= (yyvsp[0].lex_user);
+ }
+#line 48929 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3262: /* $@220: %empty */
+#line 16359 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->set_stmt_init();
+ }
+#line 48938 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3263: /* set: SET $@220 set_param */
+#line 16364 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->check_main_unit_semantics())
+ MYSQL_YYABORT;
+ }
+#line 48947 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3266: /* $@221: %empty */
+#line 16374 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->option_type= OPT_DEFAULT;
+ if (sp_create_assignment_lex(thd, (yyvsp[0].kwd).pos()))
+ MYSQL_YYABORT;
+ }
+#line 48957 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3267: /* set_param: TRANSACTION_SYM $@221 transaction_characteristics */
+#line 16380 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 48966 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3268: /* $@222: %empty */
+#line 16385 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->option_type= (yyvsp[0].var_type);
+ }
+#line 48974 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3270: /* $@223: %empty */
+#line 16391 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(lex->table_or_sp_used()))
+ my_yyabort_error((ER_SUBQUERIES_NOT_SUPPORTED, MYF(0), "SET STATEMENT"));
+ lex->stmt_var_list= lex->var_list;
+ lex->var_list.empty();
+ if (Lex->check_main_unit_semantics())
+ MYSQL_YYABORT;
+ }
+#line 48988 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3276: /* $@224: %empty */
+#line 16418 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[0].kwd).pos()))
+ MYSQL_YYABORT;
+ }
+#line 48997 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3277: /* start_option_value_list_following_option_type: TRANSACTION_SYM $@224 transaction_characteristics */
+#line 16423 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49006 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3280: /* $@225: %empty */
+#line 16438 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->option_type= (yyvsp[0].var_type);
+ }
+#line 49014 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3283: /* option_type: GLOBAL_SYM */
+#line 16446 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.var_type)=OPT_GLOBAL; }
+#line 49020 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3284: /* option_type: LOCAL_SYM */
+#line 16447 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.var_type)=OPT_SESSION; }
+#line 49026 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3285: /* option_type: SESSION_SYM */
+#line 16448 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.var_type)=OPT_SESSION; }
+#line 49032 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3286: /* opt_var_type: %empty */
+#line 16452 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.var_type)=OPT_SESSION; }
+#line 49038 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3287: /* opt_var_type: GLOBAL_SYM */
+#line 16453 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.var_type)=OPT_GLOBAL; }
+#line 49044 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3288: /* opt_var_type: LOCAL_SYM */
+#line 16454 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.var_type)=OPT_SESSION; }
+#line 49050 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3289: /* opt_var_type: SESSION_SYM */
+#line 16455 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.var_type)=OPT_SESSION; }
+#line 49056 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3290: /* opt_var_ident_type: %empty */
+#line 16459 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.var_type)=OPT_DEFAULT; }
+#line 49062 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3291: /* opt_var_ident_type: GLOBAL_SYM '.' */
+#line 16460 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.var_type)=OPT_GLOBAL; }
+#line 49068 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3292: /* opt_var_ident_type: LOCAL_SYM '.' */
+#line 16461 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.var_type)=OPT_SESSION; }
+#line 49074 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3293: /* opt_var_ident_type: SESSION_SYM '.' */
+#line 16462 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.var_type)=OPT_SESSION; }
+#line 49080 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3294: /* $@226: %empty */
+#line 16471 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push(false))
+ MYSQL_YYABORT;
+ }
+#line 49089 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3295: /* set_stmt_option: ident_cli equal $@226 set_expr_or_default */
+#line 16476 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex_ident_sys tmp(thd, &(yyvsp[-3].ident_cli));
+ if (unlikely(!tmp.str) ||
+ unlikely(Lex->set_system_variable(Lex->option_type, &tmp, (yyvsp[0].item))))
+ MYSQL_YYABORT;
+ Lex->pop_select(); //min select
+ }
+#line 49101 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3296: /* $@227: %empty */
+#line 16484 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push(false))
+ MYSQL_YYABORT;
+ }
+#line 49110 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3297: /* set_stmt_option: ident_cli '.' ident equal $@227 set_expr_or_default */
+#line 16489 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex_ident_sys tmp(thd, &(yyvsp[-5].ident_cli));
+ if (unlikely(!tmp.str) ||
+ unlikely(Lex->set_system_variable(thd, Lex->option_type,
+ &tmp, &(yyvsp[-3].ident_sys), (yyvsp[0].item))))
+ MYSQL_YYABORT;
+ Lex->pop_select(); //min select
+ }
+#line 49123 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3298: /* $@228: %empty */
+#line 16498 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push(false))
+ MYSQL_YYABORT;
+ }
+#line 49132 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3299: /* set_stmt_option: DEFAULT '.' ident equal $@228 set_expr_or_default */
+#line 16503 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->set_default_system_variable(Lex->option_type,
+ &(yyvsp[-3].ident_sys), (yyvsp[0].item))))
+ MYSQL_YYABORT;
+ Lex->pop_select(); //min select
+ }
+#line 49143 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3300: /* $@229: %empty */
+#line 16515 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-1].ident_cli).pos()))
+ MYSQL_YYABORT;
+ }
+#line 49152 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3301: /* option_value_following_option_type: ident_cli equal $@229 set_expr_or_default */
+#line 16520 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex_ident_sys tmp(thd, &(yyvsp[-3].ident_cli));
+ if (unlikely(!tmp.str) ||
+ unlikely(Lex->set_system_variable(Lex->option_type, &tmp, (yyvsp[0].item))) ||
+ unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49164 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3302: /* $@230: %empty */
+#line 16528 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-3].ident_cli).pos()))
+ MYSQL_YYABORT;
+ }
+#line 49173 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3303: /* option_value_following_option_type: ident_cli '.' ident equal $@230 set_expr_or_default */
+#line 16533 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex_ident_sys tmp(thd, &(yyvsp[-5].ident_cli));
+ if (unlikely(!tmp.str) ||
+ unlikely(Lex->set_system_variable(thd, Lex->option_type, &tmp, &(yyvsp[-3].ident_sys), (yyvsp[0].item))) ||
+ unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49185 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3304: /* $@231: %empty */
+#line 16541 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-3].kwd).pos()))
+ MYSQL_YYABORT;
+ }
+#line 49194 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3305: /* option_value_following_option_type: DEFAULT '.' ident equal $@231 set_expr_or_default */
+#line 16546 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->set_default_system_variable(Lex->option_type, &(yyvsp[-3].ident_sys), (yyvsp[0].item))) ||
+ unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49204 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3306: /* $@232: %empty */
+#line 16556 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-1].ident_cli).pos()))
+ MYSQL_YYABORT;
+ }
+#line 49213 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3307: /* option_value_no_option_type: ident_cli_set_usual_case equal $@232 set_expr_or_default */
+#line 16561 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex_ident_sys tmp(thd, &(yyvsp[-3].ident_cli));
+ if (unlikely(!tmp.str) ||
+ unlikely(Lex->set_variable(&tmp, (yyvsp[0].item))) ||
+ unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49225 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3308: /* $@233: %empty */
+#line 16569 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-3].ident_cli).pos()))
+ MYSQL_YYABORT;
+ }
+#line 49234 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3309: /* option_value_no_option_type: ident_cli_set_usual_case '.' ident equal $@233 set_expr_or_default */
+#line 16574 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex_ident_sys tmp(thd, &(yyvsp[-5].ident_cli));
+ if (unlikely(!tmp.str) ||
+ unlikely(Lex->set_variable(&tmp, &(yyvsp[-3].ident_sys), (yyvsp[0].item))) ||
+ unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49246 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3310: /* $@234: %empty */
+#line 16582 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-3].kwd).pos()))
+ MYSQL_YYABORT;
+ }
+#line 49255 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3311: /* option_value_no_option_type: DEFAULT '.' ident equal $@234 set_expr_or_default */
+#line 16587 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->set_default_system_variable(Lex->option_type, &(yyvsp[-3].ident_sys), (yyvsp[0].item))))
+ MYSQL_YYABORT;
+ if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49266 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3312: /* $@235: %empty */
+#line 16594 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!(yyvsp[-1].lex_str).length)
+ {
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+
+ if (sp_create_assignment_lex(thd, (yyvsp[-2].lex_str).str))
+ MYSQL_YYABORT;
+ }
+#line 49281 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3313: /* option_value_no_option_type: '@' ident_or_text equal $@235 expr */
+#line 16605 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->set_user_variable(thd, &(yyvsp[-3].lex_str), (yyvsp[0].item))) ||
+ unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49291 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3314: /* $@236: %empty */
+#line 16611 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-4].lex_str).str))
+ MYSQL_YYABORT;
+ }
+#line 49300 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3315: /* option_value_no_option_type: '@' '@' opt_var_ident_type ident_sysvar_name equal $@236 set_expr_or_default */
+#line 16616 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->set_system_variable((yyvsp[-4].var_type), &(yyvsp[-3].ident_sys), (yyvsp[0].item))) ||
+ unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49310 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3316: /* $@237: %empty */
+#line 16622 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-6].lex_str).str))
+ MYSQL_YYABORT;
+ }
+#line 49319 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3317: /* option_value_no_option_type: '@' '@' opt_var_ident_type ident_sysvar_name '.' ident equal $@237 set_expr_or_default */
+#line 16627 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->set_system_variable(thd, (yyvsp[-6].var_type), &(yyvsp[-5].ident_sys), &(yyvsp[-3].ident_sys), (yyvsp[0].item))) ||
+ unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49329 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3318: /* $@238: %empty */
+#line 16633 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-6].lex_str).str))
+ MYSQL_YYABORT;
+ }
+#line 49338 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3319: /* option_value_no_option_type: '@' '@' opt_var_ident_type DEFAULT '.' ident equal $@238 set_expr_or_default */
+#line 16638 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->set_default_system_variable((yyvsp[-6].var_type), &(yyvsp[-3].ident_sys), (yyvsp[0].item))) ||
+ unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49348 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3320: /* option_value_no_option_type: charset old_or_new_charset_name_or_default */
+#line 16644 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-1].kwd).pos()))
+ MYSQL_YYABORT;
+ LEX *lex= thd->lex;
+ CHARSET_INFO *cs2;
+ cs2= (yyvsp[0].charset) ? (yyvsp[0].charset): global_system_variables.character_set_client;
+ set_var_collation_client *var;
+ var= (new (thd->mem_root)
+ set_var_collation_client(cs2,
+ thd->variables.collation_database,
+ cs2));
+ if (unlikely(var == NULL))
+ MYSQL_YYABORT;
+ lex->var_list.push_back(var, thd->mem_root);
+ if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49370 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3321: /* option_value_no_option_type: NAMES_SYM equal expr */
+#line 16662 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ sp_pcontext *spc= lex->spcont;
+ LEX_CSTRING names= { STRING_WITH_LEN("names") };
+ if (unlikely(spc && spc->find_variable(&names, false)))
+ my_error(ER_SP_BAD_VAR_SHADOW, MYF(0), names.str);
+ else
+ thd->parse_error();
+ MYSQL_YYABORT;
+ }
+#line 49385 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3322: /* option_value_no_option_type: NAMES_SYM charset_name_or_default */
+#line 16673 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ CHARSET_INFO *def= global_system_variables.character_set_client;
+ Lex_exact_charset_opt_extended_collate tmp((yyvsp[0].charset) ? (yyvsp[0].charset) : def, false);
+ if (Lex->set_names((yyvsp[-1].kwd).pos(), tmp, yychar == YYEMPTY))
+ MYSQL_YYABORT;
+ }
+#line 49396 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3323: /* option_value_no_option_type: NAMES_SYM charset_name_or_default COLLATE_SYM collation_name_or_default */
+#line 16681 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ CHARSET_INFO *def= global_system_variables.character_set_client;
+ Lex_exact_charset_opt_extended_collate tmp((yyvsp[-2].charset) ? (yyvsp[-2].charset) : def, false);
+ if (tmp.merge_collation((yyvsp[0].Lex_extended_collation)) ||
+ Lex->set_names((yyvsp[-3].kwd).pos(), tmp, yychar == YYEMPTY))
+ MYSQL_YYABORT;
+ }
+#line 49408 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3324: /* option_value_no_option_type: DEFAULT ROLE_SYM grant_role */
+#line 16689 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-2].kwd).pos()))
+ MYSQL_YYABORT;
+ LEX *lex = Lex;
+ LEX_USER *user;
+ if (unlikely(!(user=(LEX_USER *) thd->calloc(sizeof(LEX_USER)))))
+ MYSQL_YYABORT;
+ user->user= current_user;
+ set_var_default_role *var= (new (thd->mem_root)
+ set_var_default_role(user,
+ (yyvsp[0].lex_user)->user));
+ if (unlikely(var == NULL) ||
+ unlikely(lex->var_list.push_back(var, thd->mem_root)))
+ MYSQL_YYABORT;
+
+ thd->lex->autocommit= TRUE;
+ if (lex->sphead)
+ lex->sphead->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
+ if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49434 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3325: /* option_value_no_option_type: DEFAULT ROLE_SYM grant_role FOR_SYM user */
+#line 16711 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-4].kwd).pos()))
+ MYSQL_YYABORT;
+ LEX *lex = Lex;
+ set_var_default_role *var= (new (thd->mem_root)
+ set_var_default_role((yyvsp[0].lex_user), (yyvsp[-2].lex_user)->user));
+ if (unlikely(var == NULL) ||
+ unlikely(lex->var_list.push_back(var, thd->mem_root)))
+ MYSQL_YYABORT;
+ thd->lex->autocommit= TRUE;
+ if (lex->sphead)
+ lex->sphead->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
+ if (unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49454 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3326: /* option_value_no_option_type: ROLE_SYM role_name */
+#line 16727 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-1].kwd).pos()))
+ MYSQL_YYABORT;
+ LEX *lex = Lex;
+ set_var_role *var= new (thd->mem_root) set_var_role((yyvsp[0].lex_user)->user);
+ if (unlikely(var == NULL) ||
+ unlikely(lex->var_list.push_back(var, thd->mem_root)) ||
+ unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49469 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3327: /* $@239: %empty */
+#line 16738 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-1].kwd).pos()))
+ MYSQL_YYABORT;
+ }
+#line 49478 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3328: /* option_value_no_option_type: ROLE_SYM equal $@239 set_expr_or_default */
+#line 16743 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex_ident_sys tmp(thd, &(yyvsp[-3].kwd));
+ if (unlikely(!tmp.str) ||
+ unlikely(Lex->set_variable(&tmp, (yyvsp[0].item))) ||
+ unlikely(sp_create_assignment_instr(thd, yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49490 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3329: /* $@240: %empty */
+#line 16751 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-1].kwd).pos()))
+ MYSQL_YYABORT;
+ }
+#line 49499 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3330: /* option_value_no_option_type: PASSWORD_SYM equal $@240 text_or_password */
+#line 16756 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_create_set_password_instr(thd, (yyvsp[0].user_auth),
+ yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49509 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3331: /* $@241: %empty */
+#line 16762 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (sp_create_assignment_lex(thd, (yyvsp[-1].kwd).pos()))
+ MYSQL_YYABORT;
+ }
+#line 49518 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3332: /* option_value_no_option_type: PASSWORD_SYM FOR_SYM $@241 user equal text_or_password */
+#line 16767 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_create_set_password_instr(thd, (yyvsp[-2].lex_user), (yyvsp[0].user_auth),
+ yychar == YYEMPTY)))
+ MYSQL_YYABORT;
+ }
+#line 49528 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3337: /* transaction_access_mode: transaction_access_mode_types */
+#line 16783 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Item *item= new (thd->mem_root) Item_int(thd, (int32) (yyvsp[0].num));
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ set_var *var= (new (thd->mem_root)
+ set_var(thd, lex->option_type,
+ find_sys_var(thd, "tx_read_only"),
+ &null_clex_str,
+ item));
+ if (unlikely(var == NULL))
+ MYSQL_YYABORT;
+ if (unlikely(lex->var_list.push_back(var, thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 49548 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3338: /* isolation_level: ISOLATION LEVEL_SYM isolation_types */
+#line 16802 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ Item *item= new (thd->mem_root) Item_int(thd, (int32) (yyvsp[0].tx_isolation));
+ if (unlikely(item == NULL))
+ MYSQL_YYABORT;
+ set_var *var= (new (thd->mem_root)
+ set_var(thd, lex->option_type,
+ find_sys_var(thd, "tx_isolation"),
+ &null_clex_str,
+ item));
+ if (unlikely(var == NULL) ||
+ unlikely(lex->var_list.push_back(var, thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 49567 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3339: /* transaction_access_mode_types: READ_SYM ONLY_SYM */
+#line 16819 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= true; }
+#line 49573 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3340: /* transaction_access_mode_types: READ_SYM WRITE_SYM */
+#line 16820 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= false; }
+#line 49579 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3341: /* isolation_types: READ_SYM UNCOMMITTED_SYM */
+#line 16824 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.tx_isolation)= ISO_READ_UNCOMMITTED; }
+#line 49585 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3342: /* isolation_types: READ_SYM COMMITTED_SYM */
+#line 16825 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.tx_isolation)= ISO_READ_COMMITTED; }
+#line 49591 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3343: /* isolation_types: REPEATABLE_SYM READ_SYM */
+#line 16826 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.tx_isolation)= ISO_REPEATABLE_READ; }
+#line 49597 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3344: /* isolation_types: SERIALIZABLE_SYM */
+#line 16827 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.tx_isolation)= ISO_SERIALIZABLE; }
+#line 49603 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3345: /* text_or_password: TEXT_STRING */
+#line 16833 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.user_auth)= new (thd->mem_root) USER_AUTH();
+ (yyval.user_auth)->auth_str= (yyvsp[0].lex_string_with_metadata);
+ }
+#line 49612 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3346: /* text_or_password: PASSWORD_SYM '(' TEXT_STRING ')' */
+#line 16838 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.user_auth)= new (thd->mem_root) USER_AUTH();
+ (yyval.user_auth)->pwtext= (yyvsp[-1].lex_string_with_metadata);
+ }
+#line 49621 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3347: /* text_or_password: OLD_PASSWORD_SYM '(' TEXT_STRING ')' */
+#line 16843 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.user_auth)= new (thd->mem_root) USER_AUTH();
+ (yyval.user_auth)->pwtext= (yyvsp[-1].lex_string_with_metadata);
+ (yyval.user_auth)->auth_str.str= Item_func_password::alloc(thd,
+ (yyvsp[-1].lex_string_with_metadata).str, (yyvsp[-1].lex_string_with_metadata).length, Item_func_password::OLD);
+ (yyval.user_auth)->auth_str.length= SCRAMBLED_PASSWORD_CHAR_LENGTH_323;
+ }
+#line 49633 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3348: /* set_expr_or_default: expr */
+#line 16853 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)=(yyvsp[0].item); }
+#line 49639 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3349: /* set_expr_or_default: DEFAULT */
+#line 16854 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item)=0; }
+#line 49645 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3350: /* set_expr_or_default: ON */
+#line 16856 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)=new (thd->mem_root) Item_string_sys(thd, "ON", 2);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 49655 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3351: /* set_expr_or_default: ALL */
+#line 16862 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)=new (thd->mem_root) Item_string_sys(thd, "ALL", 3);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 49665 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3352: /* set_expr_or_default: BINARY */
+#line 16868 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.item)=new (thd->mem_root) Item_string_sys(thd, "binary", 6);
+ if (unlikely((yyval.item) == NULL))
+ MYSQL_YYABORT;
+ }
+#line 49675 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3353: /* $@242: %empty */
+#line 16879 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+
+ if (unlikely(lex->sphead))
+ my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "LOCK"));
+ lex->sql_command= SQLCOM_LOCK_TABLES;
+ }
+#line 49687 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3354: /* lock: LOCK_SYM table_or_tables $@242 table_lock_list opt_lock_wait_timeout */
+#line 16887 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 49693 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3355: /* opt_lock_wait_timeout: %empty */
+#line 16892 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 49699 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3356: /* opt_lock_wait_timeout: WAIT_SYM ulong_num */
+#line 16894 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(set_statement_var_if_exists(thd, STRING_WITH_LEN("lock_wait_timeout"), (yyvsp[0].ulong_num))) ||
+ unlikely(set_statement_var_if_exists(thd, STRING_WITH_LEN("innodb_lock_wait_timeout"), (yyvsp[0].ulong_num))))
+ MYSQL_YYABORT;
+ }
+#line 49709 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3357: /* opt_lock_wait_timeout: NOWAIT_SYM */
+#line 16900 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(set_statement_var_if_exists(thd, STRING_WITH_LEN("lock_wait_timeout"), 0)) ||
+ unlikely(set_statement_var_if_exists(thd, STRING_WITH_LEN("innodb_lock_wait_timeout"), 0)))
+ MYSQL_YYABORT;
+ }
+#line 49719 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3358: /* table_or_tables: TABLE_SYM */
+#line 16908 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 49725 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3359: /* table_or_tables: TABLES */
+#line 16909 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 49731 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3362: /* table_lock: table_ident opt_table_alias_clause lock_option */
+#line 16919 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ thr_lock_type lock_type= (thr_lock_type) (yyvsp[0].num);
+ bool lock_for_write= (lock_type >= TL_FIRST_WRITE);
+ ulong table_options= lock_for_write ? TL_OPTION_UPDATING : 0;
+ enum_mdl_type mdl_type= !lock_for_write
+ ? MDL_SHARED_READ
+ : lock_type == TL_WRITE_CONCURRENT_INSERT
+ ? MDL_SHARED_WRITE
+ : MDL_SHARED_NO_READ_WRITE;
+
+ if (unlikely(!Lex->current_select_or_default()->
+ add_table_to_list(thd, (yyvsp[-2].table), (yyvsp[-1].lex_str_ptr), table_options,
+ lock_type, mdl_type)))
+ MYSQL_YYABORT;
+ }
+#line 49751 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3363: /* lock_option: READ_SYM */
+#line 16937 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= TL_READ_NO_INSERT; }
+#line 49757 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3364: /* lock_option: WRITE_SYM */
+#line 16938 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= TL_WRITE_DEFAULT; }
+#line 49763 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3365: /* lock_option: WRITE_SYM CONCURRENT */
+#line 16940 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.num)= (Lex->sphead ? TL_WRITE_DEFAULT : TL_WRITE_CONCURRENT_INSERT);
+ }
+#line 49771 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3366: /* lock_option: LOW_PRIORITY WRITE_SYM */
+#line 16944 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= TL_WRITE_LOW_PRIORITY; }
+#line 49777 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3367: /* lock_option: READ_SYM LOCAL_SYM */
+#line 16945 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= TL_READ; }
+#line 49783 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3368: /* $@243: %empty */
+#line 16950 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+
+ if (unlikely(lex->sphead))
+ my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "UNLOCK"));
+ lex->sql_command= SQLCOM_UNLOCK_TABLES;
+ }
+#line 49795 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3369: /* unlock: UNLOCK_SYM $@243 table_or_tables */
+#line 16958 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 49801 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3370: /* $@244: %empty */
+#line 16967 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->main_select_push())
+ MYSQL_YYABORT;
+ }
+#line 49810 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3371: /* handler: HANDLER_SYM $@244 handler_tail */
+#line 16972 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->pop_select(); //main select
+ }
+#line 49818 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3372: /* handler_tail: table_ident OPEN_SYM opt_table_alias_clause */
+#line 16979 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(lex->sphead))
+ my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "HANDLER"));
+ lex->sql_command = SQLCOM_HA_OPEN;
+ if (!lex->current_select->add_table_to_list(thd, (yyvsp[-2].table), (yyvsp[0].lex_str_ptr), 0))
+ MYSQL_YYABORT;
+ }
+#line 49831 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3373: /* handler_tail: table_ident_nodb CLOSE_SYM */
+#line 16988 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ if (unlikely(lex->sphead))
+ my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "HANDLER"));
+ lex->sql_command = SQLCOM_HA_CLOSE;
+ if (!lex->current_select->add_table_to_list(thd, (yyvsp[-1].table), 0, 0))
+ MYSQL_YYABORT;
+ }
+#line 49844 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3374: /* $@245: %empty */
+#line 16997 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ SELECT_LEX *select= Select;
+ if (unlikely(lex->sphead))
+ my_yyabort_error((ER_SP_BADSTATEMENT, MYF(0), "HANDLER"));
+ lex->clause_that_disallows_subselect= "HANDLER..READ";
+ lex->sql_command = SQLCOM_HA_READ;
+ lex->ha_rkey_mode= HA_READ_KEY_EXACT; /* Avoid purify warnings */
+ Item *one= new (thd->mem_root) Item_int(thd, (int32) 1);
+ if (unlikely(one == NULL))
+ MYSQL_YYABORT;
+ select->limit_params.select_limit= one;
+ select->limit_params.offset_limit= 0;
+ lex->limit_rows_examined= 0;
+ if (!lex->current_select->add_table_to_list(thd, (yyvsp[-1].table), 0, 0))
+ MYSQL_YYABORT;
+ }
+#line 49866 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3375: /* handler_tail: table_ident_nodb READ_SYM $@245 handler_read_or_scan opt_where_clause opt_global_limit_clause */
+#line 17015 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ SELECT_LEX *select= Select;
+ lex->clause_that_disallows_subselect= NULL;
+ if (!lex->current_select->limit_params.explicit_limit)
+ {
+ Item *one= new (thd->mem_root) Item_int(thd, (int32) 1);
+ if (one == NULL)
+ MYSQL_YYABORT;
+ select->limit_params.select_limit= one;
+ select->limit_params.offset_limit= 0;
+ lex->limit_rows_examined= 0;
+ }
+ /* Stored functions are not supported for HANDLER READ. */
+ if (lex->uses_stored_routines())
+ {
+ my_error(ER_NOT_SUPPORTED_YET, MYF(0),
+ "stored functions in HANDLER ... READ");
+ MYSQL_YYABORT;
+ }
+ }
+#line 49892 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3376: /* handler_read_or_scan: handler_scan_function */
+#line 17039 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ident= null_clex_str; }
+#line 49898 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3377: /* handler_read_or_scan: ident handler_rkey_function */
+#line 17040 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ident= (yyvsp[-1].ident_sys); }
+#line 49904 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3378: /* handler_scan_function: FIRST_SYM */
+#line 17044 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ha_read_mode = RFIRST; }
+#line 49910 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3379: /* handler_scan_function: NEXT_SYM */
+#line 17045 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ha_read_mode = RNEXT; }
+#line 49916 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3380: /* handler_rkey_function: FIRST_SYM */
+#line 17049 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ha_read_mode = RFIRST; }
+#line 49922 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3381: /* handler_rkey_function: NEXT_SYM */
+#line 17050 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ha_read_mode = RNEXT; }
+#line 49928 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3382: /* handler_rkey_function: PREV_SYM */
+#line 17051 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ha_read_mode = RPREV; }
+#line 49934 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3383: /* handler_rkey_function: LAST_SYM */
+#line 17052 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->ha_read_mode = RLAST; }
+#line 49940 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3384: /* $@246: %empty */
+#line 17054 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->ha_read_mode = RKEY;
+ lex->ha_rkey_mode=(yyvsp[0].ha_rkey_mode);
+ if (unlikely(!(lex->insert_list= new (thd->mem_root) List_item)))
+ MYSQL_YYABORT;
+ }
+#line 49952 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3385: /* handler_rkey_function: handler_rkey_mode $@246 '(' values ')' */
+#line 17062 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 49958 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3386: /* handler_rkey_mode: '=' */
+#line 17066 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ha_rkey_mode)=HA_READ_KEY_EXACT; }
+#line 49964 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3387: /* handler_rkey_mode: GE */
+#line 17067 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_NEXT; }
+#line 49970 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3388: /* handler_rkey_mode: LE */
+#line 17068 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_PREV; }
+#line 49976 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3389: /* handler_rkey_mode: '>' */
+#line 17069 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ha_rkey_mode)=HA_READ_AFTER_KEY; }
+#line 49982 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3390: /* handler_rkey_mode: '<' */
+#line 17070 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.ha_rkey_mode)=HA_READ_BEFORE_KEY; }
+#line 49988 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3391: /* revoke: REVOKE clear_privileges revoke_command */
+#line 17077 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 49994 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3392: /* revoke_command: grant_privileges ON opt_table grant_ident FROM user_and_role_list */
+#line 17082 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_revoke_table(thd, (yyvsp[-5].lex_grant), *(yyvsp[-2].lex_grant_ident)))
+ MYSQL_YYABORT;
+ }
+#line 50003 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3393: /* revoke_command: grant_privileges ON sp_handler grant_ident FROM user_and_role_list */
+#line 17087 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_revoke_sp(thd, (yyvsp[-5].lex_grant), *(yyvsp[-2].lex_grant_ident), *(yyvsp[-3].sp_handler)))
+ MYSQL_YYABORT;
+ }
+#line 50012 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3394: /* revoke_command: ALL opt_privileges ',' GRANT OPTION FROM user_and_role_list */
+#line 17092 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_REVOKE_ALL;
+ }
+#line 50020 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3395: /* revoke_command: PROXY_SYM ON user FROM user_list */
+#line 17096 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_revoke_proxy(thd, (yyvsp[-2].lex_user)))
+ MYSQL_YYABORT;
+ }
+#line 50029 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3396: /* revoke_command: admin_option_for_role FROM user_and_role_list */
+#line 17101 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_REVOKE_ROLE;
+ if (unlikely(Lex->users_list.push_front((yyvsp[-2].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 50039 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3397: /* admin_option_for_role: ADMIN_SYM OPTION FOR_SYM grant_role */
+#line 17110 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->with_admin_option= true; (yyval.lex_user)= (yyvsp[0].lex_user); }
+#line 50045 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3398: /* admin_option_for_role: grant_role */
+#line 17112 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->with_admin_option= false; (yyval.lex_user)= (yyvsp[0].lex_user); }
+#line 50051 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3399: /* grant: GRANT clear_privileges grant_command */
+#line 17117 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 50057 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3400: /* grant_command: grant_privileges ON opt_table grant_ident TO_SYM grant_list opt_require_clause opt_grant_options */
+#line 17123 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_grant_table(thd, (yyvsp[-7].lex_grant), *(yyvsp[-4].lex_grant_ident), (yyvsp[0].privilege)))
+ MYSQL_YYABORT;
+ }
+#line 50066 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3401: /* grant_command: grant_privileges ON sp_handler grant_ident TO_SYM grant_list opt_require_clause opt_grant_options */
+#line 17129 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_grant_sp(thd, (yyvsp[-7].lex_grant), *(yyvsp[-4].lex_grant_ident), *(yyvsp[-5].sp_handler), (yyvsp[0].privilege)))
+ MYSQL_YYABORT;
+ }
+#line 50075 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3402: /* grant_command: PROXY_SYM ON user TO_SYM grant_list opt_grant_option */
+#line 17134 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_grant_proxy(thd, (yyvsp[-3].lex_user), (yyvsp[0].privilege)))
+ MYSQL_YYABORT;
+ }
+#line 50084 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3403: /* grant_command: grant_role TO_SYM grant_list opt_with_admin_option */
+#line 17139 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->sql_command= SQLCOM_GRANT_ROLE;
+ /* The first role is the one that is granted */
+ if (unlikely(Lex->users_list.push_front((yyvsp[-3].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 50096 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3404: /* opt_with_admin: %empty */
+#line 17150 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->definer = 0; }
+#line 50102 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3405: /* opt_with_admin: WITH ADMIN_SYM user_or_role */
+#line 17151 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->definer = (yyvsp[0].lex_user); }
+#line 50108 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3406: /* opt_with_admin_option: %empty */
+#line 17155 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->with_admin_option= false; }
+#line 50114 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3407: /* opt_with_admin_option: WITH ADMIN_SYM OPTION */
+#line 17156 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->with_admin_option= true; }
+#line 50120 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3408: /* role_list: grant_role */
+#line 17161 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 50129 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3409: /* role_list: role_list ',' grant_role */
+#line 17166 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 50138 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3410: /* current_role: CURRENT_ROLE optional_braces */
+#line 17174 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!((yyval.lex_user)=(LEX_USER*) thd->calloc(sizeof(LEX_USER)))))
+ MYSQL_YYABORT;
+ (yyval.lex_user)->user= current_role;
+ }
+#line 50148 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3411: /* role_name: ident_or_text */
+#line 17183 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ CHARSET_INFO *cs= system_charset_info;
+ /* trim end spaces (as they'll be lost in mysql.user anyway) */
+ (yyvsp[0].lex_str).length= cs->lengthsp((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length);
+ ((char*) (yyvsp[0].lex_str).str)[(yyvsp[0].lex_str).length] = '\0';
+ if (unlikely((yyvsp[0].lex_str).length == 0))
+ my_yyabort_error((ER_INVALID_ROLE, MYF(0), ""));
+ if (unlikely(!((yyval.lex_user)=(LEX_USER*) thd->calloc(sizeof(LEX_USER)))))
+ MYSQL_YYABORT;
+ if (lex_string_eq(&(yyvsp[0].lex_str), &none))
+ (yyval.lex_user)->user= none;
+ else if (lex_string_eq(&(yyvsp[0].lex_str), &public_name))
+ (yyval.lex_user)->user= public_name;
+ else if (check_string_char_length(&((yyval.lex_user)->user= (yyvsp[0].lex_str)), ER_USERNAME,
+ username_char_length, cs, 0))
+ MYSQL_YYABORT;
+ (yyval.lex_user)->host= empty_clex_str;
+ }
+#line 50171 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3417: /* grant_privileges: ALL opt_privileges */
+#line 17213 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.lex_grant)= new (thd->mem_root) Lex_grant_privilege(GLOBAL_ACLS, true)))
+ MYSQL_YYABORT;
+ }
+#line 50180 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3420: /* object_privilege_list: object_privilege */
+#line 17226 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.lex_grant)= new (thd->mem_root) Lex_grant_privilege((yyvsp[0].privilege))))
+ MYSQL_YYABORT;
+ }
+#line 50189 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3421: /* object_privilege_list: column_list_privilege */
+#line 17231 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.lex_grant)= new (thd->mem_root) Lex_grant_privilege()) ||
+ (yyval.lex_grant)->add_column_list_privilege(thd, (yyvsp[0].column_list_privilege).m_columns[0],
+ (yyvsp[0].column_list_privilege).m_privilege))
+ MYSQL_YYABORT;
+ }
+#line 50200 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3422: /* object_privilege_list: object_privilege_list ',' object_privilege */
+#line 17238 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ ((yyval.lex_grant)= (yyvsp[-2].lex_grant))->add_object_privilege((yyvsp[0].privilege));
+ }
+#line 50208 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3423: /* object_privilege_list: object_privilege_list ',' column_list_privilege */
+#line 17242 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (((yyval.lex_grant)= (yyvsp[-2].lex_grant))->add_column_list_privilege(thd, (yyvsp[0].column_list_privilege).m_columns[0],
+ (yyvsp[0].column_list_privilege).m_privilege))
+ MYSQL_YYABORT;
+ }
+#line 50218 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3424: /* column_list_privilege: column_privilege '(' comma_separated_ident_list ')' */
+#line 17251 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.column_list_privilege)= Lex_column_list_privilege((yyvsp[-1].ident_sys_list), (yyvsp[-3].privilege));
+ }
+#line 50226 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3425: /* column_privilege: SELECT_SYM */
+#line 17257 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= SELECT_ACL; }
+#line 50232 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3426: /* column_privilege: INSERT */
+#line 17258 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= INSERT_ACL; }
+#line 50238 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3427: /* column_privilege: UPDATE_SYM */
+#line 17259 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= UPDATE_ACL; }
+#line 50244 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3428: /* column_privilege: REFERENCES */
+#line 17260 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= REFERENCES_ACL; }
+#line 50250 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3429: /* object_privilege: SELECT_SYM */
+#line 17264 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= SELECT_ACL; }
+#line 50256 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3430: /* object_privilege: INSERT */
+#line 17265 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= INSERT_ACL; }
+#line 50262 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3431: /* object_privilege: UPDATE_SYM */
+#line 17266 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= UPDATE_ACL; }
+#line 50268 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3432: /* object_privilege: REFERENCES */
+#line 17267 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= REFERENCES_ACL; }
+#line 50274 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3433: /* object_privilege: DELETE_SYM */
+#line 17268 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= DELETE_ACL;}
+#line 50280 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3434: /* object_privilege: USAGE */
+#line 17269 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= NO_ACL; }
+#line 50286 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3435: /* object_privilege: INDEX_SYM */
+#line 17270 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= INDEX_ACL;}
+#line 50292 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3436: /* object_privilege: ALTER */
+#line 17271 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= ALTER_ACL;}
+#line 50298 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3437: /* object_privilege: CREATE */
+#line 17272 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= CREATE_ACL;}
+#line 50304 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3438: /* object_privilege: DROP */
+#line 17273 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= DROP_ACL;}
+#line 50310 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3439: /* object_privilege: EXECUTE_SYM */
+#line 17274 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= EXECUTE_ACL;}
+#line 50316 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3440: /* object_privilege: RELOAD */
+#line 17275 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= RELOAD_ACL;}
+#line 50322 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3441: /* object_privilege: SHUTDOWN */
+#line 17276 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= SHUTDOWN_ACL;}
+#line 50328 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3442: /* object_privilege: PROCESS */
+#line 17277 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= PROCESS_ACL;}
+#line 50334 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3443: /* object_privilege: FILE_SYM */
+#line 17278 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= FILE_ACL;}
+#line 50340 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3444: /* object_privilege: GRANT OPTION */
+#line 17279 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= GRANT_ACL;}
+#line 50346 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3445: /* object_privilege: SHOW DATABASES */
+#line 17280 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= SHOW_DB_ACL;}
+#line 50352 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3446: /* object_privilege: SUPER_SYM */
+#line 17281 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= SUPER_ACL;}
+#line 50358 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3447: /* object_privilege: CREATE TEMPORARY TABLES */
+#line 17282 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= CREATE_TMP_ACL;}
+#line 50364 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3448: /* object_privilege: LOCK_SYM TABLES */
+#line 17283 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= LOCK_TABLES_ACL; }
+#line 50370 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3449: /* object_privilege: REPLICATION SLAVE */
+#line 17284 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= REPL_SLAVE_ACL; }
+#line 50376 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3450: /* object_privilege: REPLICATION CLIENT_SYM */
+#line 17285 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= BINLOG_MONITOR_ACL; /*Compatibility*/ }
+#line 50382 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3451: /* object_privilege: CREATE VIEW_SYM */
+#line 17286 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= CREATE_VIEW_ACL; }
+#line 50388 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3452: /* object_privilege: SHOW VIEW_SYM */
+#line 17287 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= SHOW_VIEW_ACL; }
+#line 50394 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3453: /* object_privilege: CREATE ROUTINE_SYM */
+#line 17288 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= CREATE_PROC_ACL; }
+#line 50400 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3454: /* object_privilege: ALTER ROUTINE_SYM */
+#line 17289 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= ALTER_PROC_ACL; }
+#line 50406 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3455: /* object_privilege: CREATE USER_SYM */
+#line 17290 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= CREATE_USER_ACL; }
+#line 50412 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3456: /* object_privilege: EVENT_SYM */
+#line 17291 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= EVENT_ACL;}
+#line 50418 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3457: /* object_privilege: TRIGGER_SYM */
+#line 17292 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= TRIGGER_ACL; }
+#line 50424 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3458: /* object_privilege: CREATE TABLESPACE */
+#line 17293 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= CREATE_TABLESPACE_ACL; }
+#line 50430 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3459: /* object_privilege: DELETE_SYM HISTORY_SYM */
+#line 17294 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= DELETE_HISTORY_ACL; }
+#line 50436 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3460: /* object_privilege: SET USER_SYM */
+#line 17295 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= SET_USER_ACL; }
+#line 50442 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3461: /* object_privilege: FEDERATED_SYM ADMIN_SYM */
+#line 17296 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= FEDERATED_ADMIN_ACL; }
+#line 50448 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3462: /* object_privilege: CONNECTION_SYM ADMIN_SYM */
+#line 17297 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= CONNECTION_ADMIN_ACL; }
+#line 50454 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3463: /* object_privilege: READ_SYM ONLY_SYM ADMIN_SYM */
+#line 17298 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= READ_ONLY_ADMIN_ACL; }
+#line 50460 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3464: /* object_privilege: READ_ONLY_SYM ADMIN_SYM */
+#line 17299 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= READ_ONLY_ADMIN_ACL; }
+#line 50466 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3465: /* object_privilege: BINLOG_SYM MONITOR_SYM */
+#line 17300 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= BINLOG_MONITOR_ACL; }
+#line 50472 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3466: /* object_privilege: BINLOG_SYM ADMIN_SYM */
+#line 17301 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= BINLOG_ADMIN_ACL; }
+#line 50478 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3467: /* object_privilege: BINLOG_SYM REPLAY_SYM */
+#line 17302 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= BINLOG_REPLAY_ACL; }
+#line 50484 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3468: /* object_privilege: REPLICATION MASTER_SYM ADMIN_SYM */
+#line 17303 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= REPL_MASTER_ADMIN_ACL; }
+#line 50490 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3469: /* object_privilege: REPLICATION SLAVE ADMIN_SYM */
+#line 17304 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= REPL_SLAVE_ADMIN_ACL; }
+#line 50496 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3470: /* object_privilege: SLAVE MONITOR_SYM */
+#line 17305 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= SLAVE_MONITOR_ACL; }
+#line 50502 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3471: /* opt_and: %empty */
+#line 17309 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 50508 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3472: /* opt_and: AND_SYM */
+#line 17310 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 50514 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3475: /* require_list_element: SUBJECT_SYM TEXT_STRING */
+#line 17320 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ if (lex->account_options.x509_subject.str)
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "SUBJECT"));
+ lex->account_options.x509_subject= (yyvsp[0].lex_string_with_metadata);
+ }
+#line 50525 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3476: /* require_list_element: ISSUER_SYM TEXT_STRING */
+#line 17327 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ if (lex->account_options.x509_issuer.str)
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "ISSUER"));
+ lex->account_options.x509_issuer= (yyvsp[0].lex_string_with_metadata);
+ }
+#line 50536 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3477: /* require_list_element: CIPHER_SYM TEXT_STRING */
+#line 17334 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ if (lex->account_options.ssl_cipher.str)
+ my_yyabort_error((ER_DUP_ARGUMENT, MYF(0), "CIPHER"));
+ lex->account_options.ssl_cipher= (yyvsp[0].lex_string_with_metadata);
+ }
+#line 50547 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3478: /* grant_ident: '*' */
+#line 17344 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX_CSTRING db;
+ if (unlikely(Lex->copy_db_to(&db)))
+ MYSQL_YYABORT;
+ if (!((yyval.lex_grant_ident)= new (thd->mem_root) Lex_grant_object_name(db,
+ Lex_grant_object_name::STAR)))
+ MYSQL_YYABORT;
+ }
+#line 50560 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3479: /* grant_ident: ident '.' '*' */
+#line 17353 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.lex_grant_ident)= new (thd->mem_root) Lex_grant_object_name((yyvsp[-2].ident_sys),
+ Lex_grant_object_name::IDENT_STAR)))
+ MYSQL_YYABORT;
+ }
+#line 50570 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3480: /* grant_ident: '*' '.' '*' */
+#line 17359 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.lex_grant_ident)= new (thd->mem_root) Lex_grant_object_name(
+ null_clex_str,
+ Lex_grant_object_name::STAR_STAR)))
+ MYSQL_YYABORT;
+ }
+#line 50581 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3481: /* grant_ident: table_ident */
+#line 17366 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.lex_grant_ident)= new (thd->mem_root) Lex_grant_object_name((yyvsp[0].table))))
+ MYSQL_YYABORT;
+ }
+#line 50590 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3482: /* user_list: user */
+#line 17374 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 50599 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3483: /* user_list: user_list ',' user */
+#line 17379 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 50608 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3484: /* grant_list: grant_user */
+#line 17387 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 50617 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3485: /* grant_list: grant_list ',' grant_user */
+#line 17392 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 50626 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3486: /* user_and_role_list: user_or_role */
+#line 17400 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 50635 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3487: /* user_and_role_list: user_and_role_list ',' user_or_role */
+#line 17405 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->users_list.push_back((yyvsp[0].lex_user), thd->mem_root)))
+ MYSQL_YYABORT;
+ }
+#line 50644 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3492: /* grant_user: user IDENTIFIED_SYM BY TEXT_STRING */
+#line 17416 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.lex_user)= (yyvsp[-3].lex_user);
+ (yyvsp[-3].lex_user)->auth= new (thd->mem_root) USER_AUTH();
+ (yyvsp[-3].lex_user)->auth->pwtext= (yyvsp[0].lex_string_with_metadata);
+ }
+#line 50654 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3493: /* grant_user: user IDENTIFIED_SYM BY PASSWORD_SYM TEXT_STRING */
+#line 17422 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.lex_user)= (yyvsp[-4].lex_user);
+ (yyvsp[-4].lex_user)->auth= new (thd->mem_root) USER_AUTH();
+ (yyvsp[-4].lex_user)->auth->auth_str= (yyvsp[0].lex_string_with_metadata);
+ }
+#line 50664 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3494: /* grant_user: user IDENTIFIED_SYM via_or_with auth_expression */
+#line 17428 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.lex_user)= (yyvsp[-3].lex_user);
+ (yyvsp[-3].lex_user)->auth= (yyvsp[0].user_auth);
+ }
+#line 50673 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3495: /* grant_user: user_or_role */
+#line 17433 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.lex_user)= (yyvsp[0].lex_user);
+ }
+#line 50681 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3496: /* auth_expression: auth_token OR_SYM auth_expression */
+#line 17440 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.user_auth)= (yyvsp[-2].user_auth);
+ DBUG_ASSERT((yyval.user_auth)->next == NULL);
+ (yyval.user_auth)->next= (yyvsp[0].user_auth);
+ }
+#line 50691 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3497: /* auth_expression: auth_token */
+#line 17446 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.user_auth)= (yyvsp[0].user_auth);
+ }
+#line 50699 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3498: /* auth_token: ident_or_text opt_auth_str */
+#line 17453 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.user_auth)= (yyvsp[0].user_auth);
+ (yyval.user_auth)->plugin= (yyvsp[-1].lex_str);
+ }
+#line 50708 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3499: /* opt_auth_str: %empty */
+#line 17461 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.user_auth)=(USER_AUTH*) thd->calloc(sizeof(USER_AUTH))))
+ MYSQL_YYABORT;
+ }
+#line 50717 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3500: /* opt_auth_str: using_or_as TEXT_STRING_sys */
+#line 17466 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.user_auth)=(USER_AUTH*) thd->calloc(sizeof(USER_AUTH))))
+ MYSQL_YYABORT;
+ (yyval.user_auth)->auth_str= (yyvsp[0].lex_str);
+ }
+#line 50727 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3501: /* opt_auth_str: using_or_as PASSWORD_SYM '(' TEXT_STRING ')' */
+#line 17472 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.user_auth)=(USER_AUTH*) thd->calloc(sizeof(USER_AUTH))))
+ MYSQL_YYABORT;
+ (yyval.user_auth)->pwtext= (yyvsp[-1].lex_string_with_metadata);
+ }
+#line 50737 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3503: /* opt_require_clause: REQUIRE_SYM require_list */
+#line 17482 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.ssl_type= SSL_TYPE_SPECIFIED;
+ }
+#line 50745 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3504: /* opt_require_clause: REQUIRE_SYM SSL_SYM */
+#line 17486 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.ssl_type= SSL_TYPE_ANY;
+ }
+#line 50753 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3505: /* opt_require_clause: REQUIRE_SYM X509_SYM */
+#line 17490 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.ssl_type= SSL_TYPE_X509;
+ }
+#line 50761 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3506: /* opt_require_clause: REQUIRE_SYM NONE_SYM */
+#line 17494 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.ssl_type= SSL_TYPE_NONE;
+ }
+#line 50769 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3507: /* resource_option: MAX_QUERIES_PER_HOUR ulong_num */
+#line 17501 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.questions=(yyvsp[0].ulong_num);
+ Lex->account_options.specified_limits|= USER_RESOURCES::QUERIES_PER_HOUR;
+ }
+#line 50778 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3508: /* resource_option: MAX_UPDATES_PER_HOUR ulong_num */
+#line 17506 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.updates=(yyvsp[0].ulong_num);
+ Lex->account_options.specified_limits|= USER_RESOURCES::UPDATES_PER_HOUR;
+ }
+#line 50787 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3509: /* resource_option: MAX_CONNECTIONS_PER_HOUR ulong_num */
+#line 17511 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.conn_per_hour= (yyvsp[0].ulong_num);
+ Lex->account_options.specified_limits|= USER_RESOURCES::CONNECTIONS_PER_HOUR;
+ }
+#line 50796 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3510: /* resource_option: MAX_USER_CONNECTIONS_SYM int_num */
+#line 17516 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.user_conn= (yyvsp[0].num);
+ Lex->account_options.specified_limits|= USER_RESOURCES::USER_CONNECTIONS;
+ }
+#line 50805 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3511: /* resource_option: MAX_STATEMENT_TIME_SYM NUM_literal */
+#line 17521 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->account_options.max_statement_time= (yyvsp[0].item_num)->val_real();
+ Lex->account_options.specified_limits|= USER_RESOURCES::MAX_STATEMENT_TIME;
+ }
+#line 50814 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3512: /* resource_option_list: resource_option_list resource_option */
+#line 17528 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 50820 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3513: /* resource_option_list: resource_option */
+#line 17529 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 50826 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3514: /* opt_resource_options: %empty */
+#line 17533 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 50832 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3516: /* opt_grant_options: %empty */
+#line 17539 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= NO_ACL; }
+#line 50838 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3517: /* opt_grant_options: WITH grant_option_list */
+#line 17540 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= (yyvsp[0].privilege); }
+#line 50844 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3518: /* opt_grant_option: %empty */
+#line 17544 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= NO_ACL; }
+#line 50850 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3519: /* opt_grant_option: WITH GRANT OPTION */
+#line 17545 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= GRANT_ACL; }
+#line 50856 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3520: /* grant_option_list: grant_option_list grant_option */
+#line 17549 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= (yyvsp[-1].privilege) | (yyvsp[0].privilege); }
+#line 50862 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3522: /* grant_option: GRANT OPTION */
+#line 17554 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= GRANT_ACL;}
+#line 50868 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3523: /* grant_option: resource_option */
+#line 17555 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.privilege)= NO_ACL; }
+#line 50874 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3524: /* $@247: %empty */
+#line 17560 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command = SQLCOM_BEGIN;
+ lex->start_transaction_opt= 0;
+ }
+#line 50884 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3525: /* begin_stmt_mariadb: BEGIN_MARIADB_SYM $@247 opt_work */
+#line 17565 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 50890 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3526: /* compound_statement: sp_proc_stmt_compound_ok */
+#line 17570 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command= SQLCOM_COMPOUND;
+ if (Lex->sp_body_finalize_procedure(thd))
+ MYSQL_YYABORT;
+ }
+#line 50900 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3527: /* opt_not: %empty */
+#line 17578 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 0; }
+#line 50906 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3528: /* opt_not: not */
+#line 17579 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= 1; }
+#line 50912 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3529: /* opt_work: %empty */
+#line 17583 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 50918 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3530: /* opt_work: WORK_SYM */
+#line 17584 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 50924 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3531: /* opt_chain: %empty */
+#line 17589 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.m_yes_no_unk)= TVL_UNKNOWN; }
+#line 50930 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3532: /* opt_chain: AND_SYM NO_SYM CHAIN_SYM */
+#line 17590 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.m_yes_no_unk)= TVL_NO; }
+#line 50936 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3533: /* opt_chain: AND_SYM CHAIN_SYM */
+#line 17591 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.m_yes_no_unk)= TVL_YES; }
+#line 50942 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3534: /* opt_release: %empty */
+#line 17596 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.m_yes_no_unk)= TVL_UNKNOWN; }
+#line 50948 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3535: /* opt_release: RELEASE_SYM */
+#line 17597 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.m_yes_no_unk)= TVL_YES; }
+#line 50954 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3536: /* opt_release: NO_SYM RELEASE_SYM */
+#line 17598 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.m_yes_no_unk)= TVL_NO; }
+#line 50960 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3537: /* commit: COMMIT_SYM opt_work opt_chain opt_release */
+#line 17603 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_COMMIT;
+ /* Don't allow AND CHAIN RELEASE. */
+ MYSQL_YYABORT_UNLESS((yyvsp[-1].m_yes_no_unk) != TVL_YES || (yyvsp[0].m_yes_no_unk) != TVL_YES);
+ lex->tx_chain= (yyvsp[-1].m_yes_no_unk);
+ lex->tx_release= (yyvsp[0].m_yes_no_unk);
+ }
+#line 50973 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3538: /* rollback: ROLLBACK_SYM opt_work opt_chain opt_release */
+#line 17615 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_ROLLBACK;
+ /* Don't allow AND CHAIN RELEASE. */
+ MYSQL_YYABORT_UNLESS((yyvsp[-1].m_yes_no_unk) != TVL_YES || (yyvsp[0].m_yes_no_unk) != TVL_YES);
+ lex->tx_chain= (yyvsp[-1].m_yes_no_unk);
+ lex->tx_release= (yyvsp[0].m_yes_no_unk);
+ }
+#line 50986 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3539: /* rollback: ROLLBACK_SYM opt_work TO_SYM SAVEPOINT_SYM ident */
+#line 17624 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_ROLLBACK_TO_SAVEPOINT;
+ lex->ident= (yyvsp[0].ident_sys);
+ }
+#line 50996 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3540: /* rollback: ROLLBACK_SYM opt_work TO_SYM ident */
+#line 17630 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_ROLLBACK_TO_SAVEPOINT;
+ lex->ident= (yyvsp[0].ident_sys);
+ }
+#line 51006 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3541: /* savepoint: SAVEPOINT_SYM ident */
+#line 17639 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_SAVEPOINT;
+ lex->ident= (yyvsp[0].ident_sys);
+ }
+#line 51016 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3542: /* release: RELEASE_SYM SAVEPOINT_SYM ident */
+#line 17648 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex=Lex;
+ lex->sql_command= SQLCOM_RELEASE_SAVEPOINT;
+ lex->ident= (yyvsp[0].ident_sys);
+ }
+#line 51026 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3543: /* unit_type_decl: UNION_SYM union_option */
+#line 17661 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.unit_operation).unit_type= UNION_TYPE; (yyval.unit_operation).distinct= (yyvsp[0].num); }
+#line 51032 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3544: /* unit_type_decl: INTERSECT_SYM union_option */
+#line 17663 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.unit_operation).unit_type= INTERSECT_TYPE; (yyval.unit_operation).distinct= (yyvsp[0].num); }
+#line 51038 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3545: /* unit_type_decl: EXCEPT_SYM union_option */
+#line 17665 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.unit_operation).unit_type= EXCEPT_TYPE; (yyval.unit_operation).distinct= (yyvsp[0].num); }
+#line 51044 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3546: /* union_option: %empty */
+#line 17672 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)=1; }
+#line 51050 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3547: /* union_option: DISTINCT */
+#line 17673 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)=1; }
+#line 51056 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3548: /* union_option: ALL */
+#line 17674 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)=0; }
+#line 51062 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3549: /* query_expression_option: STRAIGHT_JOIN */
+#line 17678 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->options|= SELECT_STRAIGHT_JOIN; }
+#line 51068 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3550: /* query_expression_option: HIGH_PRIORITY */
+#line 17680 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ YYPS->m_lock_type= TL_READ_HIGH_PRIORITY;
+ YYPS->m_mdl_type= MDL_SHARED_READ;
+ Select->options|= SELECT_HIGH_PRIORITY;
+ }
+#line 51078 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3551: /* query_expression_option: DISTINCT */
+#line 17685 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->options|= SELECT_DISTINCT; }
+#line 51084 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3552: /* query_expression_option: UNIQUE_SYM */
+#line 17686 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->options|= SELECT_DISTINCT; }
+#line 51090 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3553: /* query_expression_option: SQL_SMALL_RESULT */
+#line 17687 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->options|= SELECT_SMALL_RESULT; }
+#line 51096 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3554: /* query_expression_option: SQL_BIG_RESULT */
+#line 17688 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->options|= SELECT_BIG_RESULT; }
+#line 51102 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3555: /* query_expression_option: SQL_BUFFER_RESULT */
+#line 17689 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->options|= OPTION_BUFFER_RESULT; }
+#line 51108 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3556: /* query_expression_option: SQL_CALC_FOUND_ROWS */
+#line 17690 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->options|= OPTION_FOUND_ROWS; }
+#line 51114 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3557: /* query_expression_option: ALL */
+#line 17691 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Select->options|= SELECT_ALL; }
+#line 51120 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3560: /* no_definer: %empty */
+#line 17707 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ /*
+ We have to distinguish missing DEFINER-clause from case when
+ CURRENT_USER specified as definer explicitly in order to properly
+ handle CREATE TRIGGER statements which come to replication thread
+ from older master servers (i.e. to create non-suid trigger in this
+ case).
+ */
+ thd->lex->definer= 0;
+ }
+#line 51135 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3561: /* definer: DEFINER_SYM '=' user_or_role */
+#line 17721 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->definer= (yyvsp[0].lex_user);
+ Lex->account_options.reset();
+ }
+#line 51144 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3562: /* view_algorithm: ALGORITHM_SYM '=' UNDEFINED_SYM */
+#line 17734 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= DTYPE_ALGORITHM_UNDEFINED; }
+#line 51150 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3563: /* view_algorithm: ALGORITHM_SYM '=' MERGE_SYM */
+#line 17735 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= VIEW_ALGORITHM_MERGE; }
+#line 51156 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3564: /* view_algorithm: ALGORITHM_SYM '=' TEMPTABLE_SYM */
+#line 17736 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= VIEW_ALGORITHM_TMPTABLE; }
+#line 51162 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3565: /* opt_view_suid: %empty */
+#line 17740 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.view_suid)= VIEW_SUID_DEFAULT; }
+#line 51168 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3566: /* opt_view_suid: view_suid */
+#line 17741 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.view_suid)= (yyvsp[0].view_suid); }
+#line 51174 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3567: /* view_suid: SQL_SYM SECURITY_SYM DEFINER_SYM */
+#line 17745 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.view_suid)= VIEW_SUID_DEFINER; }
+#line 51180 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3568: /* view_suid: SQL_SYM SECURITY_SYM INVOKER_SYM */
+#line 17746 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.view_suid)= VIEW_SUID_INVOKER; }
+#line 51186 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3569: /* view_list_opt: %empty */
+#line 17751 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 51192 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3570: /* view_list_opt: '(' view_list ')' */
+#line 17752 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 51198 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3571: /* view_list: ident */
+#line 17757 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->view_list.push_back((LEX_CSTRING*)
+ thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING)),
+ thd->mem_root);
+ }
+#line 51208 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3572: /* view_list: view_list ',' ident */
+#line 17763 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->view_list.push_back((LEX_CSTRING*)
+ thd->memdup(&(yyvsp[0].ident_sys), sizeof(LEX_CSTRING)),
+ thd->mem_root);
+ }
+#line 51218 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3573: /* $@248: %empty */
+#line 17771 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->parsing_options.allows_variable= FALSE;
+ lex->create_view->select.str= (char *) YYLIP->get_cpp_ptr();
+ }
+#line 51228 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3574: /* view_select: $@248 query_expression view_check_option */
+#line 17778 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->parsed_create_view((yyvsp[-1].select_lex_unit), (yyvsp[0].num)))
+ MYSQL_YYABORT;
+ }
+#line 51237 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3575: /* view_check_option: %empty */
+#line 17785 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= VIEW_CHECK_NONE; }
+#line 51243 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3576: /* view_check_option: WITH CHECK_SYM OPTION */
+#line 17786 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= VIEW_CHECK_CASCADED; }
+#line 51249 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3577: /* view_check_option: WITH CASCADED CHECK_SYM OPTION */
+#line 17787 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= VIEW_CHECK_CASCADED; }
+#line 51255 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3578: /* view_check_option: WITH LOCAL_SYM CHECK_SYM OPTION */
+#line 17788 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= VIEW_CHECK_LOCAL; }
+#line 51261 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3579: /* trigger_action_order: FOLLOWS_SYM */
+#line 17799 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.trigger_action_order_type)= TRG_ORDER_FOLLOWS; }
+#line 51267 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3580: /* trigger_action_order: PRECEDES_SYM */
+#line 17801 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.trigger_action_order_type)= TRG_ORDER_PRECEDES; }
+#line 51273 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3581: /* trigger_follows_precedes_clause: %empty */
+#line 17806 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.trg_execution_order).ordering_clause= TRG_ORDER_NONE;
+ (yyval.trg_execution_order).anchor_trigger_name.str= NULL;
+ (yyval.trg_execution_order).anchor_trigger_name.length= 0;
+ }
+#line 51283 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3582: /* trigger_follows_precedes_clause: trigger_action_order ident_or_text */
+#line 17813 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.trg_execution_order).ordering_clause= (yyvsp[-1].trigger_action_order_type);
+ (yyval.trg_execution_order).anchor_trigger_name= (yyvsp[0].lex_str);
+ }
+#line 51292 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3583: /* $@249: %empty */
+#line 17822 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->add_create_options_with_check((yyvsp[0].object_ddl_options))))
+ MYSQL_YYABORT;
+ }
+#line 51301 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3584: /* $@250: %empty */
+#line 17831 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* $9 */
+ Lex->raw_trg_on_table_name_begin= YYLIP->get_tok_start();
+ }
+#line 51309 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3585: /* $@251: %empty */
+#line 17837 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* $13 */
+ Lex->raw_trg_on_table_name_end= YYLIP->get_tok_start();
+ }
+#line 51317 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3586: /* $@252: %empty */
+#line 17842 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->trg_chistics.ordering_clause_begin= YYLIP->get_cpp_ptr();
+ }
+#line 51325 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3587: /* $@253: %empty */
+#line 17846 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* $18 */
+ LEX *lex= thd->lex;
+ Lex_input_stream *lip= YYLIP;
+
+ if (unlikely(lex->sphead))
+ my_yyabort_error((ER_SP_NO_RECURSIVE_CREATE, MYF(0), "TRIGGER"));
+
+ lex->stmt_definition_begin= (yyvsp[-16].simple_string);
+ lex->ident.str= (yyvsp[-9].simple_string);
+ lex->ident.length= (yyvsp[-5].simple_string) - (yyvsp[-9].simple_string);
+ lex->spname= (yyvsp[-13].spname);
+ (*static_cast<st_trg_execution_order*>(&lex->trg_chistics))= ((yyvsp[0].trg_execution_order));
+ lex->trg_chistics.ordering_clause_end= lip->get_cpp_ptr();
+
+ if (unlikely(!lex->make_sp_head(thd, (yyvsp[-13].spname), &sp_handler_trigger,
+ DEFAULT_AGGREGATE)))
+ MYSQL_YYABORT;
+
+ lex->sphead->set_body_start(thd, lip->get_cpp_tok_start());
+ }
+#line 51350 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3588: /* trigger_tail: remember_name opt_if_not_exists $@249 sp_name trg_action_time trg_event ON remember_name $@250 table_ident FOR_SYM remember_name $@251 EACH_SYM ROW_SYM $@252 trigger_follows_precedes_clause $@253 sp_proc_stmt force_lookahead */
+#line 17867 "/home/buildbot/git/sql/sql_yacc.yy"
+ { /* $21 */
+ LEX *lex= Lex;
+
+ lex->sql_command= SQLCOM_CREATE_TRIGGER;
+ if (lex->sp_body_finalize_trigger(thd))
+ MYSQL_YYABORT;
+
+ /*
+ We have to do it after parsing trigger body, because some of
+ sp_proc_stmt alternatives are not saving/restoring LEX, so
+ lex->query_tables can be wiped out.
+ */
+ if (!lex->first_select_lex()->
+ add_table_to_list(thd, (yyvsp[-10].table), (LEX_CSTRING*) 0,
+ TL_OPTION_UPDATING, TL_READ_NO_INSERT,
+ MDL_SHARED_NO_WRITE))
+ MYSQL_YYABORT;
+ }
+#line 51373 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3589: /* $@254: %empty */
+#line 17895 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= Lex;
+ lex->init_last_field(&lex->sphead->m_return_field_def,
+ &empty_clex_str);
+ }
+#line 51383 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3590: /* sf_return_type: $@254 field_type */
+#line 17901 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sf_return_fill_definition((yyvsp[0].Lex_field_type))))
+ MYSQL_YYABORT;
+ }
+#line 51392 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3591: /* xa: XA_SYM begin_or_start xid opt_join_or_resume */
+#line 17911 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_XA_START;
+ }
+#line 51400 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3592: /* xa: XA_SYM END xid opt_suspend */
+#line 17915 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_XA_END;
+ }
+#line 51408 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3593: /* xa: XA_SYM PREPARE_SYM xid */
+#line 17919 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_XA_PREPARE;
+ }
+#line 51416 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3594: /* xa: XA_SYM COMMIT_SYM xid opt_one_phase */
+#line 17923 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_XA_COMMIT;
+ }
+#line 51424 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3595: /* xa: XA_SYM ROLLBACK_SYM xid */
+#line 17927 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_XA_ROLLBACK;
+ }
+#line 51432 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3596: /* xa: XA_SYM RECOVER_SYM opt_format_xid */
+#line 17931 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sql_command = SQLCOM_XA_RECOVER;
+ Lex->verbose= (yyvsp[0].num);
+ }
+#line 51441 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3597: /* opt_format_xid: %empty */
+#line 17938 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.num)= false; }
+#line 51447 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3598: /* opt_format_xid: FORMAT_SYM '=' ident_or_text */
+#line 17940 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (lex_string_eq(&(yyvsp[0].lex_str), STRING_WITH_LEN("SQL")))
+ (yyval.num)= true;
+ else if (lex_string_eq(&(yyvsp[0].lex_str), STRING_WITH_LEN("RAW")))
+ (yyval.num)= false;
+ else
+ {
+ my_yyabort_error((ER_UNKNOWN_EXPLAIN_FORMAT, MYF(0),
+ "XA RECOVER", (yyvsp[0].lex_str).str));
+ (yyval.num)= false;
+ }
+ }
+#line 51464 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3599: /* xid: text_string */
+#line 17956 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[0].string)->length() <= MAXGTRIDSIZE);
+ if (unlikely(!(Lex->xid=(XID *)thd->alloc(sizeof(XID)))))
+ MYSQL_YYABORT;
+ Lex->xid->set(1L, (yyvsp[0].string)->ptr(), (yyvsp[0].string)->length(), 0, 0);
+ }
+#line 51475 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3600: /* xid: text_string ',' text_string */
+#line 17963 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-2].string)->length() <= MAXGTRIDSIZE && (yyvsp[0].string)->length() <= MAXBQUALSIZE);
+ if (unlikely(!(Lex->xid=(XID *)thd->alloc(sizeof(XID)))))
+ MYSQL_YYABORT;
+ Lex->xid->set(1L, (yyvsp[-2].string)->ptr(), (yyvsp[-2].string)->length(), (yyvsp[0].string)->ptr(), (yyvsp[0].string)->length());
+ }
+#line 51486 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3601: /* xid: text_string ',' text_string ',' ulong_num */
+#line 17970 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ MYSQL_YYABORT_UNLESS((yyvsp[-4].string)->length() <= MAXGTRIDSIZE &&
+ (yyvsp[-2].string)->length() <= MAXBQUALSIZE &&
+ (yyvsp[0].ulong_num) <= static_cast<ulong>(
+ std::numeric_limits<int32_t>::max()));
+ if (unlikely(!(Lex->xid=(XID *)thd->alloc(sizeof(XID)))))
+ MYSQL_YYABORT;
+ Lex->xid->set((yyvsp[0].ulong_num), (yyvsp[-4].string)->ptr(), (yyvsp[-4].string)->length(), (yyvsp[-2].string)->ptr(), (yyvsp[-2].string)->length());
+ }
+#line 51500 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3602: /* begin_or_start: BEGIN_MARIADB_SYM */
+#line 17982 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 51506 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3603: /* begin_or_start: BEGIN_ORACLE_SYM */
+#line 17983 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 51512 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3604: /* begin_or_start: START_SYM */
+#line 17984 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 51518 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3605: /* opt_join_or_resume: %empty */
+#line 17988 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->xa_opt=XA_NONE; }
+#line 51524 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3606: /* opt_join_or_resume: JOIN_SYM */
+#line 17989 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->xa_opt=XA_JOIN; }
+#line 51530 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3607: /* opt_join_or_resume: RESUME_SYM */
+#line 17990 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->xa_opt=XA_RESUME; }
+#line 51536 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3608: /* opt_one_phase: %empty */
+#line 17994 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->xa_opt=XA_NONE; }
+#line 51542 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3609: /* opt_one_phase: ONE_SYM PHASE_SYM */
+#line 17995 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->xa_opt=XA_ONE_PHASE; }
+#line 51548 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3610: /* opt_suspend: %empty */
+#line 18000 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->xa_opt=XA_NONE; }
+#line 51554 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3611: /* $@255: %empty */
+#line 18002 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->xa_opt=XA_SUSPEND; }
+#line 51560 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3613: /* opt_migrate: %empty */
+#line 18007 "/home/buildbot/git/sql/sql_yacc.yy"
+ {}
+#line 51566 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3614: /* opt_migrate: FOR_SYM MIGRATE_SYM */
+#line 18008 "/home/buildbot/git/sql/sql_yacc.yy"
+ { Lex->xa_opt=XA_FOR_MIGRATE; }
+#line 51572 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3615: /* install: INSTALL_SYM PLUGIN_SYM opt_if_not_exists ident SONAME_SYM TEXT_STRING_sys */
+#line 18013 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_install_plugin((yyvsp[-3].object_ddl_options), (yyvsp[-2].ident_sys), (yyvsp[0].lex_str)))
+ MYSQL_YYABORT;
+ }
+#line 51581 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3616: /* install: INSTALL_SYM SONAME_SYM TEXT_STRING_sys */
+#line 18018 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->stmt_install_plugin((yyvsp[0].lex_str));
+ }
+#line 51589 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3617: /* uninstall: UNINSTALL_SYM PLUGIN_SYM opt_if_exists ident */
+#line 18025 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_uninstall_plugin_by_name((yyvsp[-1].object_ddl_options), (yyvsp[0].ident_sys)))
+ MYSQL_YYABORT;
+ }
+#line 51598 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3618: /* uninstall: UNINSTALL_SYM SONAME_SYM opt_if_exists TEXT_STRING_sys */
+#line 18030 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_uninstall_plugin_by_soname((yyvsp[-1].object_ddl_options), (yyvsp[0].lex_str)))
+ MYSQL_YYABORT;
+ }
+#line 51607 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3619: /* keep_gcc_happy: IMPOSSIBLE_ACTION */
+#line 18039 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ YYERROR;
+ }
+#line 51615 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3653: /* row_field_name: ident */
+#line 18122 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (!((yyval.spvar_definition)= Lex->row_field_name(thd, (yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 51624 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3654: /* $@256: %empty */
+#line 18130 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely((yyvsp[-1].expr_lex)->sp_while_loop_expression(thd)))
+ MYSQL_YYABORT;
+ }
+#line 51633 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3655: /* while_body: expr_lex DO_SYM $@256 sp_proc_stmts1 END WHILE_SYM */
+#line 18135 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_while_loop_finalize(thd)))
+ MYSQL_YYABORT;
+ }
+#line 51642 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3656: /* for_loop_statements: DO_SYM sp_proc_stmts1 END FOR_SYM */
+#line 18143 "/home/buildbot/git/sql/sql_yacc.yy"
+ { }
+#line 51648 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3657: /* sp_label: label_ident ':' */
+#line 18147 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.lex_str)= (yyvsp[-1].ident_sys); }
+#line 51654 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3659: /* sp_block_label: sp_label */
+#line 18156 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->spcont->block_label_declare(&(yyvsp[0].lex_str))))
+ MYSQL_YYABORT;
+ (yyval.lex_str)= (yyvsp[0].lex_str);
+ }
+#line 51664 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3660: /* sp_opt_default: _empty */
+#line 18164 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item) = NULL; }
+#line 51670 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3661: /* sp_opt_default: DEFAULT expr */
+#line 18165 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.item) = (yyvsp[0].item); }
+#line 51676 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3662: /* sp_decl_variable_list_anchored: sp_decl_idents_init_vars TYPE_SYM OF_SYM optionally_qualified_column_ident sp_opt_default */
+#line 18172 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_variable_declarations_with_ref_finalize(thd, (yyvsp[-4].num), (yyvsp[-1].qualified_column_ident), (yyvsp[0].item))))
+ MYSQL_YYABORT;
+ (yyval.spblock).init_using_vars((yyvsp[-4].num));
+ }
+#line 51686 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3663: /* sp_decl_variable_list_anchored: sp_decl_idents_init_vars ROW_SYM TYPE_SYM OF_SYM optionally_qualified_column_ident sp_opt_default */
+#line 18180 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_variable_declarations_rowtype_finalize(thd, (yyvsp[-5].num), (yyvsp[-1].qualified_column_ident), (yyvsp[0].item))))
+ MYSQL_YYABORT;
+ (yyval.spblock).init_using_vars((yyvsp[-5].num));
+ }
+#line 51696 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3664: /* sp_param_name_and_mode: sp_parameter_type sp_param_name */
+#line 18189 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyvsp[0].spvar)->mode= (yyvsp[-1].spvar_mode);
+ (yyval.spvar)= (yyvsp[0].spvar);
+ }
+#line 51705 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3666: /* sp_param: sp_param_name_and_mode field_type */
+#line 18198 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_param_fill_definition((yyval.spvar)= (yyvsp[-1].spvar), (yyvsp[0].Lex_field_type))))
+ MYSQL_YYABORT;
+ }
+#line 51714 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3667: /* sp_param: sp_param_name_and_mode ROW_SYM row_type_body */
+#line 18203 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sphead->spvar_fill_row(thd, (yyval.spvar)= (yyvsp[-2].spvar), (yyvsp[0].spvar_definition_list))))
+ MYSQL_YYABORT;
+ }
+#line 51723 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3669: /* sp_param_anchored: sp_param_name_and_mode TYPE_SYM OF_SYM ident '.' ident */
+#line 18212 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sphead->spvar_fill_type_reference(thd,
+ (yyval.spvar)= (yyvsp[-5].spvar), (yyvsp[-2].ident_sys),
+ (yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 51734 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3670: /* sp_param_anchored: sp_param_name_and_mode TYPE_SYM OF_SYM ident '.' ident '.' ident */
+#line 18219 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sphead->spvar_fill_type_reference(thd, (yyval.spvar)= (yyvsp[-7].spvar),
+ (yyvsp[-4].ident_sys), (yyvsp[-2].ident_sys), (yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 51744 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3671: /* sp_param_anchored: sp_param_name_and_mode ROW_SYM TYPE_SYM OF_SYM ident */
+#line 18225 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sphead->spvar_fill_table_rowtype_reference(thd, (yyval.spvar)= (yyvsp[-4].spvar), (yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 51753 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3672: /* sp_param_anchored: sp_param_name_and_mode ROW_SYM TYPE_SYM OF_SYM ident '.' ident */
+#line 18230 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sphead->spvar_fill_table_rowtype_reference(thd, (yyval.spvar)= (yyvsp[-6].spvar), (yyvsp[-2].ident_sys), (yyvsp[0].ident_sys))))
+ MYSQL_YYABORT;
+ }
+#line 51762 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3673: /* $@257: %empty */
+#line 18239 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ LEX *lex= thd->lex;
+ lex->sphead->set_c_chistics(lex->sp_chistics);
+ lex->sphead->set_body_start(thd, YYLIP->get_cpp_tok_start());
+ }
+#line 51772 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3674: /* sf_c_chistics_and_body_standalone: sp_c_chistics $@257 sp_proc_stmt_in_returns_clause force_lookahead */
+#line 18245 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_body_finalize_function(thd)))
+ MYSQL_YYABORT;
+ }
+#line 51781 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3675: /* $@258: %empty */
+#line 18253 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(!Lex->make_sp_head_no_recursive(thd, (yyvsp[0].spname),
+ &sp_handler_procedure,
+ DEFAULT_AGGREGATE)))
+ MYSQL_YYABORT;
+ }
+#line 51792 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3676: /* $@259: %empty */
+#line 18261 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sphead->set_c_chistics(Lex->sp_chistics);
+ Lex->sphead->set_body_start(thd, YYLIP->get_cpp_tok_start());
+ }
+#line 51801 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3677: /* sp_tail_standalone: sp_name $@258 sp_parenthesized_pdparam_list sp_c_chistics $@259 sp_proc_stmt force_lookahead */
+#line 18266 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_body_finalize_procedure(thd)))
+ MYSQL_YYABORT;
+ }
+#line 51810 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3678: /* drop_routine: DROP FUNCTION_SYM opt_if_exists ident '.' ident */
+#line 18274 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_drop_function((yyvsp[-3].object_ddl_options), (yyvsp[-2].ident_sys), (yyvsp[0].ident_sys)))
+ MYSQL_YYABORT;
+ }
+#line 51819 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3679: /* drop_routine: DROP FUNCTION_SYM opt_if_exists ident */
+#line 18279 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_drop_function((yyvsp[-1].object_ddl_options), (yyvsp[0].ident_sys)))
+ MYSQL_YYABORT;
+ }
+#line 51828 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3680: /* drop_routine: DROP PROCEDURE_SYM opt_if_exists sp_name */
+#line 18284 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_drop_procedure((yyvsp[-1].object_ddl_options), (yyvsp[0].spname)))
+ MYSQL_YYABORT;
+ }
+#line 51837 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3681: /* $@260: %empty */
+#line 18293 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_create_procedure_start((yyvsp[-3].object_ddl_options) | (yyvsp[0].object_ddl_options)))
+ MYSQL_YYABORT;
+ }
+#line 51846 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3682: /* create_routine: create_or_replace definer_opt PROCEDURE_SYM opt_if_not_exists $@260 sp_tail_standalone */
+#line 18298 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->stmt_create_routine_finalize();
+ }
+#line 51854 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3683: /* $@261: %empty */
+#line 18303 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_create_stored_function_start((yyvsp[-5].object_ddl_options) | (yyvsp[-1].object_ddl_options), (yyvsp[-3].sp_aggregate_type), (yyvsp[0].spname)))
+ MYSQL_YYABORT;
+ }
+#line 51863 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3684: /* create_routine: create_or_replace definer opt_aggregate FUNCTION_SYM opt_if_not_exists sp_name $@261 sp_parenthesized_fdparam_list RETURNS_SYM sf_return_type sf_c_chistics_and_body_standalone */
+#line 18310 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->stmt_create_routine_finalize();
+ }
+#line 51871 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3685: /* $@262: %empty */
+#line 18315 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_create_stored_function_start((yyvsp[-5].object_ddl_options) | (yyvsp[-1].object_ddl_options), (yyvsp[-3].sp_aggregate_type), (yyvsp[0].spname)))
+ MYSQL_YYABORT;
+ }
+#line 51880 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3686: /* create_routine: create_or_replace no_definer opt_aggregate FUNCTION_SYM opt_if_not_exists sp_name $@262 sp_parenthesized_fdparam_list RETURNS_SYM sf_return_type sf_c_chistics_and_body_standalone */
+#line 18322 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->stmt_create_routine_finalize();
+ }
+#line 51888 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3687: /* create_routine: create_or_replace no_definer opt_aggregate FUNCTION_SYM opt_if_not_exists ident RETURNS_SYM udf_type SONAME_SYM TEXT_STRING_sys */
+#line 18327 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (Lex->stmt_create_udf_function((yyvsp[-9].object_ddl_options) | (yyvsp[-5].object_ddl_options), (yyvsp[-7].sp_aggregate_type), (yyvsp[-4].ident_sys),
+ (Item_result) (yyvsp[-2].num), (yyvsp[0].lex_str)))
+ MYSQL_YYABORT;
+ }
+#line 51898 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3688: /* sp_decls: _empty */
+#line 18337 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ (yyval.spblock).init();
+ }
+#line 51906 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3689: /* sp_decls: sp_decls sp_decl ';' */
+#line 18341 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ // We check for declarations out of (standard) order this way
+ // because letting the grammar rules reflect it caused tricky
+ // shift/reduce conflicts with the wrong result. (And we get
+ // better error handling this way.)
+ if (unlikely(Lex->sp_declarations_join(&(yyval.spblock), (yyvsp[-2].spblock), (yyvsp[-1].spblock))))
+ MYSQL_YYABORT;
+ }
+#line 51919 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3690: /* sp_decl: DECLARE_MARIADB_SYM sp_decl_body */
+#line 18352 "/home/buildbot/git/sql/sql_yacc.yy"
+ { (yyval.spblock)= (yyvsp[0].spblock); }
+#line 51925 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3692: /* sp_decl_body: sp_decl_ident CONDITION_SYM FOR_SYM sp_cond */
+#line 18359 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->spcont->declare_condition(thd, &(yyvsp[-3].ident_sys), (yyvsp[0].spcondvalue))))
+ MYSQL_YYABORT;
+ (yyval.spblock).vars= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0;
+ (yyval.spblock).conds= 1;
+ }
+#line 51936 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3694: /* $@263: %empty */
+#line 18367 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sp_block_init(thd);
+ }
+#line 51944 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3695: /* sp_decl_body: sp_decl_ident CURSOR_SYM $@263 opt_parenthesized_cursor_formal_parameters FOR_SYM sp_cursor_stmt */
+#line 18372 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ sp_pcontext *param_ctx= Lex->spcont;
+ if (unlikely(Lex->sp_block_finalize(thd)))
+ MYSQL_YYABORT;
+ if (unlikely(Lex->sp_declare_cursor(thd, &(yyvsp[-5].ident_sys), (yyvsp[0].sp_cursor_stmt), param_ctx, true)))
+ MYSQL_YYABORT;
+ (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).hndlrs= 0;
+ (yyval.spblock).curs= 1;
+ }
+#line 51958 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3713: /* $@264: %empty */
+#line 18423 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sp_block_init(thd, &(yyvsp[-1].lex_str));
+ }
+#line 51966 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3714: /* sp_labeled_block: sp_block_label BEGIN_MARIADB_SYM $@264 sp_decls sp_proc_stmts END sp_opt_label */
+#line 18430 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_block_finalize(thd, (yyvsp[-3].spblock), &(yyvsp[0].lex_str))))
+ MYSQL_YYABORT;
+ }
+#line 51975 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3715: /* $@265: %empty */
+#line 18438 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ Lex->sp_block_init(thd);
+ }
+#line 51983 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3716: /* sp_unlabeled_block: BEGIN_MARIADB_SYM $@265 sp_decls sp_proc_stmts END */
+#line 18444 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_block_finalize(thd, (yyvsp[-2].spblock))))
+ MYSQL_YYABORT;
+ }
+#line 51992 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3717: /* $@266: %empty */
+#line 18452 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->maybe_start_compound_statement(thd)))
+ MYSQL_YYABORT;
+ Lex->sp_block_init(thd);
+ }
+#line 52002 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+ case 3718: /* sp_unlabeled_block_not_atomic: BEGIN_MARIADB_SYM not ATOMIC_SYM $@266 sp_decls sp_proc_stmts END */
+#line 18460 "/home/buildbot/git/sql/sql_yacc.yy"
+ {
+ if (unlikely(Lex->sp_block_finalize(thd, (yyvsp[-2].spblock))))
+ MYSQL_YYABORT;
+ }
+#line 52011 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+ break;
+
+
+#line 52015 "/home/buildbot/git/mkdist/sql/yy_mariadb.cc"
+
+ default: break;
+ }
+ /* User semantic actions sometimes alter yychar, and that requires
+ that yytoken be updated with the new translation. We take the
+ approach of translating immediately before every use of yytoken.
+ One alternative is translating here after every semantic action,
+ but that translation would be missed if the semantic action invokes
+ YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
+ if it invokes YYBACKUP. In the case of YYABORT or YYACCEPT, an
+ incorrect destructor might then be invoked immediately. In the
+ case of YYERROR or YYBACKUP, subsequent parser actions might lead
+ to an incorrect destructor call or verbose syntax error message
+ before the lookahead is translated. */
+ YY_SYMBOL_PRINT ("-> $$ =", YY_CAST (yysymbol_kind_t, yyr1[yyn]), &yyval, &yyloc);
+
+ YYPOPSTACK (yylen);
+ yylen = 0;
+
+ *++yyvsp = yyval;
+
+ /* Now 'shift' the result of the reduction. Determine what state
+ that goes to, based on the state we popped back to and the rule
+ number reduced by. */
+ {
+ const int yylhs = yyr1[yyn] - YYNTOKENS;
+ const int yyi = yypgoto[yylhs] + *yyssp;
+ yystate = (0 <= yyi && yyi <= YYLAST && yycheck[yyi] == *yyssp
+ ? yytable[yyi]
+ : yydefgoto[yylhs]);
+ }
+
+ goto yynewstate;
+
+
+/*--------------------------------------.
+| yyerrlab -- here on detecting error. |
+`--------------------------------------*/
+yyerrlab:
+ /* Make sure we have latest lookahead translation. See comments at
+ user semantic actions for why this is necessary. */
+ yytoken = yychar == YYEMPTY ? YYSYMBOL_YYEMPTY : YYTRANSLATE (yychar);
+ /* If not already recovering from an error, report this error. */
+ if (!yyerrstatus)
+ {
+ ++yynerrs;
+ yyerror (thd, YY_("syntax error"));
+ }
+
+ if (yyerrstatus == 3)
+ {
+ /* If just tried and failed to reuse lookahead token after an
+ error, discard it. */
+
+ if (yychar <= YYEOF)
+ {
+ /* Return failure if at end of input. */
+ if (yychar == YYEOF)
+ YYABORT;
+ }
+ else
+ {
+ yydestruct ("Error: discarding",
+ yytoken, &yylval, thd);
+ yychar = YYEMPTY;
+ }
+ }
+
+ /* Else will try to reuse lookahead token after shifting the error
+ token. */
+ goto yyerrlab1;
+
+
+/*---------------------------------------------------.
+| yyerrorlab -- error raised explicitly by YYERROR. |
+`---------------------------------------------------*/
+yyerrorlab:
+ /* Pacify compilers when the user code never invokes YYERROR and the
+ label yyerrorlab therefore never appears in user code. */
+ if (0)
+ YYERROR;
+ ++yynerrs;
+
+ /* Do not reclaim the symbols of the rule whose action triggered
+ this YYERROR. */
+ YYPOPSTACK (yylen);
+ yylen = 0;
+ YY_STACK_PRINT (yyss, yyssp);
+ yystate = *yyssp;
+ goto yyerrlab1;
+
+
+/*-------------------------------------------------------------.
+| yyerrlab1 -- common code for both syntax error and YYERROR. |
+`-------------------------------------------------------------*/
+yyerrlab1:
+ yyerrstatus = 3; /* Each real token shifted decrements this. */
+
+ /* Pop stack until we find a state that shifts the error token. */
+ for (;;)
+ {
+ yyn = yypact[yystate];
+ if (!yypact_value_is_default (yyn))
+ {
+ yyn += YYSYMBOL_YYerror;
+ if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYSYMBOL_YYerror)
+ {
+ yyn = yytable[yyn];
+ if (0 < yyn)
+ break;
+ }
+ }
+
+ /* Pop the current state because it cannot handle the error token. */
+ if (yyssp == yyss)
+ YYABORT;
+
+
+ yydestruct ("Error: popping",
+ YY_ACCESSING_SYMBOL (yystate), yyvsp, thd);
+ YYPOPSTACK (1);
+ yystate = *yyssp;
+ YY_STACK_PRINT (yyss, yyssp);
+ }
+
+ YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
+ *++yyvsp = yylval;
+ YY_IGNORE_MAYBE_UNINITIALIZED_END
+
+
+ /* Shift the error token. */
+ YY_SYMBOL_PRINT ("Shifting", YY_ACCESSING_SYMBOL (yyn), yyvsp, yylsp);
+
+ yystate = yyn;
+ goto yynewstate;
+
+
+/*-------------------------------------.
+| yyacceptlab -- YYACCEPT comes here. |
+`-------------------------------------*/
+yyacceptlab:
+ yyresult = 0;
+ goto yyreturnlab;
+
+
+/*-----------------------------------.
+| yyabortlab -- YYABORT comes here. |
+`-----------------------------------*/
+yyabortlab:
+ yyresult = 1;
+ goto yyreturnlab;
+
+
+/*-----------------------------------------------------------.
+| yyexhaustedlab -- YYNOMEM (memory exhaustion) comes here. |
+`-----------------------------------------------------------*/
+yyexhaustedlab:
+ yyerror (thd, YY_("memory exhausted"));
+ yyresult = 2;
+ goto yyreturnlab;
+
+
+/*----------------------------------------------------------.
+| yyreturnlab -- parsing is finished, clean up and return. |
+`----------------------------------------------------------*/
+yyreturnlab:
+ if (yychar != YYEMPTY)
+ {
+ /* Make sure we have latest lookahead translation. See comments at
+ user semantic actions for why this is necessary. */
+ yytoken = YYTRANSLATE (yychar);
+ yydestruct ("Cleanup: discarding lookahead",
+ yytoken, &yylval, thd);
+ }
+ /* Do not reclaim the symbols of the rule whose action triggered
+ this YYABORT or YYACCEPT. */
+ YYPOPSTACK (yylen);
+ YY_STACK_PRINT (yyss, yyssp);
+ while (yyssp != yyss)
+ {
+ yydestruct ("Cleanup: popping",
+ YY_ACCESSING_SYMBOL (+*yyssp), yyvsp, thd);
+ YYPOPSTACK (1);
+ }
+#ifndef yyoverflow
+ if (yyss != yyssa)
+ YYSTACK_FREE (yyss);
+#endif
+
+ return yyresult;
+}
+