Server IP : 172.67.216.182 / Your IP : 162.158.170.172 Web Server : Apache System : Linux krdc-ubuntu-s-2vcpu-4gb-amd-blr1-01.localdomain 5.15.0-142-generic #152-Ubuntu SMP Mon May 19 10:54:31 UTC 2025 x86_64 User : www ( 1000) PHP Version : 7.4.33 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /www/server/mysql/src/sql/ |
Upload File : |
/* A Bison parser, made by GNU Bison 3.0.4. */ /* Bison implementation for Yacc-like parsers in C Copyright (C) 1984, 1989-1990, 2000-2015 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 <http://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. */ /* 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. */ #define YYBISON 1 /* Bison version. */ #define YYBISON_VERSION "3.0.4" /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" /* 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 /* Copy the first part of user declarations. */ #line 31 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:339 */ /* Note: YYTHD is passed as an argument to yyparse(), and subsequently to yylex(). */ #define YYLIP (& YYTHD->m_parser_state->m_lip) #define YYPS (& YYTHD->m_parser_state->m_yacc) #define YYCSCL (YYLIP->query_charset) #define YYCLIENT_NO_SCHEMA (YYTHD->get_protocol()->has_client_capability(CLIENT_NO_SCHEMA)) #define YYINITDEPTH 100 #define YYMAXDEPTH 3200 /* Because of 64K stack */ #define Lex (YYTHD->lex) #define Select Lex->current_select() #include "sql_parse.h" /* comp_*_creator */ #include "sql_table.h" /* primary_key_name */ #include "partition_info.h" /* partition_info */ #include "sql_partition.h" /* mem_alloc_error */ #include "auth_common.h" /* *_ACL */ #include "password.h" /* my_make_scrambled_password_323, my_make_scrambled_password */ #include "sql_class.h" /* Key_part_spec, enum_filetype */ #include "rpl_slave.h" #include "rpl_msr.h" /* multisource replication */ #include "rpl_filter.h" #include "log_event.h" #include "lex_symbol.h" #include "item_create.h" #include "sp_head.h" #include "sp_instr.h" #include "sp_pcontext.h" #include "sp_rcontext.h" #include "sp.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_servers.h" #include "event_parse_data.h" #include <myisam.h> #include <myisammrg.h> #include "keycaches.h" #include "set_var.h" #include "opt_explain_traditional.h" #include "opt_explain_json.h" #include "rpl_slave.h" // Sql_cmd_change_repl_filter #include "sql_show_status.h" // build_show_session_status, ... #include "parse_location.h" #include "parse_tree_helpers.h" #include "lex_token.h" #include "item_cmpfunc.h" #include "item_geofunc.h" #include "item_json_func.h" #include "sql_plugin.h" // plugin_is_ready #include "parse_tree_hints.h" #include "sql_show_processlist.h" /* this is to get the bison compilation windows warnings out */ #ifdef _MSC_VER /* warning C4065: switch statement contains 'default' but no 'case' labels */ #pragma warning (disable : 4065) #endif using std::min; using std::max; int yylex(void *yylval, void *yythd); #define yyoverflow(A,B,C,D,E,F,G,H) \ { \ ulong val= *(H); \ if (my_yyoverflow((B), (D), (F), &val)) \ { \ yyerror(NULL, YYTHD, (char*) (A)); \ return 2; \ } \ else \ { \ *(H)= (YYSIZE_T)val; \ } \ } #define MYSQL_YYABORT \ do \ { \ LEX::cleanup_lex_after_parse_error(YYTHD);\ YYABORT; \ } while (0) #define MYSQL_YYABORT_UNLESS(A) \ if (!(A)) \ { \ my_syntax_error(ER(ER_SYNTAX_ERROR));\ MYSQL_YYABORT; \ } #define NEW_PTN new(YYTHD->mem_root) /** Parse_tree_node::contextualize_() function call wrapper */ #define TMP_CONTEXTUALIZE(x) \ do \ { \ Parse_context pc(YYTHD, Select);\ if ((x)->contextualize_(&pc)) \ MYSQL_YYABORT; \ } while(0) /** Parse_tree_node::contextualize() function call wrapper */ #define CONTEXTUALIZE(x) \ do \ { \ Parse_context pc(YYTHD, Select); \ if (YYTHD->is_error() || (x)->contextualize(&pc)) \ MYSQL_YYABORT; \ } while(0) /** Item::itemize() function call wrapper */ #define ITEMIZE(x, y) \ do \ { \ Parse_context pc(YYTHD, Select); \ if (YYTHD->is_error() || (x)->itemize(&pc, (y))) \ MYSQL_YYABORT; \ } while(0) /** PT_statement::make_cmd() wrapper to raise postponed error message on OOM @note x may be NULL because of OOM error. */ #define MAKE_CMD(x) \ do \ { \ if (YYTHD->is_error()) \ MYSQL_YYABORT; \ Lex->m_sql_cmd= (x)->make_cmd(YYTHD); \ } while(0) #ifndef NDEBUG #define YYDEBUG 1 #else #define YYDEBUG 0 #endif /** @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 my_syntax_error or my_error to push an error into the error stack and MYSQL_YYABORT to abort from the parser. */ void MYSQLerror(YYLTYPE *, THD *thd, const char *s) { /* Restore the original LEX if it was replaced when parsing a stored procedure. We must ensure that a parsing error does not leave any side effects in the THD. */ LEX::cleanup_lex_after_parse_error(thd); /* "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(ER_SYNTAX_ERROR); my_syntax_error(s); } #ifndef NDEBUG void turn_parser_debug_on() { /* MYSQLdebug is in sql/sql_yacc.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="d,parser_debug" ... - Running a test : mysql-test-run.pl --mysqld="--debug=d,parser_debug" ... The result will be in the process stderr (var/log/master.err) */ extern int yydebug; yydebug= 1; } #endif static bool is_native_function(THD *thd, const LEX_STRING *name) { if (find_native_function_builder(thd, *name)) return true; if (is_lex_native_function(name)) return true; return false; } /** Helper action for a case statement (entering the CASE). This helper is used for both 'simple' and 'searched' cases. This helper, with the other case_stmt_action_..., is executed when the following SQL code is parsed: <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> @param thd thread handler */ void case_stmt_action_case(THD *thd) { LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp->m_parser_data.new_cont_backpatch(); /* BACKPATCH: Creating target label for the jump to "case_stmt_action_end_case" (Instruction 12 in the example) */ pctx->push_label(thd, EMPTY_STR, sp->instructions()); } /** Helper action for a case then statements. This helper is used for both 'simple' and 'searched' cases. @param lex the parser lex context */ bool case_stmt_action_then(THD *thd, LEX *lex) { sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_instr_jump *i = new (thd->mem_root) sp_instr_jump(sp->instructions(), pctx); if (!i || sp->add_instr(thd, i)) return true; /* BACKPATCH: Resolving forward jump from "case_stmt_action_when" to "case_stmt_action_then" (jump_if_not from instruction 2 to 5, 5 to 8 ... in the example) */ sp->m_parser_data.do_backpatch(pctx->pop_label(), sp->instructions()); /* BACKPATCH: Registering forward jump from "case_stmt_action_then" to "case_stmt_action_end_case" (jump from instruction 4 to 12, 7 to 12 ... in the example) */ return sp->m_parser_data.add_backpatch_entry(i, pctx->last_label()); } /** Helper action for an end case. This helper is used for both 'simple' and 'searched' cases. @param lex the parser lex context @param simple true for simple cases, false for searched cases */ void case_stmt_action_end_case(LEX *lex, bool simple) { sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); /* BACKPATCH: Resolving forward jump from "case_stmt_action_then" to "case_stmt_action_end_case" (jump from instruction 4 to 12, 7 to 12 ... in the example) */ sp->m_parser_data.do_backpatch(pctx->pop_label(), sp->instructions()); if (simple) pctx->pop_case_expr_id(); sp->m_parser_data.do_cont_backpatch(sp->instructions()); } static bool add_create_index_prepare (LEX *lex, Table_ident *table) { lex->sql_command= SQLCOM_CREATE_INDEX; if (!lex->current_select()->add_table_to_list(lex->thd, table, NULL, TL_OPTION_UPDATING, TL_READ_NO_INSERT, MDL_SHARED_UPGRADABLE)) return TRUE; lex->alter_info.reset(); lex->alter_info.flags= Alter_info::ALTER_ADD_INDEX; lex->col_list.empty(); lex->change= NullS; return FALSE; } static bool add_create_index (LEX *lex, keytype type, const LEX_STRING &name, KEY_CREATE_INFO *info= NULL, bool generated= 0) { Key *key; key= new Key(type, name, info ? info : &lex->key_create_info, generated, lex->col_list); if (key == NULL) return TRUE; lex->alter_info.key_list.push_back(key); lex->col_list.empty(); return FALSE; } /** Compare a LEX_USER against the current user as defined by the exact user and host used during authentication. @param user A pointer to a user which needs to be matched against the current. @see SET PASSWORD rules @retval true The specified user is the authorized user @retval false The user doesn't match */ bool match_authorized_user(Security_context *ctx, LEX_USER *user) { if(user->user.str && my_strcasecmp(system_charset_info, ctx->priv_user().str, user->user.str) == 0) { /* users match; let's compare hosts. 1. first compare with the host we actually authorized, 2. then see if we match the host mask of the priv_host */ if (user->host.str && my_strcasecmp(system_charset_info, user->host.str, ctx->priv_host().str) == 0) { /* specified user exactly match the authorized user */ return true; } } return false; } static void init_index_hints(List<Index_hint> *hints, index_hint_type type, index_clause_map clause) { List_iterator<Index_hint> it(*hints); Index_hint *hint; while ((hint= it++)) { hint->type= type; hint->clause= clause; } } bool my_yyoverflow(short **a, YYSTYPE **b, YYLTYPE **c, ulong *yystacksize); #include "parse_tree_nodes.h" #include "parse_tree_items.h" #line 501 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:339 */ # ifndef YY_NULLPTR # if defined __cplusplus && 201103L <= __cplusplus # define YY_NULLPTR nullptr # else # define YY_NULLPTR 0 # endif # endif /* Enabling verbose error messages. */ #ifdef YYERROR_VERBOSE # undef YYERROR_VERBOSE # define YYERROR_VERBOSE 1 #else # define YYERROR_VERBOSE 0 #endif /* In a future release of Bison, this section will be replaced by #include "sql_yacc.h". */ #ifndef YY_MYSQL_VAR_LIB_PB2_SB_1_12949855_1697024657_5_DIST_GPL_SQL_SQL_YACC_H_INCLUDED # define YY_MYSQL_VAR_LIB_PB2_SB_1_12949855_1697024657_5_DIST_GPL_SQL_SQL_YACC_H_INCLUDED /* Debug traces. */ #ifndef YYDEBUG # define YYDEBUG 0 #endif #if YYDEBUG extern int MYSQLdebug; #endif /* Token type. */ #ifndef YYTOKENTYPE # define YYTOKENTYPE enum yytokentype { ABORT_SYM = 258, ACCESSIBLE_SYM = 259, ACCOUNT_SYM = 260, ACTION = 261, ADD = 262, ADDDATE_SYM = 263, AFTER_SYM = 264, AGAINST = 265, AGGREGATE_SYM = 266, ALGORITHM_SYM = 267, ALL = 268, ALTER = 269, ALWAYS_SYM = 270, ANALYSE_SYM = 271, ANALYZE_SYM = 272, AND_AND_SYM = 273, AND_SYM = 274, ANY_SYM = 275, AS = 276, ASC = 277, ASCII_SYM = 278, ASENSITIVE_SYM = 279, AT_SYM = 280, AUTOEXTEND_SIZE_SYM = 281, AUTO_INC = 282, AVG_ROW_LENGTH = 283, AVG_SYM = 284, BACKUP_SYM = 285, BEFORE_SYM = 286, BEGIN_SYM = 287, BETWEEN_SYM = 288, BIGINT = 289, BINARY = 290, BINLOG_SYM = 291, BIN_NUM = 292, BIT_AND = 293, BIT_OR = 294, BIT_SYM = 295, BIT_XOR = 296, BLOB_SYM = 297, BLOCK_SYM = 298, BOOLEAN_SYM = 299, BOOL_SYM = 300, BOTH = 301, BTREE_SYM = 302, BY = 303, BYTE_SYM = 304, CACHE_SYM = 305, CALL_SYM = 306, CASCADE = 307, CASCADED = 308, CASE_SYM = 309, CAST_SYM = 310, CATALOG_NAME_SYM = 311, CHAIN_SYM = 312, CHANGE = 313, CHANGED = 314, CHANNEL_SYM = 315, CHARSET = 316, CHAR_SYM = 317, CHECKSUM_SYM = 318, CHECK_SYM = 319, CIPHER_SYM = 320, CLASS_ORIGIN_SYM = 321, CLIENT_SYM = 322, CLOSE_SYM = 323, COALESCE = 324, CODE_SYM = 325, COLLATE_SYM = 326, COLLATION_SYM = 327, COLUMNS = 328, COLUMN_SYM = 329, COLUMN_FORMAT_SYM = 330, COLUMN_NAME_SYM = 331, COMMENT_SYM = 332, COMMITTED_SYM = 333, COMMIT_SYM = 334, COMPACT_SYM = 335, COMPLETION_SYM = 336, COMPRESSED_SYM = 337, COMPRESSION_SYM = 338, ENCRYPTION_SYM = 339, CONCURRENT = 340, CONDITION_SYM = 341, CONNECTION_SYM = 342, CONSISTENT_SYM = 343, CONSTRAINT = 344, CONSTRAINT_CATALOG_SYM = 345, CONSTRAINT_NAME_SYM = 346, CONSTRAINT_SCHEMA_SYM = 347, CONTAINS_SYM = 348, CONTEXT_SYM = 349, CONTINUE_SYM = 350, CONVERT_SYM = 351, COUNT_SYM = 352, CPU_SYM = 353, CREATE = 354, CROSS = 355, CUBE_SYM = 356, CURDATE = 357, CURRENT_SYM = 358, CURRENT_USER = 359, CURSOR_SYM = 360, CURSOR_NAME_SYM = 361, CURTIME = 362, DATABASE = 363, DATABASES = 364, DATAFILE_SYM = 365, DATA_SYM = 366, DATETIME = 367, DATE_ADD_INTERVAL = 368, DATE_SUB_INTERVAL = 369, DATE_SYM = 370, DAY_HOUR_SYM = 371, DAY_MICROSECOND_SYM = 372, DAY_MINUTE_SYM = 373, DAY_SECOND_SYM = 374, DAY_SYM = 375, DEALLOCATE_SYM = 376, DECIMAL_NUM = 377, DECIMAL_SYM = 378, DECLARE_SYM = 379, DEFAULT = 380, DEFAULT_AUTH_SYM = 381, DEFINER_SYM = 382, DELAYED_SYM = 383, DELAY_KEY_WRITE_SYM = 384, DELETE_SYM = 385, DESC = 386, DESCRIBE = 387, DES_KEY_FILE = 388, DETERMINISTIC_SYM = 389, DIAGNOSTICS_SYM = 390, DIRECTORY_SYM = 391, DISABLE_SYM = 392, DISCARD = 393, DISK_SYM = 394, DISTINCT = 395, DIV_SYM = 396, DOUBLE_SYM = 397, DO_SYM = 398, DROP = 399, DUAL_SYM = 400, DUMPFILE = 401, DUPLICATE_SYM = 402, DYNAMIC_SYM = 403, EACH_SYM = 404, ELSE = 405, ELSEIF_SYM = 406, ENABLE_SYM = 407, ENCLOSED = 408, END = 409, ENDS_SYM = 410, END_OF_INPUT = 411, ENGINES_SYM = 412, ENGINE_SYM = 413, ENUM = 414, EQ = 415, EQUAL_SYM = 416, ERROR_SYM = 417, ERRORS = 418, ESCAPED = 419, ESCAPE_SYM = 420, EVENTS_SYM = 421, EVENT_SYM = 422, EVERY_SYM = 423, EXCHANGE_SYM = 424, EXECUTE_SYM = 425, EXISTS = 426, EXIT_SYM = 427, EXPANSION_SYM = 428, EXPIRE_SYM = 429, EXPORT_SYM = 430, EXTENDED_SYM = 431, EXTENT_SIZE_SYM = 432, EXTRACT_SYM = 433, FALSE_SYM = 434, FAST_SYM = 435, FAULTS_SYM = 436, FETCH_SYM = 437, FILE_SYM = 438, FILE_BLOCK_SIZE_SYM = 439, FILTER_SYM = 440, FIRST_SYM = 441, FIXED_SYM = 442, FLOAT_NUM = 443, FLOAT_SYM = 444, FLUSH_SYM = 445, FOLLOWS_SYM = 446, FORCE_SYM = 447, FOREIGN = 448, FOR_SYM = 449, FORMAT_SYM = 450, FOUND_SYM = 451, FROM = 452, FULL = 453, FULLTEXT_SYM = 454, FUNCTION_SYM = 455, GE = 456, GENERAL = 457, GENERATED = 458, GROUP_REPLICATION = 459, GEOMETRYCOLLECTION = 460, GEOMETRY_SYM = 461, GET_FORMAT = 462, GET_SYM = 463, GLOBAL_SYM = 464, GRANT = 465, GRANTS = 466, GROUP_SYM = 467, GROUP_CONCAT_SYM = 468, GT_SYM = 469, HANDLER_SYM = 470, HASH_SYM = 471, HAVING = 472, HELP_SYM = 473, HEX_NUM = 474, HIGH_PRIORITY = 475, HOST_SYM = 476, HOSTS_SYM = 477, HOUR_MICROSECOND_SYM = 478, HOUR_MINUTE_SYM = 479, HOUR_SECOND_SYM = 480, HOUR_SYM = 481, IDENT = 482, IDENTIFIED_SYM = 483, IDENT_QUOTED = 484, IF = 485, IGNORE_SYM = 486, IGNORE_SERVER_IDS_SYM = 487, IMPORT = 488, INDEXES = 489, INDEX_SYM = 490, INFILE = 491, INITIAL_SIZE_SYM = 492, INNER_SYM = 493, INOUT_SYM = 494, INSENSITIVE_SYM = 495, INSERT = 496, INSERT_METHOD = 497, INSTANCE_SYM = 498, INSTALL_SYM = 499, INTERVAL_SYM = 500, INTO = 501, INT_SYM = 502, INVOKER_SYM = 503, IN_SYM = 504, IO_AFTER_GTIDS = 505, IO_BEFORE_GTIDS = 506, IO_SYM = 507, IPC_SYM = 508, IS = 509, ISOLATION = 510, ISSUER_SYM = 511, ITERATE_SYM = 512, JOIN_SYM = 513, JSON_SEPARATOR_SYM = 514, JSON_UNQUOTED_SEPARATOR_SYM = 515, JSON_SYM = 516, KEYS = 517, KEY_BLOCK_SIZE = 518, KEY_SYM = 519, KILL_SYM = 520, LANGUAGE_SYM = 521, LAST_SYM = 522, LE = 523, LEADING = 524, LEAVES = 525, LEAVE_SYM = 526, LEFT = 527, LESS_SYM = 528, LEVEL_SYM = 529, LEX_HOSTNAME = 530, LIKE = 531, LIMIT = 532, LINEAR_SYM = 533, LINES = 534, LINESTRING = 535, LIST_SYM = 536, LOAD = 537, LOCAL_SYM = 538, LOCATOR_SYM = 539, LOCKS_SYM = 540, LOCK_SYM = 541, LOGFILE_SYM = 542, LOGS_SYM = 543, LONGBLOB = 544, LONGTEXT = 545, LONG_NUM = 546, LONG_SYM = 547, LOOP_SYM = 548, LOW_PRIORITY = 549, LT = 550, MASTER_AUTO_POSITION_SYM = 551, MASTER_BIND_SYM = 552, MASTER_CONNECT_RETRY_SYM = 553, MASTER_DELAY_SYM = 554, MASTER_HOST_SYM = 555, MASTER_LOG_FILE_SYM = 556, MASTER_LOG_POS_SYM = 557, MASTER_PASSWORD_SYM = 558, MASTER_PORT_SYM = 559, MASTER_RETRY_COUNT_SYM = 560, MASTER_SERVER_ID_SYM = 561, MASTER_SSL_CAPATH_SYM = 562, MASTER_TLS_VERSION_SYM = 563, MASTER_SSL_CA_SYM = 564, MASTER_SSL_CERT_SYM = 565, MASTER_SSL_CIPHER_SYM = 566, MASTER_SSL_CRL_SYM = 567, MASTER_SSL_CRLPATH_SYM = 568, MASTER_SSL_KEY_SYM = 569, MASTER_SSL_SYM = 570, MASTER_SSL_VERIFY_SERVER_CERT_SYM = 571, MASTER_SYM = 572, MASTER_USER_SYM = 573, MASTER_HEARTBEAT_PERIOD_SYM = 574, MATCH = 575, MAX_CONNECTIONS_PER_HOUR = 576, MAX_QUERIES_PER_HOUR = 577, MAX_ROWS = 578, MAX_SIZE_SYM = 579, MAX_SYM = 580, MAX_UPDATES_PER_HOUR = 581, MAX_USER_CONNECTIONS_SYM = 582, MAX_VALUE_SYM = 583, MEDIUMBLOB = 584, MEDIUMINT = 585, MEDIUMTEXT = 586, MEDIUM_SYM = 587, MEMORY_SYM = 588, MERGE_SYM = 589, MESSAGE_TEXT_SYM = 590, MICROSECOND_SYM = 591, MIGRATE_SYM = 592, MINUTE_MICROSECOND_SYM = 593, MINUTE_SECOND_SYM = 594, MINUTE_SYM = 595, MIN_ROWS = 596, MIN_SYM = 597, MODE_SYM = 598, MODIFIES_SYM = 599, MODIFY_SYM = 600, MOD_SYM = 601, MONTH_SYM = 602, MULTILINESTRING = 603, MULTIPOINT = 604, MULTIPOLYGON = 605, MUTEX_SYM = 606, MYSQL_ERRNO_SYM = 607, NAMES_SYM = 608, NAME_SYM = 609, NATIONAL_SYM = 610, NATURAL = 611, NCHAR_STRING = 612, NCHAR_SYM = 613, NDBCLUSTER_SYM = 614, NE = 615, NEG = 616, NEVER_SYM = 617, NEW_SYM = 618, NEXT_SYM = 619, NODEGROUP_SYM = 620, NONE_SYM = 621, NOT2_SYM = 622, NOT_SYM = 623, NOW_SYM = 624, NO_SYM = 625, NO_WAIT_SYM = 626, NO_WRITE_TO_BINLOG = 627, NULL_SYM = 628, NUM = 629, NUMBER_SYM = 630, NUMERIC_SYM = 631, NVARCHAR_SYM = 632, OFFSET_SYM = 633, ON = 634, ONE_SYM = 635, ONLY_SYM = 636, OPEN_SYM = 637, OPTIMIZE = 638, OPTIMIZER_COSTS_SYM = 639, OPTIONS_SYM = 640, OPTION = 641, OPTIONALLY = 642, OR2_SYM = 643, ORDER_SYM = 644, OR_OR_SYM = 645, OR_SYM = 646, OUTER = 647, OUTFILE = 648, OUT_SYM = 649, OWNER_SYM = 650, PACK_KEYS_SYM = 651, PAGE_SYM = 652, PARAM_MARKER = 653, PARSER_SYM = 654, PARSE_GCOL_EXPR_SYM = 655, PARTIAL = 656, PARTITION_SYM = 657, PARTITIONS_SYM = 658, PARTITIONING_SYM = 659, PASSWORD = 660, PHASE_SYM = 661, PLUGIN_DIR_SYM = 662, PLUGIN_SYM = 663, PLUGINS_SYM = 664, POINT_SYM = 665, POLYGON = 666, PORT_SYM = 667, POSITION_SYM = 668, PRECEDES_SYM = 669, PRECISION = 670, PREPARE_SYM = 671, PRESERVE_SYM = 672, PREV_SYM = 673, PRIMARY_SYM = 674, PRIVILEGES = 675, PROCEDURE_SYM = 676, PROCESS = 677, PROCESSLIST_SYM = 678, PROFILE_SYM = 679, PROFILES_SYM = 680, PROXY_SYM = 681, PURGE = 682, QUARTER_SYM = 683, QUERY_SYM = 684, QUICK = 685, RANGE_SYM = 686, READS_SYM = 687, READ_ONLY_SYM = 688, READ_SYM = 689, READ_WRITE_SYM = 690, REAL = 691, REBUILD_SYM = 692, RECOVER_SYM = 693, REDOFILE_SYM = 694, REDO_BUFFER_SIZE_SYM = 695, REDUNDANT_SYM = 696, REFERENCES = 697, REGEXP = 698, RELAY = 699, RELAYLOG_SYM = 700, RELAY_LOG_FILE_SYM = 701, RELAY_LOG_POS_SYM = 702, RELAY_THREAD = 703, RELEASE_SYM = 704, RELOAD = 705, REMOVE_SYM = 706, RENAME = 707, REORGANIZE_SYM = 708, REPAIR = 709, REPEATABLE_SYM = 710, REPEAT_SYM = 711, REPLACE = 712, REPLICATION = 713, REPLICATE_DO_DB = 714, REPLICATE_IGNORE_DB = 715, REPLICATE_DO_TABLE = 716, REPLICATE_IGNORE_TABLE = 717, REPLICATE_WILD_DO_TABLE = 718, REPLICATE_WILD_IGNORE_TABLE = 719, REPLICATE_REWRITE_DB = 720, REQUIRE_SYM = 721, RESET_SYM = 722, RESIGNAL_SYM = 723, RESOURCES = 724, RESTORE_SYM = 725, RESTRICT = 726, RESUME_SYM = 727, RETURNED_SQLSTATE_SYM = 728, RETURNS_SYM = 729, RETURN_SYM = 730, REVERSE_SYM = 731, REVOKE = 732, RIGHT = 733, ROLLBACK_SYM = 734, ROLLUP_SYM = 735, ROTATE_SYM = 736, ROUTINE_SYM = 737, ROWS_SYM = 738, ROW_FORMAT_SYM = 739, ROW_SYM = 740, ROW_COUNT_SYM = 741, RTREE_SYM = 742, SAVEPOINT_SYM = 743, SCHEDULE_SYM = 744, SCHEMA_NAME_SYM = 745, SECOND_MICROSECOND_SYM = 746, SECOND_SYM = 747, SECURITY_SYM = 748, SELECT_SYM = 749, SENSITIVE_SYM = 750, SEPARATOR_SYM = 751, SERIALIZABLE_SYM = 752, SERIAL_SYM = 753, SESSION_SYM = 754, SERVER_SYM = 755, SERVER_OPTIONS = 756, SET = 757, SET_VAR = 758, SHARE_SYM = 759, SHIFT_LEFT = 760, SHIFT_RIGHT = 761, SHOW = 762, SHUTDOWN = 763, SIGNAL_SYM = 764, SIGNED_SYM = 765, SIMPLE_SYM = 766, SLAVE = 767, SLOW = 768, SMALLINT = 769, SNAPSHOT_SYM = 770, SOCKET_SYM = 771, SONAME_SYM = 772, SOUNDS_SYM = 773, SOURCE_SYM = 774, SPATIAL_SYM = 775, SPECIFIC_SYM = 776, SQLEXCEPTION_SYM = 777, SQLSTATE_SYM = 778, SQLWARNING_SYM = 779, SQL_AFTER_GTIDS = 780, SQL_AFTER_MTS_GAPS = 781, SQL_BEFORE_GTIDS = 782, SQL_BIG_RESULT = 783, SQL_BUFFER_RESULT = 784, SQL_CACHE_SYM = 785, SQL_CALC_FOUND_ROWS = 786, SQL_NO_CACHE_SYM = 787, SQL_SMALL_RESULT = 788, SQL_SYM = 789, SQL_THREAD = 790, SSL_SYM = 791, STACKED_SYM = 792, STARTING = 793, STARTS_SYM = 794, START_SYM = 795, STATS_AUTO_RECALC_SYM = 796, STATS_PERSISTENT_SYM = 797, STATS_SAMPLE_PAGES_SYM = 798, STATUS_SYM = 799, STDDEV_SAMP_SYM = 800, STD_SYM = 801, STOP_SYM = 802, STORAGE_SYM = 803, STORED_SYM = 804, STRAIGHT_JOIN = 805, STRING_SYM = 806, SUBCLASS_ORIGIN_SYM = 807, SUBDATE_SYM = 808, SUBJECT_SYM = 809, SUBPARTITIONS_SYM = 810, SUBPARTITION_SYM = 811, SUBSTRING = 812, SUM_SYM = 813, SUPER_SYM = 814, SUSPEND_SYM = 815, SWAPS_SYM = 816, SWITCHES_SYM = 817, SYSDATE = 818, TABLES = 819, TABLESPACE_SYM = 820, TABLE_REF_PRIORITY = 821, TABLE_SYM = 822, TABLE_CHECKSUM_SYM = 823, TABLE_NAME_SYM = 824, TEMPORARY = 825, TEMPTABLE_SYM = 826, TERMINATED = 827, TEXT_STRING = 828, TEXT_SYM = 829, THAN_SYM = 830, THEN_SYM = 831, TIMESTAMP = 832, TIMESTAMP_ADD = 833, TIMESTAMP_DIFF = 834, TIME_SYM = 835, TINYBLOB = 836, TINYINT = 837, TINYTEXT = 838, TO_SYM = 839, TRAILING = 840, TRANSACTION_SYM = 841, TRIGGERS_SYM = 842, TRIGGER_SYM = 843, TRIM = 844, TRUE_SYM = 845, TRUNCATE_SYM = 846, TYPES_SYM = 847, TYPE_SYM = 848, UDF_RETURNS_SYM = 849, ULONGLONG_NUM = 850, UNCOMMITTED_SYM = 851, UNDEFINED_SYM = 852, UNDERSCORE_CHARSET = 853, UNDOFILE_SYM = 854, UNDO_BUFFER_SIZE_SYM = 855, UNDO_SYM = 856, UNICODE_SYM = 857, UNINSTALL_SYM = 858, UNION_SYM = 859, UNIQUE_SYM = 860, UNKNOWN_SYM = 861, UNLOCK_SYM = 862, UNSIGNED = 863, UNTIL_SYM = 864, UPDATE_SYM = 865, UPGRADE_SYM = 866, USAGE = 867, USER = 868, USE_FRM = 869, USE_SYM = 870, USING = 871, UTC_DATE_SYM = 872, UTC_TIMESTAMP_SYM = 873, UTC_TIME_SYM = 874, VALIDATION_SYM = 875, VALUES = 876, VALUE_SYM = 877, VARBINARY = 878, VARCHAR = 879, VARIABLES = 880, VARIANCE_SYM = 881, VARYING = 882, VAR_SAMP_SYM = 883, VIEW_SYM = 884, VIRTUAL_SYM = 885, WAIT_SYM = 886, WARNINGS = 887, WEEK_SYM = 888, WEIGHT_STRING_SYM = 889, WHEN_SYM = 890, WHERE = 891, WHILE_SYM = 892, WITH = 893, WITH_CUBE_SYM = 894, WITH_ROLLUP_SYM = 895, WITHOUT_SYM = 896, WORK_SYM = 897, WRAPPER_SYM = 898, WRITE_SYM = 899, X509_SYM = 900, XA_SYM = 901, XID_SYM = 902, XML_SYM = 903, XOR = 904, YEAR_MONTH_SYM = 905, YEAR_SYM = 906, ZEROFILL = 907, JSON_OBJECTAGG = 908, JSON_ARRAYAGG = 909 }; #endif /* Tokens. */ #define ABORT_SYM 258 #define ACCESSIBLE_SYM 259 #define ACCOUNT_SYM 260 #define ACTION 261 #define ADD 262 #define ADDDATE_SYM 263 #define AFTER_SYM 264 #define AGAINST 265 #define AGGREGATE_SYM 266 #define ALGORITHM_SYM 267 #define ALL 268 #define ALTER 269 #define ALWAYS_SYM 270 #define ANALYSE_SYM 271 #define ANALYZE_SYM 272 #define AND_AND_SYM 273 #define AND_SYM 274 #define ANY_SYM 275 #define AS 276 #define ASC 277 #define ASCII_SYM 278 #define ASENSITIVE_SYM 279 #define AT_SYM 280 #define AUTOEXTEND_SIZE_SYM 281 #define AUTO_INC 282 #define AVG_ROW_LENGTH 283 #define AVG_SYM 284 #define BACKUP_SYM 285 #define BEFORE_SYM 286 #define BEGIN_SYM 287 #define BETWEEN_SYM 288 #define BIGINT 289 #define BINARY 290 #define BINLOG_SYM 291 #define BIN_NUM 292 #define BIT_AND 293 #define BIT_OR 294 #define BIT_SYM 295 #define BIT_XOR 296 #define BLOB_SYM 297 #define BLOCK_SYM 298 #define BOOLEAN_SYM 299 #define BOOL_SYM 300 #define BOTH 301 #define BTREE_SYM 302 #define BY 303 #define BYTE_SYM 304 #define CACHE_SYM 305 #define CALL_SYM 306 #define CASCADE 307 #define CASCADED 308 #define CASE_SYM 309 #define CAST_SYM 310 #define CATALOG_NAME_SYM 311 #define CHAIN_SYM 312 #define CHANGE 313 #define CHANGED 314 #define CHANNEL_SYM 315 #define CHARSET 316 #define CHAR_SYM 317 #define CHECKSUM_SYM 318 #define CHECK_SYM 319 #define CIPHER_SYM 320 #define CLASS_ORIGIN_SYM 321 #define CLIENT_SYM 322 #define CLOSE_SYM 323 #define COALESCE 324 #define CODE_SYM 325 #define COLLATE_SYM 326 #define COLLATION_SYM 327 #define COLUMNS 328 #define COLUMN_SYM 329 #define COLUMN_FORMAT_SYM 330 #define COLUMN_NAME_SYM 331 #define COMMENT_SYM 332 #define COMMITTED_SYM 333 #define COMMIT_SYM 334 #define COMPACT_SYM 335 #define COMPLETION_SYM 336 #define COMPRESSED_SYM 337 #define COMPRESSION_SYM 338 #define ENCRYPTION_SYM 339 #define CONCURRENT 340 #define CONDITION_SYM 341 #define CONNECTION_SYM 342 #define CONSISTENT_SYM 343 #define CONSTRAINT 344 #define CONSTRAINT_CATALOG_SYM 345 #define CONSTRAINT_NAME_SYM 346 #define CONSTRAINT_SCHEMA_SYM 347 #define CONTAINS_SYM 348 #define CONTEXT_SYM 349 #define CONTINUE_SYM 350 #define CONVERT_SYM 351 #define COUNT_SYM 352 #define CPU_SYM 353 #define CREATE 354 #define CROSS 355 #define CUBE_SYM 356 #define CURDATE 357 #define CURRENT_SYM 358 #define CURRENT_USER 359 #define CURSOR_SYM 360 #define CURSOR_NAME_SYM 361 #define CURTIME 362 #define DATABASE 363 #define DATABASES 364 #define DATAFILE_SYM 365 #define DATA_SYM 366 #define DATETIME 367 #define DATE_ADD_INTERVAL 368 #define DATE_SUB_INTERVAL 369 #define DATE_SYM 370 #define DAY_HOUR_SYM 371 #define DAY_MICROSECOND_SYM 372 #define DAY_MINUTE_SYM 373 #define DAY_SECOND_SYM 374 #define DAY_SYM 375 #define DEALLOCATE_SYM 376 #define DECIMAL_NUM 377 #define DECIMAL_SYM 378 #define DECLARE_SYM 379 #define DEFAULT 380 #define DEFAULT_AUTH_SYM 381 #define DEFINER_SYM 382 #define DELAYED_SYM 383 #define DELAY_KEY_WRITE_SYM 384 #define DELETE_SYM 385 #define DESC 386 #define DESCRIBE 387 #define DES_KEY_FILE 388 #define DETERMINISTIC_SYM 389 #define DIAGNOSTICS_SYM 390 #define DIRECTORY_SYM 391 #define DISABLE_SYM 392 #define DISCARD 393 #define DISK_SYM 394 #define DISTINCT 395 #define DIV_SYM 396 #define DOUBLE_SYM 397 #define DO_SYM 398 #define DROP 399 #define DUAL_SYM 400 #define DUMPFILE 401 #define DUPLICATE_SYM 402 #define DYNAMIC_SYM 403 #define EACH_SYM 404 #define ELSE 405 #define ELSEIF_SYM 406 #define ENABLE_SYM 407 #define ENCLOSED 408 #define END 409 #define ENDS_SYM 410 #define END_OF_INPUT 411 #define ENGINES_SYM 412 #define ENGINE_SYM 413 #define ENUM 414 #define EQ 415 #define EQUAL_SYM 416 #define ERROR_SYM 417 #define ERRORS 418 #define ESCAPED 419 #define ESCAPE_SYM 420 #define EVENTS_SYM 421 #define EVENT_SYM 422 #define EVERY_SYM 423 #define EXCHANGE_SYM 424 #define EXECUTE_SYM 425 #define EXISTS 426 #define EXIT_SYM 427 #define EXPANSION_SYM 428 #define EXPIRE_SYM 429 #define EXPORT_SYM 430 #define EXTENDED_SYM 431 #define EXTENT_SIZE_SYM 432 #define EXTRACT_SYM 433 #define FALSE_SYM 434 #define FAST_SYM 435 #define FAULTS_SYM 436 #define FETCH_SYM 437 #define FILE_SYM 438 #define FILE_BLOCK_SIZE_SYM 439 #define FILTER_SYM 440 #define FIRST_SYM 441 #define FIXED_SYM 442 #define FLOAT_NUM 443 #define FLOAT_SYM 444 #define FLUSH_SYM 445 #define FOLLOWS_SYM 446 #define FORCE_SYM 447 #define FOREIGN 448 #define FOR_SYM 449 #define FORMAT_SYM 450 #define FOUND_SYM 451 #define FROM 452 #define FULL 453 #define FULLTEXT_SYM 454 #define FUNCTION_SYM 455 #define GE 456 #define GENERAL 457 #define GENERATED 458 #define GROUP_REPLICATION 459 #define GEOMETRYCOLLECTION 460 #define GEOMETRY_SYM 461 #define GET_FORMAT 462 #define GET_SYM 463 #define GLOBAL_SYM 464 #define GRANT 465 #define GRANTS 466 #define GROUP_SYM 467 #define GROUP_CONCAT_SYM 468 #define GT_SYM 469 #define HANDLER_SYM 470 #define HASH_SYM 471 #define HAVING 472 #define HELP_SYM 473 #define HEX_NUM 474 #define HIGH_PRIORITY 475 #define HOST_SYM 476 #define HOSTS_SYM 477 #define HOUR_MICROSECOND_SYM 478 #define HOUR_MINUTE_SYM 479 #define HOUR_SECOND_SYM 480 #define HOUR_SYM 481 #define IDENT 482 #define IDENTIFIED_SYM 483 #define IDENT_QUOTED 484 #define IF 485 #define IGNORE_SYM 486 #define IGNORE_SERVER_IDS_SYM 487 #define IMPORT 488 #define INDEXES 489 #define INDEX_SYM 490 #define INFILE 491 #define INITIAL_SIZE_SYM 492 #define INNER_SYM 493 #define INOUT_SYM 494 #define INSENSITIVE_SYM 495 #define INSERT 496 #define INSERT_METHOD 497 #define INSTANCE_SYM 498 #define INSTALL_SYM 499 #define INTERVAL_SYM 500 #define INTO 501 #define INT_SYM 502 #define INVOKER_SYM 503 #define IN_SYM 504 #define IO_AFTER_GTIDS 505 #define IO_BEFORE_GTIDS 506 #define IO_SYM 507 #define IPC_SYM 508 #define IS 509 #define ISOLATION 510 #define ISSUER_SYM 511 #define ITERATE_SYM 512 #define JOIN_SYM 513 #define JSON_SEPARATOR_SYM 514 #define JSON_UNQUOTED_SEPARATOR_SYM 515 #define JSON_SYM 516 #define KEYS 517 #define KEY_BLOCK_SIZE 518 #define KEY_SYM 519 #define KILL_SYM 520 #define LANGUAGE_SYM 521 #define LAST_SYM 522 #define LE 523 #define LEADING 524 #define LEAVES 525 #define LEAVE_SYM 526 #define LEFT 527 #define LESS_SYM 528 #define LEVEL_SYM 529 #define LEX_HOSTNAME 530 #define LIKE 531 #define LIMIT 532 #define LINEAR_SYM 533 #define LINES 534 #define LINESTRING 535 #define LIST_SYM 536 #define LOAD 537 #define LOCAL_SYM 538 #define LOCATOR_SYM 539 #define LOCKS_SYM 540 #define LOCK_SYM 541 #define LOGFILE_SYM 542 #define LOGS_SYM 543 #define LONGBLOB 544 #define LONGTEXT 545 #define LONG_NUM 546 #define LONG_SYM 547 #define LOOP_SYM 548 #define LOW_PRIORITY 549 #define LT 550 #define MASTER_AUTO_POSITION_SYM 551 #define MASTER_BIND_SYM 552 #define MASTER_CONNECT_RETRY_SYM 553 #define MASTER_DELAY_SYM 554 #define MASTER_HOST_SYM 555 #define MASTER_LOG_FILE_SYM 556 #define MASTER_LOG_POS_SYM 557 #define MASTER_PASSWORD_SYM 558 #define MASTER_PORT_SYM 559 #define MASTER_RETRY_COUNT_SYM 560 #define MASTER_SERVER_ID_SYM 561 #define MASTER_SSL_CAPATH_SYM 562 #define MASTER_TLS_VERSION_SYM 563 #define MASTER_SSL_CA_SYM 564 #define MASTER_SSL_CERT_SYM 565 #define MASTER_SSL_CIPHER_SYM 566 #define MASTER_SSL_CRL_SYM 567 #define MASTER_SSL_CRLPATH_SYM 568 #define MASTER_SSL_KEY_SYM 569 #define MASTER_SSL_SYM 570 #define MASTER_SSL_VERIFY_SERVER_CERT_SYM 571 #define MASTER_SYM 572 #define MASTER_USER_SYM 573 #define MASTER_HEARTBEAT_PERIOD_SYM 574 #define MATCH 575 #define MAX_CONNECTIONS_PER_HOUR 576 #define MAX_QUERIES_PER_HOUR 577 #define MAX_ROWS 578 #define MAX_SIZE_SYM 579 #define MAX_SYM 580 #define MAX_UPDATES_PER_HOUR 581 #define MAX_USER_CONNECTIONS_SYM 582 #define MAX_VALUE_SYM 583 #define MEDIUMBLOB 584 #define MEDIUMINT 585 #define MEDIUMTEXT 586 #define MEDIUM_SYM 587 #define MEMORY_SYM 588 #define MERGE_SYM 589 #define MESSAGE_TEXT_SYM 590 #define MICROSECOND_SYM 591 #define MIGRATE_SYM 592 #define MINUTE_MICROSECOND_SYM 593 #define MINUTE_SECOND_SYM 594 #define MINUTE_SYM 595 #define MIN_ROWS 596 #define MIN_SYM 597 #define MODE_SYM 598 #define MODIFIES_SYM 599 #define MODIFY_SYM 600 #define MOD_SYM 601 #define MONTH_SYM 602 #define MULTILINESTRING 603 #define MULTIPOINT 604 #define MULTIPOLYGON 605 #define MUTEX_SYM 606 #define MYSQL_ERRNO_SYM 607 #define NAMES_SYM 608 #define NAME_SYM 609 #define NATIONAL_SYM 610 #define NATURAL 611 #define NCHAR_STRING 612 #define NCHAR_SYM 613 #define NDBCLUSTER_SYM 614 #define NE 615 #define NEG 616 #define NEVER_SYM 617 #define NEW_SYM 618 #define NEXT_SYM 619 #define NODEGROUP_SYM 620 #define NONE_SYM 621 #define NOT2_SYM 622 #define NOT_SYM 623 #define NOW_SYM 624 #define NO_SYM 625 #define NO_WAIT_SYM 626 #define NO_WRITE_TO_BINLOG 627 #define NULL_SYM 628 #define NUM 629 #define NUMBER_SYM 630 #define NUMERIC_SYM 631 #define NVARCHAR_SYM 632 #define OFFSET_SYM 633 #define ON 634 #define ONE_SYM 635 #define ONLY_SYM 636 #define OPEN_SYM 637 #define OPTIMIZE 638 #define OPTIMIZER_COSTS_SYM 639 #define OPTIONS_SYM 640 #define OPTION 641 #define OPTIONALLY 642 #define OR2_SYM 643 #define ORDER_SYM 644 #define OR_OR_SYM 645 #define OR_SYM 646 #define OUTER 647 #define OUTFILE 648 #define OUT_SYM 649 #define OWNER_SYM 650 #define PACK_KEYS_SYM 651 #define PAGE_SYM 652 #define PARAM_MARKER 653 #define PARSER_SYM 654 #define PARSE_GCOL_EXPR_SYM 655 #define PARTIAL 656 #define PARTITION_SYM 657 #define PARTITIONS_SYM 658 #define PARTITIONING_SYM 659 #define PASSWORD 660 #define PHASE_SYM 661 #define PLUGIN_DIR_SYM 662 #define PLUGIN_SYM 663 #define PLUGINS_SYM 664 #define POINT_SYM 665 #define POLYGON 666 #define PORT_SYM 667 #define POSITION_SYM 668 #define PRECEDES_SYM 669 #define PRECISION 670 #define PREPARE_SYM 671 #define PRESERVE_SYM 672 #define PREV_SYM 673 #define PRIMARY_SYM 674 #define PRIVILEGES 675 #define PROCEDURE_SYM 676 #define PROCESS 677 #define PROCESSLIST_SYM 678 #define PROFILE_SYM 679 #define PROFILES_SYM 680 #define PROXY_SYM 681 #define PURGE 682 #define QUARTER_SYM 683 #define QUERY_SYM 684 #define QUICK 685 #define RANGE_SYM 686 #define READS_SYM 687 #define READ_ONLY_SYM 688 #define READ_SYM 689 #define READ_WRITE_SYM 690 #define REAL 691 #define REBUILD_SYM 692 #define RECOVER_SYM 693 #define REDOFILE_SYM 694 #define REDO_BUFFER_SIZE_SYM 695 #define REDUNDANT_SYM 696 #define REFERENCES 697 #define REGEXP 698 #define RELAY 699 #define RELAYLOG_SYM 700 #define RELAY_LOG_FILE_SYM 701 #define RELAY_LOG_POS_SYM 702 #define RELAY_THREAD 703 #define RELEASE_SYM 704 #define RELOAD 705 #define REMOVE_SYM 706 #define RENAME 707 #define REORGANIZE_SYM 708 #define REPAIR 709 #define REPEATABLE_SYM 710 #define REPEAT_SYM 711 #define REPLACE 712 #define REPLICATION 713 #define REPLICATE_DO_DB 714 #define REPLICATE_IGNORE_DB 715 #define REPLICATE_DO_TABLE 716 #define REPLICATE_IGNORE_TABLE 717 #define REPLICATE_WILD_DO_TABLE 718 #define REPLICATE_WILD_IGNORE_TABLE 719 #define REPLICATE_REWRITE_DB 720 #define REQUIRE_SYM 721 #define RESET_SYM 722 #define RESIGNAL_SYM 723 #define RESOURCES 724 #define RESTORE_SYM 725 #define RESTRICT 726 #define RESUME_SYM 727 #define RETURNED_SQLSTATE_SYM 728 #define RETURNS_SYM 729 #define RETURN_SYM 730 #define REVERSE_SYM 731 #define REVOKE 732 #define RIGHT 733 #define ROLLBACK_SYM 734 #define ROLLUP_SYM 735 #define ROTATE_SYM 736 #define ROUTINE_SYM 737 #define ROWS_SYM 738 #define ROW_FORMAT_SYM 739 #define ROW_SYM 740 #define ROW_COUNT_SYM 741 #define RTREE_SYM 742 #define SAVEPOINT_SYM 743 #define SCHEDULE_SYM 744 #define SCHEMA_NAME_SYM 745 #define SECOND_MICROSECOND_SYM 746 #define SECOND_SYM 747 #define SECURITY_SYM 748 #define SELECT_SYM 749 #define SENSITIVE_SYM 750 #define SEPARATOR_SYM 751 #define SERIALIZABLE_SYM 752 #define SERIAL_SYM 753 #define SESSION_SYM 754 #define SERVER_SYM 755 #define SERVER_OPTIONS 756 #define SET 757 #define SET_VAR 758 #define SHARE_SYM 759 #define SHIFT_LEFT 760 #define SHIFT_RIGHT 761 #define SHOW 762 #define SHUTDOWN 763 #define SIGNAL_SYM 764 #define SIGNED_SYM 765 #define SIMPLE_SYM 766 #define SLAVE 767 #define SLOW 768 #define SMALLINT 769 #define SNAPSHOT_SYM 770 #define SOCKET_SYM 771 #define SONAME_SYM 772 #define SOUNDS_SYM 773 #define SOURCE_SYM 774 #define SPATIAL_SYM 775 #define SPECIFIC_SYM 776 #define SQLEXCEPTION_SYM 777 #define SQLSTATE_SYM 778 #define SQLWARNING_SYM 779 #define SQL_AFTER_GTIDS 780 #define SQL_AFTER_MTS_GAPS 781 #define SQL_BEFORE_GTIDS 782 #define SQL_BIG_RESULT 783 #define SQL_BUFFER_RESULT 784 #define SQL_CACHE_SYM 785 #define SQL_CALC_FOUND_ROWS 786 #define SQL_NO_CACHE_SYM 787 #define SQL_SMALL_RESULT 788 #define SQL_SYM 789 #define SQL_THREAD 790 #define SSL_SYM 791 #define STACKED_SYM 792 #define STARTING 793 #define STARTS_SYM 794 #define START_SYM 795 #define STATS_AUTO_RECALC_SYM 796 #define STATS_PERSISTENT_SYM 797 #define STATS_SAMPLE_PAGES_SYM 798 #define STATUS_SYM 799 #define STDDEV_SAMP_SYM 800 #define STD_SYM 801 #define STOP_SYM 802 #define STORAGE_SYM 803 #define STORED_SYM 804 #define STRAIGHT_JOIN 805 #define STRING_SYM 806 #define SUBCLASS_ORIGIN_SYM 807 #define SUBDATE_SYM 808 #define SUBJECT_SYM 809 #define SUBPARTITIONS_SYM 810 #define SUBPARTITION_SYM 811 #define SUBSTRING 812 #define SUM_SYM 813 #define SUPER_SYM 814 #define SUSPEND_SYM 815 #define SWAPS_SYM 816 #define SWITCHES_SYM 817 #define SYSDATE 818 #define TABLES 819 #define TABLESPACE_SYM 820 #define TABLE_REF_PRIORITY 821 #define TABLE_SYM 822 #define TABLE_CHECKSUM_SYM 823 #define TABLE_NAME_SYM 824 #define TEMPORARY 825 #define TEMPTABLE_SYM 826 #define TERMINATED 827 #define TEXT_STRING 828 #define TEXT_SYM 829 #define THAN_SYM 830 #define THEN_SYM 831 #define TIMESTAMP 832 #define TIMESTAMP_ADD 833 #define TIMESTAMP_DIFF 834 #define TIME_SYM 835 #define TINYBLOB 836 #define TINYINT 837 #define TINYTEXT 838 #define TO_SYM 839 #define TRAILING 840 #define TRANSACTION_SYM 841 #define TRIGGERS_SYM 842 #define TRIGGER_SYM 843 #define TRIM 844 #define TRUE_SYM 845 #define TRUNCATE_SYM 846 #define TYPES_SYM 847 #define TYPE_SYM 848 #define UDF_RETURNS_SYM 849 #define ULONGLONG_NUM 850 #define UNCOMMITTED_SYM 851 #define UNDEFINED_SYM 852 #define UNDERSCORE_CHARSET 853 #define UNDOFILE_SYM 854 #define UNDO_BUFFER_SIZE_SYM 855 #define UNDO_SYM 856 #define UNICODE_SYM 857 #define UNINSTALL_SYM 858 #define UNION_SYM 859 #define UNIQUE_SYM 860 #define UNKNOWN_SYM 861 #define UNLOCK_SYM 862 #define UNSIGNED 863 #define UNTIL_SYM 864 #define UPDATE_SYM 865 #define UPGRADE_SYM 866 #define USAGE 867 #define USER 868 #define USE_FRM 869 #define USE_SYM 870 #define USING 871 #define UTC_DATE_SYM 872 #define UTC_TIMESTAMP_SYM 873 #define UTC_TIME_SYM 874 #define VALIDATION_SYM 875 #define VALUES 876 #define VALUE_SYM 877 #define VARBINARY 878 #define VARCHAR 879 #define VARIABLES 880 #define VARIANCE_SYM 881 #define VARYING 882 #define VAR_SAMP_SYM 883 #define VIEW_SYM 884 #define VIRTUAL_SYM 885 #define WAIT_SYM 886 #define WARNINGS 887 #define WEEK_SYM 888 #define WEIGHT_STRING_SYM 889 #define WHEN_SYM 890 #define WHERE 891 #define WHILE_SYM 892 #define WITH 893 #define WITH_CUBE_SYM 894 #define WITH_ROLLUP_SYM 895 #define WITHOUT_SYM 896 #define WORK_SYM 897 #define WRAPPER_SYM 898 #define WRITE_SYM 899 #define X509_SYM 900 #define XA_SYM 901 #define XID_SYM 902 #define XML_SYM 903 #define XOR 904 #define YEAR_MONTH_SYM 905 #define YEAR_SYM 906 #define ZEROFILL 907 #define JSON_OBJECTAGG 908 #define JSON_ARRAYAGG 909 /* Value type. */ /* Location type. */ #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED typedef struct YYLTYPE YYLTYPE; struct YYLTYPE { int first_line; int first_column; int last_line; int last_column; }; # define YYLTYPE_IS_DECLARED 1 # define YYLTYPE_IS_TRIVIAL 1 #endif int MYSQLparse (class THD *YYTHD); #endif /* !YY_MYSQL_VAR_LIB_PB2_SB_1_12949855_1697024657_5_DIST_GPL_SQL_SQL_YACC_H_INCLUDED */ /* Copy the second part of user declarations. */ #line 1868 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:358 */ #ifdef short # undef short #endif #ifdef YYTYPE_UINT8 typedef YYTYPE_UINT8 yytype_uint8; #else typedef unsigned char yytype_uint8; #endif #ifdef YYTYPE_INT8 typedef YYTYPE_INT8 yytype_int8; #else typedef signed char yytype_int8; #endif #ifdef YYTYPE_UINT16 typedef YYTYPE_UINT16 yytype_uint16; #else typedef unsigned short int yytype_uint16; #endif #ifdef YYTYPE_INT16 typedef YYTYPE_INT16 yytype_int16; #else typedef short int yytype_int16; #endif #ifndef YYSIZE_T # ifdef __SIZE_TYPE__ # define YYSIZE_T __SIZE_TYPE__ # elif defined size_t # define YYSIZE_T size_t # elif ! defined YYSIZE_T # include <stddef.h> /* INFRINGES ON USER NAME SPACE */ # define YYSIZE_T size_t # else # define YYSIZE_T unsigned int # endif #endif #define YYSIZE_MAXIMUM ((YYSIZE_T) -1) #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 # if (defined __GNUC__ \ && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \ || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C # define YY_ATTRIBUTE(Spec) __attribute__(Spec) # else # define YY_ATTRIBUTE(Spec) /* empty */ # endif #endif #ifndef YY_ATTRIBUTE_PURE # define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__)) #endif #ifndef YY_ATTRIBUTE_UNUSED # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__)) #endif #if !defined _Noreturn \ && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112) # if defined _MSC_VER && 1200 <= _MSC_VER # define _Noreturn __declspec (noreturn) # else # define _Noreturn YY_ATTRIBUTE ((__noreturn__)) # endif #endif /* Suppress unused-variable warnings by "using" E. */ #if ! defined lint || defined __GNUC__ # define YYUSE(E) ((void) (E)) #else # define YYUSE(E) /* empty */ #endif #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__ /* Suppress an incorrect diagnostic about yylval being uninitialized. */ # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \ _Pragma ("GCC diagnostic push") \ _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\ _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"") # 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 yyoverflow || YYERROR_VERBOSE /* 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 || YYERROR_VERBOSE */ #if (! defined yyoverflow \ && (! defined __cplusplus \ || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \ && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) /* A type that is properly aligned for any stack member. */ union yyalloc { yytype_int16 yyss_alloc; YYSTYPE yyvs_alloc; YYLTYPE yyls_alloc; }; /* The size of the maximum gap between one aligned stack and the next. */ # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) /* The size of an array large to enough to hold all stacks, each with N elements. */ # define YYSTACK_BYTES(N) \ ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ + 2 * 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 \ { \ YYSIZE_T yynewbytes; \ YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ Stack = &yyptr->Stack_alloc; \ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ yyptr += yynewbytes / sizeof (*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, (Count) * sizeof (*(Src))) # else # define YYCOPY(Dst, Src, Count) \ do \ { \ YYSIZE_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 661 /* YYLAST -- Last index in YYTABLE. */ #define YYLAST 64431 /* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 674 /* YYNNTS -- Number of nonterminals. */ #define YYNNTS 923 /* YYNRULES -- Number of rules. */ #define YYNRULES 2741 /* YYNSTATES -- Number of states. */ #define YYNSTATES 4682 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned by yylex, with out-of-bounds checking. */ #define YYUNDEFTOK 2 #define YYMAXUTOK 909 #define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM as returned by yylex, without out-of-bounds checking. */ static const yytype_uint16 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, 667, 2, 2, 2, 661, 656, 2, 664, 665, 659, 658, 666, 657, 672, 660, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 673, 670, 2, 2, 2, 2, 671, 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, 662, 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, 668, 655, 669, 663, 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, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 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 }; #if YYDEBUG /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { 0, 1609, 1609, 1622, 1621, 1646, 1653, 1655, 1659, 1660, 1665, 1666, 1667, 1668, 1669, 1670, 1671, 1672, 1673, 1674, 1675, 1676, 1677, 1678, 1679, 1680, 1681, 1682, 1683, 1684, 1685, 1686, 1687, 1688, 1689, 1690, 1691, 1692, 1693, 1694, 1695, 1696, 1697, 1698, 1699, 1700, 1701, 1702, 1703, 1704, 1705, 1706, 1707, 1708, 1709, 1710, 1711, 1712, 1713, 1714, 1715, 1716, 1717, 1718, 1719, 1723, 1733, 1734, 1738, 1758, 1765, 1776, 1775, 1786, 1788, 1792, 1793, 1797, 1810, 1809, 1829, 1828, 1842, 1841, 1856, 1857, 1860, 1867, 1874, 1881, 1888, 1895, 1903, 1912, 1918, 1925, 1932, 1940, 1950, 1956, 1962, 1970, 1978, 1984, 1991, 1998, 2006, 2019, 2025, 2032, 2039, 2047, 2058, 2059, 2063, 2067, 2071, 2075, 2085, 2089, 2093, 2098, 2109, 2114, 2118, 2122, 2126, 2130, 2134, 2138, 2143, 2147, 2152, 2185, 2190, 2197, 2200, 2202, 2203, 2207, 2213, 2217, 2233, 2237, 2248, 2252, 2270, 2269, 2315, 2320, 2314, 2327, 2332, 2325, 2339, 2344, 2337, 2350, 2349, 2362, 2361, 2369, 2376, 2380, 2384, 2401, 2402, 2406, 2410, 2414, 2418, 2422, 2427, 2431, 2439, 2438, 2470, 2469, 2478, 2487, 2488, 2494, 2500, 2510, 2516, 2524, 2526, 2535, 2536, 2540, 2546, 2555, 2556, 2564, 2564, 2622, 2623, 2624, 2625, 2626, 2627, 2628, 2629, 2630, 2631, 2632, 2633, 2634, 2638, 2656, 2666, 2680, 2699, 2700, 2704, 2705, 2710, 2712, 2714, 2716, 2718, 2720, 2722, 2728, 2729, 2730, 2734, 2738, 2746, 2745, 2758, 2760, 2763, 2765, 2769, 2775, 2784, 2786, 2790, 2791, 2796, 2815, 2845, 2847, 2851, 2852, 2856, 2885, 2886, 2887, 2888, 2892, 2893, 2897, 2898, 2903, 2906, 2934, 2932, 3057, 3075, 3074, 3154, 3150, 3228, 3229, 3234, 3236, 3241, 3264, 3275, 3279, 3301, 3302, 3306, 3310, 3323, 3329, 3335, 3344, 3357, 3383, 3389, 3390, 3396, 3397, 3402, 3408, 3421, 3423, 3443, 3449, 3451, 3453, 3455, 3457, 3459, 3461, 3463, 3465, 3467, 3469, 3471, 3476, 3490, 3507, 3508, 3510, 3515, 3521, 3530, 3536, 3545, 3553, 3581, 3589, 3591, 3600, 3605, 3611, 3620, 3628, 3630, 3632, 3634, 3636, 3638, 3640, 3642, 3644, 3646, 3648, 3650, 3652, 3657, 3677, 3701, 3703, 3702, 3713, 3714, 3715, 3716, 3717, 3718, 3719, 3720, 3721, 3722, 3723, 3724, 3725, 3730, 3729, 3740, 3740, 3796, 3795, 3854, 3854, 3876, 3935, 3985, 4010, 4009, 4035, 4058, 4060, 4061, 4065, 4083, 4104, 4113, 4152, 4104, 4181, 4183, 4184, 4188, 4189, 4194, 4205, 4193, 4258, 4257, 4271, 4272, 4276, 4277, 4282, 4291, 4281, 4342, 4351, 4341, 4397, 4410, 4415, 4414, 4452, 4453, 4458, 4457, 4491, 4491, 4510, 4509, 4559, 4576, 4585, 4575, 4644, 4653, 4641, 4696, 4698, 4703, 4705, 4707, 4724, 4729, 4735, 4742, 4743, 4751, 4757, 4766, 4772, 4778, 4779, 4783, 4783, 4788, 4789, 4790, 4794, 4795, 4796, 4799, 4801, 4805, 4806, 4807, 4811, 4812, 4813, 4814, 4815, 4816, 4817, 4818, 4819, 4822, 4824, 4828, 4829, 4830, 4834, 4835, 4836, 4837, 4838, 4841, 4843, 4847, 4848, 4849, 4853, 4854, 4855, 4856, 4857, 4858, 4859, 4862, 4864, 4868, 4869, 4870, 4874, 4875, 4876, 4881, 4889, 4897, 4905, 4917, 4929, 4934, 4939, 4947, 4955, 4963, 4971, 4979, 4987, 4995, 5008, 5021, 5035, 5049, 5054, 5067, 5068, 5121, 5122, 5125, 5140, 5158, 5163, 5161, 5175, 5177, 5176, 5187, 5186, 5199, 5236, 5237, 5242, 5241, 5260, 5259, 5276, 5280, 5288, 5287, 5290, 5292, 5294, 5296, 5301, 5302, 5308, 5309, 5326, 5327, 5331, 5332, 5336, 5355, 5365, 5381, 5395, 5396, 5412, 5414, 5413, 5418, 5416, 5427, 5428, 5432, 5450, 5468, 5469, 5485, 5500, 5522, 5523, 5528, 5527, 5551, 5567, 5586, 5585, 5600, 5599, 5616, 5638, 5642, 5671, 5683, 5684, 5689, 5700, 5688, 5725, 5726, 5730, 5743, 5767, 5780, 5806, 5807, 5812, 5811, 5848, 5861, 5862, 5866, 5867, 5871, 5873, 5879, 5881, 5883, 5885, 5887, 5889, 5898, 5905, 5906, 5910, 5911, 5915, 5916, 5920, 5921, 5925, 5926, 5930, 5931, 5935, 5939, 5940, 5943, 5945, 5949, 5950, 5954, 5955, 5956, 5960, 5965, 5970, 5975, 5980, 5985, 5990, 5995, 6000, 6005, 6020, 6026, 6041, 6046, 6061, 6067, 6085, 6090, 6095, 6100, 6105, 6111, 6110, 6136, 6137, 6138, 6143, 6148, 6153, 6158, 6160, 6162, 6168, 6176, 6194, 6211, 6237, 6255, 6256, 6257, 6258, 6259, 6260, 6264, 6265, 6266, 6270, 6271, 6272, 6273, 6278, 6285, 6286, 6290, 6291, 6295, 6296, 6303, 6308, 6314, 6320, 6326, 6345, 6351, 6353, 6357, 6365, 6366, 6370, 6375, 6374, 6399, 6400, 6423, 6425, 6428, 6430, 6434, 6435, 6439, 6445, 6451, 6452, 6453, 6454, 6462, 6464, 6465, 6472, 6488, 6517, 6522, 6528, 6534, 6539, 6544, 6549, 6554, 6561, 6568, 6575, 6582, 6588, 6594, 6601, 6608, 6614, 6630, 6632, 6637, 6666, 6671, 6676, 6682, 6688, 6693, 6698, 6703, 6709, 6715, 6722, 6728, 6734, 6740, 6746, 6753, 6752, 6761, 6760, 6768, 6774, 6780, 6788, 6789, 6790, 6796, 6797, 6798, 6799, 6800, 6804, 6808, 6809, 6813, 6814, 6818, 6819, 6820, 6821, 6822, 6826, 6827, 6828, 6829, 6830, 6834, 6839, 6841, 6847, 6851, 6856, 6860, 6869, 6870, 6874, 6875, 6876, 6884, 6885, 6889, 6890, 6894, 6895, 6896, 6900, 6901, 6902, 6903, 6906, 6907, 6912, 6916, 6920, 6921, 6925, 6926, 6930, 6935, 6936, 6937, 6945, 6946, 6952, 6958, 6964, 6970, 6971, 6984, 6990, 6996, 7002, 7007, 7012, 7021, 7042, 7048, 7055, 7060, 7061, 7065, 7073, 7077, 7078, 7082, 7083, 7087, 7096, 7100, 7101, 7105, 7113, 7114, 7118, 7119, 7123, 7124, 7128, 7129, 7134, 7135, 7136, 7140, 7148, 7153, 7162, 7166, 7171, 7176, 7181, 7186, 7191, 7199, 7200, 7205, 7204, 7217, 7218, 7222, 7225, 7226, 7227, 7228, 7232, 7240, 7247, 7248, 7252, 7262, 7263, 7267, 7268, 7271, 7273, 7277, 7289, 7290, 7294, 7301, 7314, 7315, 7317, 7319, 7325, 7330, 7336, 7342, 7349, 7359, 7360, 7361, 7362, 7363, 7367, 7371, 7372, 7376, 7377, 7381, 7382, 7386, 7387, 7388, 7392, 7393, 7397, 7401, 7408, 7420, 7421, 7425, 7426, 7430, 7431, 7435, 7436, 7440, 7441, 7445, 7446, 7450, 7451, 7455, 7456, 7460, 7462, 7466, 7467, 7471, 7475, 7476, 7490, 7491, 7492, 7496, 7500, 7507, 7513, 7527, 7528, 7532, 7533, 7537, 7538, 7546, 7545, 7585, 7584, 7598, 7612, 7611, 7630, 7629, 7648, 7647, 7666, 7660, 7680, 7679, 7712, 7717, 7722, 7727, 7732, 7740, 7742, 7749, 7753, 7762, 7763, 7767, 7768, 7772, 7778, 7784, 7790, 7804, 7810, 7817, 7821, 7822, 7826, 7827, 7831, 7837, 7843, 7849, 7858, 7872, 7873, 7874, 7875, 7879, 7880, 7892, 7893, 7897, 7898, 7902, 7903, 7904, 7905, 7906, 7909, 7911, 7912, 7913, 7917, 7925, 7940, 7941, 7945, 7954, 7952, 7966, 7980, 7979, 7993, 7991, 8005, 8012, 8023, 8024, 8050, 8059, 8070, 8072, 8076, 8080, 8088, 8095, 8099, 8104, 8103, 8119, 8121, 8126, 8134, 8133, 8149, 8153, 8152, 8164, 8165, 8169, 8189, 8190, 8191, 8195, 8196, 8200, 8209, 8213, 8218, 8220, 8219, 8230, 8240, 8229, 8256, 8265, 8274, 8283, 8292, 8298, 8304, 8313, 8322, 8352, 8362, 8383, 8393, 8397, 8402, 8409, 8410, 8411, 8414, 8416, 8417, 8418, 8419, 8422, 8427, 8438, 8443, 8454, 8455, 8459, 8460, 8464, 8465, 8466, 8470, 8471, 8476, 8484, 8485, 8486, 8487, 8491, 8496, 8504, 8505, 8515, 8531, 8529, 8551, 8568, 8571, 8578, 8582, 8589, 8593, 8597, 8604, 8609, 8612, 8619, 8622, 8629, 8632, 8639, 8642, 8650, 8653, 8660, 8664, 8671, 8675, 8683, 8687, 8713, 8714, 8715, 8720, 8725, 8733, 8732, 8744, 8745, 8746, 8751, 8750, 8772, 8773, 8777, 8778, 8782, 8783, 8784, 8789, 8788, 8810, 8819, 8818, 8845, 8846, 8850, 8851, 8855, 8856, 8857, 8858, 8859, 8860, 8865, 8864, 8886, 8887, 8888, 8893, 8892, 8898, 8905, 8910, 8918, 8919, 8923, 8937, 8936, 8949, 8950, 8954, 8955, 8959, 8969, 8979, 8980, 8985, 8984, 8995, 8996, 9000, 9001, 9005, 9015, 9026, 9025, 9033, 9037, 9038, 9049, 9050, 9059, 9067, 9071, 9078, 9082, 9087, 9091, 9100, 9108, 9113, 9143, 9143, 9157, 9171, 9175, 9176, 9180, 9184, 9193, 9197, 9201, 9206, 9210, 9215, 9225, 9238, 9239, 9245, 9254, 9260, 9266, 9276, 9277, 9285, 9286, 9287, 9288, 9289, 9293, 9294, 9299, 9305, 9310, 9316, 9320, 9324, 9328, 9332, 9336, 9340, 9344, 9348, 9352, 9356, 9360, 9373, 9377, 9381, 9386, 9390, 9397, 9401, 9408, 9412, 9416, 9424, 9428, 9435, 9439, 9444, 9448, 9452, 9456, 9460, 9464, 9468, 9472, 9476, 9480, 9484, 9488, 9492, 9496, 9500, 9504, 9508, 9509, 9513, 9514, 9518, 9519, 9523, 9524, 9528, 9529, 9530, 9531, 9532, 9533, 9534, 9538, 9539, 9543, 9544, 9545, 9546, 9547, 9548, 9552, 9553, 9554, 9555, 9556, 9560, 9564, 9568, 9572, 9576, 9580, 9582, 9586, 9590, 9594, 9598, 9602, 9606, 9610, 9614, 9618, 9622, 9626, 9630, 9635, 9642, 9659, 9663, 9667, 9671, 9675, 9679, 9683, 9687, 9691, 9695, 9699, 9703, 9707, 9711, 9715, 9719, 9723, 9727, 9732, 9737, 9742, 9746, 9750, 9754, 9758, 9763, 9767, 9786, 9790, 9794, 9798, 9802, 9807, 9812, 9816, 9820, 9825, 9829, 9833, 9837, 9841, 9845, 9849, 9853, 9858, 9862, 9866, 9870, 9874, 9886, 9890, 9894, 9898, 9902, 9906, 9910, 9914, 9918, 9922, 9926, 9930, 9934, 9938, 9942, 9946, 9950, 9954, 9958, 9962, 9966, 9971, 9976, 9980, 9984, 9990, 9996, 10002, 10008, 10014, 10020, 10024, 10042, 10046, 10053, 10055, 10068, 10069, 10073, 10074, 10078, 10079, 10083, 10089, 10098, 10105, 10109, 10113, 10117, 10121, 10125, 10129, 10133, 10137, 10141, 10145, 10154, 10158, 10162, 10166, 10170, 10174, 10178, 10182, 10186, 10190, 10200, 10204, 10208, 10212, 10219, 10220, 10225, 10230, 10234, 10235, 10239, 10244, 10254, 10261, 10269, 10277, 10285, 10293, 10301, 10309, 10317, 10325, 10333, 10341, 10349, 10360, 10361, 10365, 10371, 10380, 10381, 10385, 10391, 10400, 10401, 10405, 10406, 10410, 10418, 10429, 10430, 10437, 10451, 10452, 10458, 10459, 10479, 10483, 10487, 10493, 10499, 10505, 10511, 10517, 10522, 10528, 10534, 10539, 10546, 10547, 10548, 10556, 10557, 10561, 10576, 10580, 10602, 10629, 10633, 10641, 10641, 10655, 10662, 10663, 10668, 10671, 10672, 10673, 10677, 10678, 10682, 10688, 10697, 10698, 10706, 10707, 10711, 10716, 10722, 10726, 10732, 10741, 10747, 10755, 10766, 10779, 10780, 10781, 10782, 10783, 10784, 10785, 10786, 10787, 10788, 10789, 10790, 10794, 10795, 10796, 10797, 10798, 10799, 10800, 10801, 10802, 10806, 10807, 10808, 10809, 10812, 10814, 10815, 10819, 10820, 10828, 10830, 10834, 10835, 10842, 10843, 10850, 10851, 10859, 10860, 10867, 10872, 10882, 10883, 10891, 10906, 10910, 10911, 10915, 10935, 10936, 10940, 10947, 10952, 10962, 10963, 10967, 10968, 10972, 10973, 10977, 10984, 10990, 10996, 11005, 11009, 11013, 11017, 11021, 11028, 11029, 11033, 11034, 11035, 11036, 11037, 11038, 11042, 11043, 11044, 11045, 11046, 11050, 11051, 11052, 11053, 11054, 11058, 11059, 11060, 11061, 11065, 11070, 11071, 11075, 11076, 11086, 11090, 11095, 11103, 11116, 11122, 11131, 11135, 11142, 11143, 11147, 11154, 11160, 11164, 11172, 11184, 11196, 11195, 11206, 11207, 11206, 11223, 11230, 11253, 11285, 11297, 11304, 11303, 11313, 11319, 11326, 11331, 11336, 11345, 11346, 11350, 11361, 11367, 11376, 11377, 11381, 11382, 11385, 11387, 11390, 11391, 11392, 11396, 11397, 11404, 11418, 11436, 11453, 11465, 11481, 11496, 11497, 11498, 11507, 11511, 11512, 11523, 11525, 11529, 11534, 11539, 11547, 11552, 11557, 11565, 11571, 11580, 11587, 11591, 11598, 11599, 11603, 11608, 11618, 11619, 11623, 11624, 11628, 11633, 11638, 11642, 11648, 11657, 11658, 11666, 11670, 11679, 11695, 11702, 11714, 11722, 11723, 11729, 11740, 11749, 11761, 11763, 11767, 11768, 11772, 11773, 11774, 11779, 11778, 11797, 11799, 11802, 11804, 11807, 11808, 11811, 11815, 11819, 11823, 11827, 11831, 11835, 11839, 11843, 11851, 11854, 11867, 11866, 11875, 11882, 11890, 11898, 11906, 11914, 11922, 11929, 11931, 11933, 11942, 11946, 11951, 11950, 11961, 11960, 11970, 11987, 11994, 11999, 12005, 12011, 12019, 12027, 12035, 12045, 12076, 12083, 12114, 12121, 12128, 12138, 12145, 12151, 12160, 12168, 12172, 12176, 12183, 12190, 12196, 12203, 12210, 12215, 12220, 12225, 12234, 12236, 12238, 12243, 12244, 12247, 12249, 12253, 12254, 12258, 12259, 12263, 12264, 12268, 12269, 12273, 12274, 12277, 12279, 12286, 12296, 12298, 12305, 12333, 12332, 12349, 12348, 12356, 12357, 12358, 12359, 12360, 12361, 12375, 12376, 12381, 12385, 12391, 12397, 12418, 12419, 12420, 12435, 12434, 12447, 12456, 12446, 12458, 12462, 12463, 12475, 12474, 12496, 12497, 12502, 12504, 12506, 12508, 12510, 12512, 12514, 12519, 12521, 12523, 12525, 12527, 12529, 12531, 12536, 12537, 12542, 12541, 12551, 12552, 12556, 12556, 12558, 12559, 12567, 12568, 12573, 12572, 12583, 12587, 12591, 12605, 12617, 12618, 12619, 12625, 12637, 12649, 12659, 12677, 12636, 12688, 12689, 12693, 12694, 12698, 12699, 12700, 12704, 12705, 12706, 12710, 12711, 12715, 12720, 12724, 12729, 12735, 12740, 12748, 12749, 12753, 12758, 12762, 12767, 12775, 12776, 12779, 12781, 12789, 12791, 12795, 12796, 12797, 12801, 12803, 12808, 12809, 12818, 12819, 12823, 12824, 12828, 12851, 12856, 12861, 12866, 12874, 12882, 12889, 12899, 12908, 12909, 12910, 12921, 12922, 12923, 12924, 12937, 12941, 12945, 12949, 12953, 12957, 12964, 12968, 12972, 12976, 12980, 12988, 12992, 12996, 13010, 13011, 13015, 13019, 13027, 13034, 13038, 13047, 13051, 13055, 13059, 13063, 13067, 13073, 13080, 13081, 13097, 13107, 13115, 13121, 13129, 13140, 13146, 13156, 13166, 13167, 13197, 13210, 13223, 13239, 13255, 13272, 13273, 13284, 13285, 13296, 13297, 13298, 13302, 13330, 13367, 13382, 13383, 13384, 13385, 13386, 13387, 13388, 13389, 13390, 13391, 13392, 13393, 13394, 13395, 13396, 13397, 13398, 13399, 13400, 13401, 13402, 13403, 13404, 13405, 13406, 13407, 13408, 13409, 13410, 13411, 13412, 13413, 13414, 13415, 13416, 13417, 13418, 13419, 13420, 13421, 13422, 13423, 13424, 13425, 13426, 13427, 13428, 13429, 13430, 13431, 13432, 13433, 13434, 13435, 13436, 13437, 13438, 13448, 13449, 13450, 13451, 13452, 13453, 13454, 13455, 13456, 13457, 13458, 13459, 13460, 13461, 13462, 13463, 13464, 13465, 13466, 13467, 13468, 13469, 13470, 13471, 13472, 13473, 13474, 13475, 13476, 13477, 13478, 13479, 13480, 13481, 13482, 13483, 13484, 13485, 13486, 13487, 13488, 13489, 13490, 13491, 13492, 13493, 13494, 13495, 13500, 13501, 13502, 13503, 13504, 13505, 13506, 13507, 13508, 13509, 13510, 13511, 13512, 13513, 13514, 13515, 13516, 13517, 13518, 13519, 13520, 13521, 13522, 13523, 13524, 13525, 13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13534, 13535, 13536, 13537, 13538, 13539, 13540, 13541, 13542, 13543, 13544, 13545, 13546, 13547, 13548, 13549, 13550, 13551, 13552, 13553, 13554, 13555, 13556, 13557, 13558, 13559, 13560, 13561, 13562, 13563, 13564, 13565, 13566, 13567, 13568, 13569, 13570, 13571, 13572, 13573, 13574, 13575, 13576, 13577, 13578, 13579, 13580, 13581, 13582, 13583, 13584, 13585, 13586, 13587, 13588, 13589, 13590, 13591, 13592, 13593, 13594, 13595, 13596, 13597, 13598, 13599, 13600, 13601, 13602, 13603, 13604, 13605, 13606, 13607, 13608, 13609, 13610, 13611, 13612, 13613, 13614, 13615, 13616, 13617, 13618, 13619, 13620, 13621, 13622, 13623, 13624, 13625, 13626, 13627, 13628, 13629, 13630, 13631, 13632, 13633, 13634, 13635, 13636, 13637, 13638, 13639, 13640, 13641, 13642, 13643, 13644, 13645, 13646, 13647, 13648, 13649, 13650, 13651, 13652, 13653, 13654, 13655, 13656, 13657, 13658, 13659, 13660, 13661, 13662, 13663, 13664, 13665, 13666, 13667, 13668, 13669, 13670, 13671, 13672, 13673, 13674, 13675, 13676, 13677, 13678, 13679, 13680, 13681, 13682, 13683, 13684, 13685, 13686, 13687, 13688, 13689, 13690, 13691, 13692, 13693, 13694, 13695, 13696, 13697, 13698, 13699, 13700, 13701, 13702, 13703, 13704, 13705, 13706, 13707, 13708, 13709, 13710, 13711, 13712, 13713, 13714, 13715, 13716, 13717, 13718, 13719, 13720, 13721, 13722, 13723, 13724, 13725, 13726, 13727, 13728, 13729, 13730, 13731, 13732, 13733, 13734, 13735, 13736, 13737, 13738, 13739, 13740, 13741, 13742, 13743, 13744, 13745, 13746, 13747, 13748, 13749, 13750, 13751, 13752, 13753, 13754, 13755, 13756, 13757, 13758, 13759, 13760, 13761, 13762, 13763, 13764, 13765, 13766, 13767, 13768, 13769, 13770, 13771, 13782, 13791, 13795, 13799, 13803, 13807, 13814, 13818, 13831, 13838, 13848, 13849, 13854, 13858, 13866, 13870, 13874, 13875, 13876, 13880, 13881, 13882, 13883, 13887, 13888, 13889, 13890, 13895, 13903, 13909, 13913, 13917, 13921, 13928, 13935, 13939, 13943, 13950, 13954, 13961, 13968, 13969, 13973, 13980, 13981, 13985, 13986, 13990, 13991, 13992, 13993, 13997, 14006, 14007, 14008, 14012, 14016, 14026, 14025, 14041, 14042, 14046, 14047, 14051, 14079, 14080, 14081, 14086, 14091, 14090, 14107, 14115, 14122, 14141, 14157, 14176, 14173, 14223, 14224, 14228, 14229, 14233, 14234, 14235, 14236, 14238, 14237, 14250, 14251, 14252, 14253, 14254, 14260, 14260, 14265, 14270, 14280, 14290, 14294, 14303, 14303, 14308, 14314, 14325, 14336, 14344, 14346, 14350, 14357, 14364, 14366, 14370, 14371, 14376, 14375, 14379, 14378, 14382, 14381, 14385, 14384, 14387, 14388, 14389, 14390, 14391, 14392, 14393, 14394, 14395, 14396, 14397, 14398, 14399, 14400, 14401, 14402, 14403, 14404, 14405, 14406, 14407, 14408, 14409, 14410, 14411, 14412, 14416, 14417, 14421, 14422, 14426, 14436, 14446, 14459, 14474, 14487, 14500, 14512, 14517, 14525, 14530, 14538, 14546, 14561, 14569, 14579, 14590, 14599, 14603, 14607, 14608, 14612, 14639, 14641, 14645, 14649, 14653, 14660, 14661, 14665, 14666, 14670, 14671, 14675, 14676, 14682, 14688, 14694, 14704, 14703, 14713, 14714, 14719, 14720, 14721, 14726, 14727, 14728, 14732, 14733, 14737, 14749, 14758, 14768, 14777, 14791, 14792, 14796, 14803, 14804, 14805, 14809, 14810, 14814, 14821, 14825, 14829, 14830, 14831, 14835, 14839, 14847, 14848, 14856, 14856, 14869, 14870, 14874, 14878, 14882, 14883, 14884, 14885, 14886, 14887, 14888, 14889, 14899, 14901, 14903, 14908, 14909, 14910, 14911, 14912, 14916, 14917, 14918, 14919, 14920, 14921, 14931, 14932, 14937, 14950, 14963, 14965, 14967, 14972, 14977, 14979, 14981, 14987, 14988, 14990, 14996, 14995, 15013, 15014, 15018, 15023, 15031, 15031, 15056, 15055, 15076, 15084, 15084, 15092, 15097, 15096, 15110, 15111, 15113, 15115, 15126, 15128, 15134, 15140, 15158, 15148, 15241, 15259, 15283, 15307, 15311, 15320, 15343, 15280, 15410, 15430, 15435, 15443, 15408, 15464, 15469, 15474, 15479, 15484, 15489, 15497, 15498, 15501, 15510, 15520, 15538, 15539, 15543, 15544, 15545, 15549, 15550, 15555, 15556, 15558, 15563, 15572 }; #endif #if YYDEBUG || YYERROR_VERBOSE || 0 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. First, the terminals, then, starting at YYNTOKENS, nonterminals. */ static const char *const yytname[] = { "$end", "error", "$undefined", "ABORT_SYM", "ACCESSIBLE_SYM", "ACCOUNT_SYM", "ACTION", "ADD", "ADDDATE_SYM", "AFTER_SYM", "AGAINST", "AGGREGATE_SYM", "ALGORITHM_SYM", "ALL", "ALTER", "ALWAYS_SYM", "ANALYSE_SYM", "ANALYZE_SYM", "AND_AND_SYM", "AND_SYM", "ANY_SYM", "AS", "ASC", "ASCII_SYM", "ASENSITIVE_SYM", "AT_SYM", "AUTOEXTEND_SIZE_SYM", "AUTO_INC", "AVG_ROW_LENGTH", "AVG_SYM", "BACKUP_SYM", "BEFORE_SYM", "BEGIN_SYM", "BETWEEN_SYM", "BIGINT", "BINARY", "BINLOG_SYM", "BIN_NUM", "BIT_AND", "BIT_OR", "BIT_SYM", "BIT_XOR", "BLOB_SYM", "BLOCK_SYM", "BOOLEAN_SYM", "BOOL_SYM", "BOTH", "BTREE_SYM", "BY", "BYTE_SYM", "CACHE_SYM", "CALL_SYM", "CASCADE", "CASCADED", "CASE_SYM", "CAST_SYM", "CATALOG_NAME_SYM", "CHAIN_SYM", "CHANGE", "CHANGED", "CHANNEL_SYM", "CHARSET", "CHAR_SYM", "CHECKSUM_SYM", "CHECK_SYM", "CIPHER_SYM", "CLASS_ORIGIN_SYM", "CLIENT_SYM", "CLOSE_SYM", "COALESCE", "CODE_SYM", "COLLATE_SYM", "COLLATION_SYM", "COLUMNS", "COLUMN_SYM", "COLUMN_FORMAT_SYM", "COLUMN_NAME_SYM", "COMMENT_SYM", "COMMITTED_SYM", "COMMIT_SYM", "COMPACT_SYM", "COMPLETION_SYM", "COMPRESSED_SYM", "COMPRESSION_SYM", "ENCRYPTION_SYM", "CONCURRENT", "CONDITION_SYM", "CONNECTION_SYM", "CONSISTENT_SYM", "CONSTRAINT", "CONSTRAINT_CATALOG_SYM", "CONSTRAINT_NAME_SYM", "CONSTRAINT_SCHEMA_SYM", "CONTAINS_SYM", "CONTEXT_SYM", "CONTINUE_SYM", "CONVERT_SYM", "COUNT_SYM", "CPU_SYM", "CREATE", "CROSS", "CUBE_SYM", "CURDATE", "CURRENT_SYM", "CURRENT_USER", "CURSOR_SYM", "CURSOR_NAME_SYM", "CURTIME", "DATABASE", "DATABASES", "DATAFILE_SYM", "DATA_SYM", "DATETIME", "DATE_ADD_INTERVAL", "DATE_SUB_INTERVAL", "DATE_SYM", "DAY_HOUR_SYM", "DAY_MICROSECOND_SYM", "DAY_MINUTE_SYM", "DAY_SECOND_SYM", "DAY_SYM", "DEALLOCATE_SYM", "DECIMAL_NUM", "DECIMAL_SYM", "DECLARE_SYM", "DEFAULT", "DEFAULT_AUTH_SYM", "DEFINER_SYM", "DELAYED_SYM", "DELAY_KEY_WRITE_SYM", "DELETE_SYM", "DESC", "DESCRIBE", "DES_KEY_FILE", "DETERMINISTIC_SYM", "DIAGNOSTICS_SYM", "DIRECTORY_SYM", "DISABLE_SYM", "DISCARD", "DISK_SYM", "DISTINCT", "DIV_SYM", "DOUBLE_SYM", "DO_SYM", "DROP", "DUAL_SYM", "DUMPFILE", "DUPLICATE_SYM", "DYNAMIC_SYM", "EACH_SYM", "ELSE", "ELSEIF_SYM", "ENABLE_SYM", "ENCLOSED", "END", "ENDS_SYM", "END_OF_INPUT", "ENGINES_SYM", "ENGINE_SYM", "ENUM", "EQ", "EQUAL_SYM", "ERROR_SYM", "ERRORS", "ESCAPED", "ESCAPE_SYM", "EVENTS_SYM", "EVENT_SYM", "EVERY_SYM", "EXCHANGE_SYM", "EXECUTE_SYM", "EXISTS", "EXIT_SYM", "EXPANSION_SYM", "EXPIRE_SYM", "EXPORT_SYM", "EXTENDED_SYM", "EXTENT_SIZE_SYM", "EXTRACT_SYM", "FALSE_SYM", "FAST_SYM", "FAULTS_SYM", "FETCH_SYM", "FILE_SYM", "FILE_BLOCK_SIZE_SYM", "FILTER_SYM", "FIRST_SYM", "FIXED_SYM", "FLOAT_NUM", "FLOAT_SYM", "FLUSH_SYM", "FOLLOWS_SYM", "FORCE_SYM", "FOREIGN", "FOR_SYM", "FORMAT_SYM", "FOUND_SYM", "FROM", "FULL", "FULLTEXT_SYM", "FUNCTION_SYM", "GE", "GENERAL", "GENERATED", "GROUP_REPLICATION", "GEOMETRYCOLLECTION", "GEOMETRY_SYM", "GET_FORMAT", "GET_SYM", "GLOBAL_SYM", "GRANT", "GRANTS", "GROUP_SYM", "GROUP_CONCAT_SYM", "GT_SYM", "HANDLER_SYM", "HASH_SYM", "HAVING", "HELP_SYM", "HEX_NUM", "HIGH_PRIORITY", "HOST_SYM", "HOSTS_SYM", "HOUR_MICROSECOND_SYM", "HOUR_MINUTE_SYM", "HOUR_SECOND_SYM", "HOUR_SYM", "IDENT", "IDENTIFIED_SYM", "IDENT_QUOTED", "IF", "IGNORE_SYM", "IGNORE_SERVER_IDS_SYM", "IMPORT", "INDEXES", "INDEX_SYM", "INFILE", "INITIAL_SIZE_SYM", "INNER_SYM", "INOUT_SYM", "INSENSITIVE_SYM", "INSERT", "INSERT_METHOD", "INSTANCE_SYM", "INSTALL_SYM", "INTERVAL_SYM", "INTO", "INT_SYM", "INVOKER_SYM", "IN_SYM", "IO_AFTER_GTIDS", "IO_BEFORE_GTIDS", "IO_SYM", "IPC_SYM", "IS", "ISOLATION", "ISSUER_SYM", "ITERATE_SYM", "JOIN_SYM", "JSON_SEPARATOR_SYM", "JSON_UNQUOTED_SEPARATOR_SYM", "JSON_SYM", "KEYS", "KEY_BLOCK_SIZE", "KEY_SYM", "KILL_SYM", "LANGUAGE_SYM", "LAST_SYM", "LE", "LEADING", "LEAVES", "LEAVE_SYM", "LEFT", "LESS_SYM", "LEVEL_SYM", "LEX_HOSTNAME", "LIKE", "LIMIT", "LINEAR_SYM", "LINES", "LINESTRING", "LIST_SYM", "LOAD", "LOCAL_SYM", "LOCATOR_SYM", "LOCKS_SYM", "LOCK_SYM", "LOGFILE_SYM", "LOGS_SYM", "LONGBLOB", "LONGTEXT", "LONG_NUM", "LONG_SYM", "LOOP_SYM", "LOW_PRIORITY", "LT", "MASTER_AUTO_POSITION_SYM", "MASTER_BIND_SYM", "MASTER_CONNECT_RETRY_SYM", "MASTER_DELAY_SYM", "MASTER_HOST_SYM", "MASTER_LOG_FILE_SYM", "MASTER_LOG_POS_SYM", "MASTER_PASSWORD_SYM", "MASTER_PORT_SYM", "MASTER_RETRY_COUNT_SYM", "MASTER_SERVER_ID_SYM", "MASTER_SSL_CAPATH_SYM", "MASTER_TLS_VERSION_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_SSL_VERIFY_SERVER_CERT_SYM", "MASTER_SYM", "MASTER_USER_SYM", "MASTER_HEARTBEAT_PERIOD_SYM", "MATCH", "MAX_CONNECTIONS_PER_HOUR", "MAX_QUERIES_PER_HOUR", "MAX_ROWS", "MAX_SIZE_SYM", "MAX_SYM", "MAX_UPDATES_PER_HOUR", "MAX_USER_CONNECTIONS_SYM", "MAX_VALUE_SYM", "MEDIUMBLOB", "MEDIUMINT", "MEDIUMTEXT", "MEDIUM_SYM", "MEMORY_SYM", "MERGE_SYM", "MESSAGE_TEXT_SYM", "MICROSECOND_SYM", "MIGRATE_SYM", "MINUTE_MICROSECOND_SYM", "MINUTE_SECOND_SYM", "MINUTE_SYM", "MIN_ROWS", "MIN_SYM", "MODE_SYM", "MODIFIES_SYM", "MODIFY_SYM", "MOD_SYM", "MONTH_SYM", "MULTILINESTRING", "MULTIPOINT", "MULTIPOLYGON", "MUTEX_SYM", "MYSQL_ERRNO_SYM", "NAMES_SYM", "NAME_SYM", "NATIONAL_SYM", "NATURAL", "NCHAR_STRING", "NCHAR_SYM", "NDBCLUSTER_SYM", "NE", "NEG", "NEVER_SYM", "NEW_SYM", "NEXT_SYM", "NODEGROUP_SYM", "NONE_SYM", "NOT2_SYM", "NOT_SYM", "NOW_SYM", "NO_SYM", "NO_WAIT_SYM", "NO_WRITE_TO_BINLOG", "NULL_SYM", "NUM", "NUMBER_SYM", "NUMERIC_SYM", "NVARCHAR_SYM", "OFFSET_SYM", "ON", "ONE_SYM", "ONLY_SYM", "OPEN_SYM", "OPTIMIZE", "OPTIMIZER_COSTS_SYM", "OPTIONS_SYM", "OPTION", "OPTIONALLY", "OR2_SYM", "ORDER_SYM", "OR_OR_SYM", "OR_SYM", "OUTER", "OUTFILE", "OUT_SYM", "OWNER_SYM", "PACK_KEYS_SYM", "PAGE_SYM", "PARAM_MARKER", "PARSER_SYM", "PARSE_GCOL_EXPR_SYM", "PARTIAL", "PARTITION_SYM", "PARTITIONS_SYM", "PARTITIONING_SYM", "PASSWORD", "PHASE_SYM", "PLUGIN_DIR_SYM", "PLUGIN_SYM", "PLUGINS_SYM", "POINT_SYM", "POLYGON", "PORT_SYM", "POSITION_SYM", "PRECEDES_SYM", "PRECISION", "PREPARE_SYM", "PRESERVE_SYM", "PREV_SYM", "PRIMARY_SYM", "PRIVILEGES", "PROCEDURE_SYM", "PROCESS", "PROCESSLIST_SYM", "PROFILE_SYM", "PROFILES_SYM", "PROXY_SYM", "PURGE", "QUARTER_SYM", "QUERY_SYM", "QUICK", "RANGE_SYM", "READS_SYM", "READ_ONLY_SYM", "READ_SYM", "READ_WRITE_SYM", "REAL", "REBUILD_SYM", "RECOVER_SYM", "REDOFILE_SYM", "REDO_BUFFER_SIZE_SYM", "REDUNDANT_SYM", "REFERENCES", "REGEXP", "RELAY", "RELAYLOG_SYM", "RELAY_LOG_FILE_SYM", "RELAY_LOG_POS_SYM", "RELAY_THREAD", "RELEASE_SYM", "RELOAD", "REMOVE_SYM", "RENAME", "REORGANIZE_SYM", "REPAIR", "REPEATABLE_SYM", "REPEAT_SYM", "REPLACE", "REPLICATION", "REPLICATE_DO_DB", "REPLICATE_IGNORE_DB", "REPLICATE_DO_TABLE", "REPLICATE_IGNORE_TABLE", "REPLICATE_WILD_DO_TABLE", "REPLICATE_WILD_IGNORE_TABLE", "REPLICATE_REWRITE_DB", "REQUIRE_SYM", "RESET_SYM", "RESIGNAL_SYM", "RESOURCES", "RESTORE_SYM", "RESTRICT", "RESUME_SYM", "RETURNED_SQLSTATE_SYM", "RETURNS_SYM", "RETURN_SYM", "REVERSE_SYM", "REVOKE", "RIGHT", "ROLLBACK_SYM", "ROLLUP_SYM", "ROTATE_SYM", "ROUTINE_SYM", "ROWS_SYM", "ROW_FORMAT_SYM", "ROW_SYM", "ROW_COUNT_SYM", "RTREE_SYM", "SAVEPOINT_SYM", "SCHEDULE_SYM", "SCHEMA_NAME_SYM", "SECOND_MICROSECOND_SYM", "SECOND_SYM", "SECURITY_SYM", "SELECT_SYM", "SENSITIVE_SYM", "SEPARATOR_SYM", "SERIALIZABLE_SYM", "SERIAL_SYM", "SESSION_SYM", "SERVER_SYM", "SERVER_OPTIONS", "SET", "SET_VAR", "SHARE_SYM", "SHIFT_LEFT", "SHIFT_RIGHT", "SHOW", "SHUTDOWN", "SIGNAL_SYM", "SIGNED_SYM", "SIMPLE_SYM", "SLAVE", "SLOW", "SMALLINT", "SNAPSHOT_SYM", "SOCKET_SYM", "SONAME_SYM", "SOUNDS_SYM", "SOURCE_SYM", "SPATIAL_SYM", "SPECIFIC_SYM", "SQLEXCEPTION_SYM", "SQLSTATE_SYM", "SQLWARNING_SYM", "SQL_AFTER_GTIDS", "SQL_AFTER_MTS_GAPS", "SQL_BEFORE_GTIDS", "SQL_BIG_RESULT", "SQL_BUFFER_RESULT", "SQL_CACHE_SYM", "SQL_CALC_FOUND_ROWS", "SQL_NO_CACHE_SYM", "SQL_SMALL_RESULT", "SQL_SYM", "SQL_THREAD", "SSL_SYM", "STACKED_SYM", "STARTING", "STARTS_SYM", "START_SYM", "STATS_AUTO_RECALC_SYM", "STATS_PERSISTENT_SYM", "STATS_SAMPLE_PAGES_SYM", "STATUS_SYM", "STDDEV_SAMP_SYM", "STD_SYM", "STOP_SYM", "STORAGE_SYM", "STORED_SYM", "STRAIGHT_JOIN", "STRING_SYM", "SUBCLASS_ORIGIN_SYM", "SUBDATE_SYM", "SUBJECT_SYM", "SUBPARTITIONS_SYM", "SUBPARTITION_SYM", "SUBSTRING", "SUM_SYM", "SUPER_SYM", "SUSPEND_SYM", "SWAPS_SYM", "SWITCHES_SYM", "SYSDATE", "TABLES", "TABLESPACE_SYM", "TABLE_REF_PRIORITY", "TABLE_SYM", "TABLE_CHECKSUM_SYM", "TABLE_NAME_SYM", "TEMPORARY", "TEMPTABLE_SYM", "TERMINATED", "TEXT_STRING", "TEXT_SYM", "THAN_SYM", "THEN_SYM", "TIMESTAMP", "TIMESTAMP_ADD", "TIMESTAMP_DIFF", "TIME_SYM", "TINYBLOB", "TINYINT", "TINYTEXT", "TO_SYM", "TRAILING", "TRANSACTION_SYM", "TRIGGERS_SYM", "TRIGGER_SYM", "TRIM", "TRUE_SYM", "TRUNCATE_SYM", "TYPES_SYM", "TYPE_SYM", "UDF_RETURNS_SYM", "ULONGLONG_NUM", "UNCOMMITTED_SYM", "UNDEFINED_SYM", "UNDERSCORE_CHARSET", "UNDOFILE_SYM", "UNDO_BUFFER_SIZE_SYM", "UNDO_SYM", "UNICODE_SYM", "UNINSTALL_SYM", "UNION_SYM", "UNIQUE_SYM", "UNKNOWN_SYM", "UNLOCK_SYM", "UNSIGNED", "UNTIL_SYM", "UPDATE_SYM", "UPGRADE_SYM", "USAGE", "USER", "USE_FRM", "USE_SYM", "USING", "UTC_DATE_SYM", "UTC_TIMESTAMP_SYM", "UTC_TIME_SYM", "VALIDATION_SYM", "VALUES", "VALUE_SYM", "VARBINARY", "VARCHAR", "VARIABLES", "VARIANCE_SYM", "VARYING", "VAR_SAMP_SYM", "VIEW_SYM", "VIRTUAL_SYM", "WAIT_SYM", "WARNINGS", "WEEK_SYM", "WEIGHT_STRING_SYM", "WHEN_SYM", "WHERE", "WHILE_SYM", "WITH", "WITH_CUBE_SYM", "WITH_ROLLUP_SYM", "WITHOUT_SYM", "WORK_SYM", "WRAPPER_SYM", "WRITE_SYM", "X509_SYM", "XA_SYM", "XID_SYM", "XML_SYM", "XOR", "YEAR_MONTH_SYM", "YEAR_SYM", "ZEROFILL", "JSON_OBJECTAGG", "JSON_ARRAYAGG", "'|'", "'&'", "'-'", "'+'", "'*'", "'/'", "'%'", "'^'", "'~'", "'('", "')'", "','", "'!'", "'{'", "'}'", "';'", "'@'", "'.'", "':'", "$accept", "query", "$@1", "opt_end_of_input", "verb_clause", "statement", "deallocate", "deallocate_or_drop", "prepare", "prepare_src", "execute", "$@2", "execute_using", "execute_var_list", "execute_var_ident", "help", "$@3", "change", "$@4", "$@5", "filter_defs", "filter_def", "opt_filter_db_list", "filter_db_list", "filter_db_ident", "opt_filter_db_pair_list", "filter_db_pair_list", "opt_filter_table_list", "filter_table_list", "filter_table_ident", "opt_filter_string_list", "filter_string_list", "filter_string", "master_defs", "master_def", "ignore_server_id_list", "ignore_server_id", "master_file_def", "opt_channel", "create", "$@6", "$@7", "$@8", "$@9", "$@10", "$@11", "$@12", "$@13", "$@14", "server_options_list", "server_option", "event_tail", "$@15", "ev_schedule_time", "$@16", "opt_ev_status", "ev_starts", "ev_ends", "opt_ev_on_completion", "ev_on_completion", "opt_ev_comment", "ev_sql_stmt", "$@17", "ev_sql_stmt_inner", "clear_privileges", "clear_password_expire_options", "sp_name", "sp_a_chistics", "sp_c_chistics", "sp_chistic", "sp_c_chistic", "sp_suid", "call", "$@18", "opt_sp_cparam_list", "opt_sp_cparams", "sp_cparams", "sp_fdparam_list", "sp_fdparams", "sp_init_param", "sp_fdparam", "sp_pdparam_list", "sp_pdparams", "sp_pdparam", "sp_opt_inout", "sp_proc_stmts", "sp_proc_stmts1", "sp_decls", "sp_decl", "$@19", "$@20", "$@21", "sp_handler_type", "sp_hcond_list", "sp_hcond_element", "sp_cond", "sqlstate", "opt_value", "sp_hcond", "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_idents", "sp_opt_default", "$@22", "sp_proc_stmt", "sp_proc_stmt_if", "$@23", "sp_proc_stmt_statement", "$@24", "sp_proc_stmt_return", "$@25", "sp_proc_stmt_unlabeled", "$@26", "sp_proc_stmt_leave", "sp_proc_stmt_iterate", "sp_proc_stmt_open", "sp_proc_stmt_fetch", "$@27", "sp_proc_stmt_close", "sp_opt_fetch_noise", "sp_fetch_list", "sp_if", "$@28", "$@29", "$@30", "sp_elseifs", "case_stmt_specification", "simple_case_stmt", "$@31", "$@32", "searched_case_stmt", "$@33", "simple_when_clause_list", "searched_when_clause_list", "simple_when_clause", "$@34", "$@35", "searched_when_clause", "$@36", "$@37", "else_clause_opt", "sp_labeled_control", "$@38", "sp_opt_label", "sp_labeled_block", "$@39", "sp_unlabeled_block", "$@40", "sp_block_content", "$@41", "sp_unlabeled_control", "$@42", "$@43", "$@44", "$@45", "trg_action_time", "trg_event", "change_tablespace_access", "change_tablespace_info", "tablespace_info", "opt_logfile_group_name", "alter_tablespace_info", "logfile_group_info", "alter_logfile_group_info", "add_log_file", "change_ts_option_list", "$@46", "change_ts_options", "change_ts_option", "tablespace_option_list", "tablespace_options", "tablespace_option", "alter_tablespace_option_list", "alter_tablespace_options", "alter_tablespace_option", "logfile_group_option_list", "logfile_group_options", "logfile_group_option", "alter_logfile_group_option_list", "alter_logfile_group_options", "alter_logfile_group_option", "ts_datafile", "lg_undofile", "lg_redofile", "tablespace_name", "logfile_group_name", "ts_access_mode", "opt_ts_initial_size", "opt_ts_autoextend_size", "opt_ts_max_size", "opt_ts_extent_size", "opt_ts_undo_buffer_size", "opt_ts_redo_buffer_size", "opt_ts_nodegroup", "opt_ts_comment", "opt_ts_engine", "opt_ts_file_block_size", "ts_wait", "size_number", "create2", "create2a", "$@47", "create3", "$@48", "$@49", "opt_create_partitioning", "opt_partitioning", "partitioning", "$@50", "partition_entry", "$@51", "partition", "part_type_def", "$@52", "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", "$@53", "$@54", "sub_part_field_list", "sub_part_field_item", "part_func_expr", "opt_num_subparts", "part_defs", "part_def_list", "part_definition", "$@55", "part_name", "opt_part_values", "$@56", "$@57", "part_func_max", "part_values_in", "part_value_list", "part_value_item", "$@58", "$@59", "part_value_item_list", "part_value_expr_item", "opt_sub_partition", "sub_part_list", "sub_part_definition", "$@60", "sub_name", "opt_part_options", "opt_part_option_list", "opt_part_option", "create_select", "opt_as", "opt_create_database_options", "create_database_options", "create_database_option", "opt_table_options", "table_options", "table_option", "opt_if_not_exists", "opt_create_table_options", "create_table_options_space_separated", "create_table_options", "create_table_option", "$@61", "default_charset", "default_collation", "storage_engines", "known_storage_engines", "row_types", "merge_insert_types", "udf_type", "create_field_list", "field_list", "field_list_item", "column_def", "key_def", "opt_check_constraint", "check_constraint", "opt_constraint", "constraint", "field_spec", "$@62", "field_def", "opt_generated_always", "opt_gcol_attribute_list", "gcol_attribute_list", "gcol_attribute", "opt_stored_attribute", "parse_gcol_expr", "generated_column_func", "type", "$@63", "$@64", "spatial_type", "char", "nchar", "varchar", "nvarchar", "int_type", "real_type", "float_options", "precision", "type_datetime_precision", "func_datetime_precision", "field_options", "field_opt_list", "field_option", "field_length", "opt_field_length", "opt_precision", "opt_attribute", "opt_attribute_list", "attribute", "type_with_opt_collate", "now", "now_or_signed_literal", "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", "opt_collate", "opt_collate_explicit", "collation_name_or_default", "opt_default", "ascii", "unicode", "opt_binary", "opt_bin_mod", "ws_nweights", "$@65", "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", "normal_key_type", "constraint_key_type", "key_or_index", "opt_key_or_index", "keys_or_index", "opt_unique", "fulltext", "spatial", "init_key_options", "key_alg", "normal_key_options", "fulltext_key_options", "spatial_key_options", "normal_key_opts", "spatial_key_opts", "fulltext_key_opts", "key_using_alg", "all_key_opt", "normal_key_opt", "spatial_key_opt", "fulltext_key_opt", "btree_or_rtree", "key_list", "key_part", "opt_ident", "opt_component", "string_list", "alter", "$@66", "$@67", "$@68", "$@69", "$@70", "$@71", "$@72", "alter_user_command", "opt_account_lock_password_expire_options", "opt_account_lock_password_expire_option_list", "opt_account_lock_password_expire_option", "password_expire", "connect_options", "connect_option_list", "connect_option", "user_func", "ev_alter_on_schedule_completion", "opt_ev_rename_to", "opt_ev_sql_stmt", "ident_or_empty", "alter_commands", "alter_command_list", "standalone_alter_commands", "$@73", "$@74", "$@75", "opt_validation", "alter_opt_validation", "remove_partitioning", "all_or_alt_part_name_list", "add_partition_rule", "$@76", "add_part_extra", "reorg_partition_rule", "$@77", "reorg_parts_rule", "$@78", "alt_part_name_list", "alt_part_name_item", "alter_list", "alter_commands_modifier_list", "add_column", "alter_list_item", "$@79", "$@80", "$@81", "alter_commands_modifier", "opt_index_lock_algorithm", "alter_algorithm_option", "alter_lock_option", "opt_column", "opt_ignore", "opt_restrict", "opt_place", "opt_to", "group_replication", "slave", "slave_start", "start_slave_opts", "$@82", "start", "opt_start_transaction_option_list", "start_transaction_option_list", "start_transaction_option", "slave_connection_opts", "slave_user_name_opt", "slave_user_pass_opt", "slave_plugin_auth_opt", "slave_plugin_dir_opt", "opt_slave_thread_option_list", "slave_thread_option_list", "slave_thread_option", "slave_until", "slave_until_opts", "checksum", "$@83", "opt_checksum_type", "repair", "$@84", "opt_mi_repair_type", "mi_repair_types", "mi_repair_type", "analyze", "$@85", "binlog_base64_event", "check", "$@86", "opt_mi_check_type", "mi_check_types", "mi_check_type", "optimize", "$@87", "opt_no_write_to_binlog", "rename", "$@88", "rename_list", "table_to_table_list", "table_to_table", "keycache", "$@89", "keycache_list_or_parts", "keycache_list", "assign_to_keycache", "assign_to_keycache_parts", "key_cache_name", "preload", "$@90", "preload_list_or_parts", "preload_list", "preload_keys", "preload_keys_parts", "adm_partition", "$@91", "cache_keys_spec", "cache_key_list_or_empty", "opt_ignore_leaves", "select", "select_init", "select_paren", "select_paren_derived", "select_part2", "select_options_and_item_list", "$@92", "table_expression", "from_clause", "opt_from_clause", "table_reference_list", "select_options", "select_option_list", "select_option", "opt_select_lock_type", "select_item_list", "select_item", "select_alias", "optional_braces", "expr", "bool_pri", "predicate", "bit_expr", "or", "and", "not", "not2", "comp_op", "all_or_any", "simple_expr", "function_call_keyword", "function_call_nonkeyword", "function_call_conflict", "geometry_function", "function_call_generic", "fulltext_options", "opt_natural_language_mode", "opt_query_expansion", "opt_udf_expr_list", "udf_expr_list", "udf_expr", "sum_expr", "variable", "variable_aux", "opt_distinct", "opt_gconcat_separator", "opt_gorder_clause", "gorder_list", "in_sum_expr", "cast_type", "opt_expr_list", "expr_list", "ident_list_arg", "ident_list", "opt_expr", "opt_else", "when_list", "table_ref", "join_table_list", "esc_table_ref", "derived_table_list", "join_table", "normal_join", "opt_use_partition", "use_partition", "table_factor", "select_derived_union", "select_part2_derived", "$@93", "select_derived", "opt_outer", "index_hint_clause", "index_hint_type", "index_hint_definition", "index_hints_list", "opt_index_hints_list", "opt_key_definition", "opt_key_usage_list", "key_usage_element", "key_usage_list", "using_list", "interval", "interval_time_stamp", "date_time_type", "table_alias", "opt_table_alias", "opt_all", "opt_where_clause", "opt_having_clause", "opt_escape", "opt_group_clause", "group_list", "olap_opt", "alter_order_clause", "alter_order_list", "alter_order_item", "opt_order_clause", "order_clause", "order_list", "opt_ordering_direction", "ordering_direction", "opt_limit_clause", "limit_clause", "limit_options", "limit_option", "opt_simple_limit", "ulong_num", "real_ulong_num", "ulonglong_num", "real_ulonglong_num", "dec_num_error", "dec_num", "opt_procedure_analyse_clause", "opt_procedure_analyse_params", "procedure_analyse_param", "select_var_list", "select_var_ident", "opt_into", "into", "into_destination", "do_stmt", "empty_select_options", "drop", "$@94", "$@95", "$@96", "$@97", "table_list", "table_name", "table_alias_ref_list", "if_exists", "opt_temporary", "drop_ts_options_list", "drop_ts_options", "drop_ts_option", "insert_stmt", "replace_stmt", "insert_lock_option", "replace_lock_option", "opt_INTO", "insert_from_constructor", "insert_from_subquery", "fields", "insert_values", "insert_query_expression", "value_or_values", "values_list", "equal", "opt_equal", "row_value", "opt_values", "values", "expr_or_default", "opt_insert_update_list", "update_stmt", "update_list", "update_elem", "opt_low_priority", "delete_stmt", "opt_wild", "opt_delete_options", "opt_delete_option", "truncate", "$@98", "opt_table_sym", "opt_profile_defs", "profile_defs", "profile_def", "opt_profile_args", "show", "$@99", "show_param", "$@100", "$@101", "show_engine_param", "master_or_binary", "opt_storage", "opt_db", "opt_full", "from_or_in", "binlog_in", "binlog_from", "opt_wild_or_where", "opt_wild_or_where_for_show", "describe", "$@102", "$@103", "explainable_command", "describe_command", "opt_extended_describe", "opt_describe_column", "flush", "$@104", "flush_options", "$@105", "$@106", "opt_flush_lock", "$@107", "flush_options_list", "flush_option", "opt_table_list", "reset", "$@108", "reset_options", "reset_option", "$@109", "slave_reset_options", "purge", "$@110", "purge_options", "purge_option", "kill", "kill_option", "use", "load", "$@111", "$@112", "$@113", "$@114", "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", "param_marker", "signed_literal", "literal", "NUM_literal", "temporal_literal", "insert_ident", "table_wild", "order_expr", "grouping_expr", "simple_ident", "simple_ident_nospvar", "simple_ident_q", "field_ident", "table_ident", "table_ident_opt_wild", "table_ident_nodb", "IDENT_sys", "TEXT_STRING_sys_nonewline", "filter_wild_db_table_string", "TEXT_STRING_sys", "TEXT_STRING_literal", "TEXT_STRING_filesystem", "ident", "label_ident", "ident_or_text", "user", "keyword", "keyword_sp", "set", "start_option_value_list", "start_option_value_list_following_option_type", "option_value_list_continued", "option_value_list", "option_value", "option_type", "opt_var_type", "opt_var_ident_type", "option_value_following_option_type", "option_value_no_option_type", "internal_variable_name", "transaction_characteristics", "transaction_access_mode", "opt_transaction_access_mode", "isolation_level", "opt_isolation_level", "transaction_access_mode_types", "isolation_types", "password", "set_expr_or_default", "lock", "$@115", "table_or_tables", "table_lock_list", "table_lock", "lock_option", "unlock", "$@116", "shutdown_stmt", "alter_instance_stmt", "alter_instance_action", "handler", "$@117", "handler_read_or_scan", "handler_scan_function", "handler_rkey_function", "$@118", "handler_rkey_mode", "revoke", "$@119", "revoke_command", "grant", "$@120", "grant_command", "opt_table", "grant_privileges", "opt_privileges", "object_privilege_list", "object_privilege", "$@121", "$@122", "$@123", "$@124", "opt_and", "require_list", "require_list_element", "grant_ident", "user_list", "grant_list", "grant_user", "opt_column_list", "column_list", "column_list_id", "require_clause", "grant_options", "opt_grant_option", "grant_option_list", "grant_option", "begin", "$@125", "opt_work", "opt_chain", "opt_release", "opt_savepoint", "commit", "rollback", "savepoint", "release", "opt_union_clause", "union_list", "union_opt", "opt_union_order_or_limit", "union_order_or_limit", "order_or_limit", "union_option", "query_specification", "query_expression_body", "subselect", "$@126", "opt_query_spec_options", "query_spec_option_list", "query_spec_option", "view_or_trigger_or_sp_or_event", "definer_tail", "no_definer_tail", "definer_opt", "no_definer", "definer", "view_replace_or_algorithm", "view_replace", "view_algorithm", "view_suid", "view_tail", "$@127", "view_list_opt", "view_list", "view_select", "$@128", "view_select_aux", "$@129", "create_view_select_paren", "$@130", "create_view_select", "$@131", "view_check_option", "trigger_action_order", "trigger_follows_precedes_clause", "trigger_tail", "$@132", "udf_tail", "sf_tail", "$@133", "$@134", "$@135", "$@136", "$@137", "sp_tail", "$@138", "$@139", "$@140", "$@141", "xa", "opt_convert_xid", "xid", "begin_or_start", "opt_join_or_resume", "opt_one_phase", "opt_suspend", "install", "uninstall", YY_NULLPTR }; #endif # ifdef YYPRINT /* YYTOKNUM[NUM] -- (External) token number corresponding to the (internal) symbol number NUM (which must be that of a token). */ static const yytype_uint16 yytoknum[] = { 0, 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, 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, 783, 784, 785, 786, 787, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, 804, 805, 806, 807, 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, 818, 819, 820, 821, 822, 823, 824, 825, 826, 827, 828, 829, 830, 831, 832, 833, 834, 835, 836, 837, 838, 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, 856, 857, 858, 859, 860, 861, 862, 863, 864, 865, 866, 867, 868, 869, 870, 871, 872, 873, 874, 875, 876, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, 907, 908, 909, 124, 38, 45, 43, 42, 47, 37, 94, 126, 40, 41, 44, 33, 123, 125, 59, 64, 46, 58 }; # endif #define YYPACT_NINF -4060 #define yypact_value_is_default(Yystate) \ (!!((Yystate) == (-4060))) #define YYTABLE_NINF -2562 #define yytable_value_is_error(Yytable_value) \ 0 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ static const int yypact[] = { 3531, 2240, 94, -4060, -134, 779, 56052, 1110, 1396, 1396, 404, 2736, -4060, 1355, -4060, -4060, -4060, 3292, -4060, 56052, 94, 147, -4060, 28285, -4060, 1349, 664, 896, 159, 1396, 94, 438, -4060, 56052, -4060, 639, 1479, 94, 947, -4060, 49612, -4060, 404, 56052, -4060, 31524, -4060, -4060, 49612, 443, 175, 694, 1116, -4060, 1165, 56052, 1494, -135, 1537, 1399, -4060, -4060, 1188, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 44460, -4060, -4060, 1012, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 28933, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1510, 56052, 1516, 56052, 1151, 1486, 56052, 48324, 56052, 28285, 1546, 1641, -4060, -4060, 1787, -4060, -4060, 1396, 404, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1254, -4060, -4060, 1362, 1766, -4060, -4060, -4060, -4060, -4060, 1946, 1775, -4060, 1805, 48324, -4060, 56052, -4060, -4060, 1775, 236, 1441, -4060, 1463, 1802, 1807, 1812, -4060, -4060, -4060, 50256, 1355, 10458, 1546, 1546, 1546, 56052, 1841, 1546, 1546, 56052, -4060, 1546, 1546, 1546, 1396, -4060, -4060, -4060, -4060, 1926, -4060, -4060, 56052, 1682, 210, 633, 48324, -4060, -4060, -4060, 1849, 56052, -4060, -4060, 13798, -4060, 1845, -4060, -4060, -4060, 1396, 13798, 2046, 1906, 305, 56052, -4060, -4060, 1396, -4060, -4060, 1888, -4060, 1105, 1489, -4060, -4060, 1634, -4060, -4060, 167, -4060, 1538, 1388, 2798, 227, 1647, 1490, 437, 450, 41884, 856, 456, 102, 32171, 42528, 1499, -4060, 50900, 1487, 115, 4840, 1634, -4060, -37, -91, -4060, -37, -4060, -4060, 56052, 1396, 1849, -4060, -4060, 243, 243, 243, 2064, 243, -4060, 243, -4060, -135, 1535, -4060, -4060, 1511, 56052, 1549, -4060, 1554, 1974, -4060, -4060, 1544, 1995, 755, -4060, 2830, -4060, 1614, 2500, 2074, 2506, -4060, -4060, 1568, 1175, -4060, 1642, 45104, -4060, 48324, -4060, 56052, -4060, 1871, -4060, -4060, -4060, 1732, -4060, -4060, 2087, -4060, 56052, 1726, -4060, -4060, -4060, 28285, 1602, 56052, -4060, -4060, 28285, 28285, 196, 746, 1488, 56052, 56052, 2075, -4060, 2265, -4060, 1817, -4060, 181, 1518, 1787, 2266, -4060, 1775, -4060, 56052, 56052, 56052, 28285, 250, -4060, 1629, -4060, 1626, 1648, 1650, 18474, -4060, 1661, 1679, 1683, 13798, 1688, 1691, 1693, 1697, 1706, 1710, 1714, 1719, 1549, 1549, 1725, 1730, 1734, 1740, 539, 1742, -4060, 1749, 1755, 1804, -4060, -4060, 1828, 1830, 1836, 1843, -4060, 1857, 1861, 1869, 14466, 1876, 1884, -4060, 25680, 1886, 1892, 1899, 1909, 1920, 1922, 1937, 1963, 1975, -4060, -4060, 13798, 1725, -4060, -4060, -4060, 1984, 1990, 1998, 2007, 2009, 2012, 2017, 2025, 2027, 2033, 2037, 2047, 2053, 2058, 2065, 2071, 2082, 1725, -4060, 1016, 2104, 2111, 1156, 2118, -4060, 2120, -4060, 308, 2124, 1549, 1725, 1725, 2126, 2129, 2139, 2142, 2146, 2155, 2158, 2165, 18474, 18474, -4060, 18474, 13798, -4060, 56052, 32818, 56052, -4060, 1773, -4060, 41237, 3699, -4060, 2493, 18474, 218, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1733, -4060, -4060, -4060, -4060, -4060, 1609, -4060, 2167, 1724, 56052, 56052, 56052, 2102, 56052, 56052, 48324, 880, 56052, -4060, -4060, 1546, 1954, 3207, 34759, 3542, -4060, 139, -4060, -4060, 56052, -4060, -4060, 1888, 2073, 1428, 1931, 2404, 1039, 28285, -4060, 1945, 1428, 941, -4060, -185, -4060, -4060, 2450, -4060, -4060, 45104, 28285, -4060, -4060, 28285, -4060, 2797, -4060, 2183, -4060, -4060, 1733, 3870, -4060, 3768, 2367, 746, 349, -4060, -4060, 30877, 2815, 2599, -4060, 2671, 1456, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 10458, 2798, -4060, -4060, -4060, 56052, -4060, -4060, -4060, -4060, -4060, 2807, 13798, -4060, 45104, -49, 2610, 717, -4060, 2229, 2231, -4060, 980, 115, -4060, -4060, -4060, -4060, -4060, 56052, 102, -4060, 1487, 115, 33465, -4060, 9790, 2734, -4060, 329, 2238, 2302, 329, 45748, 2599, 1595, -4060, 291, -4060, 2711, -4060, -4060, -4060, -4060, 2372, 2355, -4060, -4060, 342, 1895, -4060, 2764, -4060, 714, -4060, 2393, 2599, 329, 1595, -4060, 2653, 2787, 444, -144, -4060, -4060, -4060, -4060, 2280, -4060, 818, 2864, -4060, 2288, -4060, 2762, 28285, -4060, -4060, 23074, -4060, -4060, -4060, 2292, -4060, 2580, 2402, -4060, 2320, -4060, -4060, 72, -4060, 2307, 763, 2820, -4060, 2316, -4060, 2322, 2956, 48324, 143, 216, 45104, 2368, 2848, 2855, 2857, 2870, 2881, -4060, 2883, -4060, 2358, 2884, -4060, 2644, 48324, 2591, 46392, -4060, -4060, -4060, 2927, 2942, -4060, -4060, 2738, -4060, 3052, -4060, -4060, 2396, 2955, 2955, 2955, 3068, -4060, -4060, -4060, 5907, -4060, -4060, -4060, 2585, 2444, -4060, 1726, 28285, 2833, 2420, -4060, -4060, 1431, 13798, -4060, -4060, 4494, 3060, 38, -4060, -4060, 158, -4060, 3030, 2639, -4060, -4060, -4060, -4060, 2925, -4060, -4060, 3052, 2980, 2955, 45104, -4060, 2898, 1775, 56052, 56052, 56052, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 56052, -4060, -4060, -4060, -4060, -4060, -4060, 1726, -4060, 28285, -4060, -4060, -4060, 483, 2697, 1334, 23074, 56052, 37985, -4060, 13798, 13798, 359, 3034, 3093, 3093, 3093, 1428, 2474, 13798, 13798, 13798, 13798, 13798, 13798, 13798, 378, -4060, -4060, -67, -4060, 2446, 13798, 13798, -4060, 13798, 13798, 29581, -4060, 3946, 13798, 13798, 390, 2972, 13798, 13798, 13798, 13798, 2754, 13798, 13798, 29581, 3104, 2449, -4060, 2448, 1031, 13798, 13798, 1051, 13798, 13798, 13798, 13798, 13798, -4060, -4060, 13798, 13798, 13798, 18474, 13798, 13798, 13798, 13798, 13798, 13798, 2456, 13798, 3093, 3093, 13798, 13798, 1461, -4060, -4060, 13798, 2451, 2451, -4060, 13798, 9122, 13798, -4060, -4060, -4060, 2457, -4060, -4060, -4060, 29581, 3093, 3093, 13798, 13798, 13798, 3093, 3093, 3034, 3034, 3034, 273, 2459, -126, 13798, 980, -4060, 2622, 2469, 13798, -4060, -4060, 51544, -4060, -4060, 13798, -4060, 13798, 13798, -4060, -4060, -4060, -4060, -4060, -4060, 1321, -4060, -4060, -4060, 15134, 18474, 18474, 2479, 18474, 18474, 18474, 18474, 18474, 2868, 18474, 18474, 19142, 19810, 18474, 18474, 18474, 18474, 909, 3034, 48324, 18474, -4060, 1733, 1733, 13798, 38637, -4060, -4060, 2484, 28285, 880, -4060, -4060, -4060, -4060, -4060, -4060, 2491, 880, -4060, 3002, -4060, 45104, 28285, -4060, 2490, -4060, 2875, -4060, 2885, 2886, 2888, -4060, -4060, -4060, -4060, 3121, 2891, -4060, 2897, -4060, -4060, 2522, -4060, -4060, 20478, 48324, -4060, 2533, -4060, 3043, -4060, 2784, 2725, 2002, -4060, -4060, -4060, -4060, -4060, 2819, -4060, -4060, 2646, -4060, 2835, -4060, -4060, 384, -4060, 208, -4060, -4060, -4060, -4060, -4060, -4060, 2837, 2546, -4060, -4060, -4060, 56052, -4060, 56696, -4060, 28285, -134, 56052, -4060, -4060, -4060, 2934, 169, 2552, -4060, 28285, -4060, -4060, 97, 97, 2817, 182, 48324, -4060, -4060, 180, 2556, 2641, 2557, -4060, 2642, 28285, 2697, -4060, 3215, 1105, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 2563, 3072, 2784, 2854, -4060, 2856, -4060, 56052, -4060, -4060, -4060, -116, 2664, 2664, 48324, 2573, -4060, -4060, -4060, 13798, 43172, 198, -4060, 22424, 2604, 2633, 2998, -4060, 1773, -4060, -4060, 47036, -4060, 1428, 115, 2587, -4060, -4060, -24, -4060, -4060, 3005, -4060, 2825, -4060, 2581, 2592, 2593, 52188, 13798, -4060, -4060, -4060, 9790, 2596, -4060, 52188, -4060, -4060, 18474, 1749, -4060, 1428, -4060, 3014, -134, 13798, -4060, 2607, 1775, 56052, 56052, 56052, 28285, 56052, -4060, 28285, -4060, 833, 833, -4060, -4060, -4060, -4060, 329, 56052, 56052, 329, 45104, -4060, 1595, 56052, 329, -4060, 3017, 2708, -4060, -4060, -4060, 3090, -4060, -4060, 3079, 2608, -4060, 3014, -4060, 2762, 1595, -4060, -4060, 28285, -4060, -4060, 1595, -4060, 1595, 1595, 335, 335, -37, -4060, -4060, 2767, -91, 3219, -4060, -4060, 2798, 23074, 56052, 2578, 2786, -4060, 2627, -4060, -4060, 2697, 243, 2890, -4060, 3105, -4060, -4060, -4060, -4060, -4060, -4060, 2599, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 2732, -4060, -30, 48324, 2737, 2741, -4060, -4060, 2742, -4060, -4060, 301, -4060, 2081, 252, -134, 1079, -134, 2723, -134, -134, 1477, -134, 2762, 3138, 3181, -4060, 3221, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 131, -4060, -4060, -4060, 1989, 3175, 2625, 3053, 963, 997, 2625, 1782, -134, 228, -4060, 228, -4060, 2839, 115, 3247, 2921, 115, 115, 3247, 115, 2935, 2936, 115, 115, 115, 115, 2752, 3203, 115, 3080, 994, 2076, 3081, 115, 2943, -4060, 1040, 3208, 115, 115, 115, 115, 115, 3247, 2945, 3302, 115, 115, 2949, 213, 2950, 2951, 115, 115, 115, 115, 207, 115, 115, 2952, 115, 2959, 2740, 2747, -4060, 5167, -4060, -4060, -4060, 1145, -4060, -4060, -4060, -4060, 2702, 2704, 26330, -4060, -4060, -4060, -4060, -4060, 2995, 1404, 28285, -4060, 2709, 52832, 28285, -4060, -4060, -4060, 2712, 1664, -4060, -4060, 2713, 2715, 1428, 3222, 3224, 3225, 3226, 3228, 3229, 3231, 3232, 3233, 3235, 3236, 3237, 3239, 3241, 3248, 3250, 3251, 3254, 3256, 3257, 3258, 57, -4060, -4060, 3259, 3266, 3267, 3268, 3271, 3273, 3277, 2775, -4060, -4060, -4060, 28285, -4060, -4060, -4060, -4060, 2796, -4060, -4060, -4060, -4060, 2217, -4060, -4060, -4060, 149, 1790, 2799, 2831, 755, 56052, 56052, 2781, 645, -4060, 440, -4060, -4060, -164, 3069, 3070, 3073, 23074, 2783, 2604, -4060, 37985, 2604, -4060, -4060, 2785, 307, 352, -4060, 3093, 2791, 13798, 2793, 2800, 2801, 13798, 58, 504, 494, 1428, 1379, 1326, 1169, 469, 278, 13798, 2802, 11126, 2806, -4060, -4060, 596, 661, 1253, 1276, 2808, 2809, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 3264, -4060, 720, 2810, 2813, -4060, -4060, -4060, -4060, 2814, -4060, 13798, 1280, 738, 760, 284, 2804, 784, 1390, 1526, 2821, 29581, 56052, 3093, 2816, 1293, 1305, 3093, 2818, 861, 1317, 1573, 1617, 1662, 1337, 901, 1771, 2534, 1371, 916, 988, 1373, 1024, 1067, -4060, 1392, 2824, 2828, 1078, 303, 3093, 2832, 346, 2840, 2847, 1400, 11794, 12462, 13130, 187, 1085, -4060, 2849, -4060, 2448, 2851, 2861, 371, 258, 1433, 2867, 2873, -4060, 13798, -4060, -4060, 642, -4060, 2859, 162, 48324, 13798, 56052, -4060, -4060, -4060, 2213, 184, -4060, -4060, -4060, -4060, -4060, 866, -4060, 2822, -4060, 2841, 1938, 2834, 13798, 211, 2834, 3597, 1469, 1469, 18474, 3370, 3097, 14466, 1001, 14466, 1001, 2834, 2834, 2834, -4060, 18474, 2871, 18474, 18474, -4060, 3034, -4060, -4060, 41237, 2877, 2874, -4060, -4060, 820, 56052, -4060, 2491, -27, -4060, 115, -4060, 2880, 197, 28285, 48324, 2892, -4060, -4060, -4060, -4060, -4060, -4060, 2762, -4060, 3671, 28285, 2899, 2970, 2974, -4060, 35406, -4060, -4060, -4060, -4060, 35406, 5, -4060, -4060, -4060, -4060, -4060, 2985, -4060, -4060, -4060, 2887, -4060, 45104, 2887, -4060, -4060, 2887, -4060, -4060, 2887, 71, 3654, -4060, 251, 287, 3521, 2604, -4060, 2697, -4060, 1312, 28285, -4060, 3318, -10, 28285, 2709, 2893, 18474, -4060, -4060, -4060, -4060, 2763, 3008, -4060, 3549, -4060, 13798, -134, -4060, 45104, 45104, 28285, 28285, 479, 1184, -4060, 2762, -4060, 3870, 20478, 2900, 45104, 821, -4060, -4060, -4060, -4060, 2387, -4060, 34112, 314, 2902, -4060, -4060, -4060, -4060, -4060, 675, -4060, -4060, -4060, -4060, -4060, -4060, 13798, 3357, -4060, 3066, -4060, -4060, -4060, -4060, 663, 2999, 153, 3144, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 115, 1428, -4060, 33465, -4060, -134, 3383, -4060, 1428, 2918, 56052, -4060, -4060, -4060, -4060, -4060, 45104, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 329, -4060, -4060, -4060, -4060, -4060, 3155, 2599, 1895, 3383, -4060, 329, 1595, 28285, 329, 329, -134, 13798, -4060, -4060, -4060, -4060, -4060, -134, 10458, 2627, 1098, 105, 23724, 3327, 3329, -4060, 3196, 960, 3196, 23724, 23724, 29581, 23074, 2397, 2930, -4060, 3260, -4060, -4060, 3020, -4060, 396, -4060, -4060, -4060, -4060, 363, 2723, 2723, 2723, 2723, 2081, -4060, 747, 3424, -4060, 252, -4060, 230, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -134, 3439, 3193, 2763, -4060, 115, 115, 3252, -134, 3067, 3074, 3078, 3085, 3086, 3120, -4060, -4060, -4060, -134, -134, -4060, -4060, 115, -4060, 1226, -4060, -4060, -4060, -4060, -134, -134, -134, -134, 2723, -134, -134, 1796, -4060, -4060, 115, 115, -4060, 1585, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1106, -4060, -4060, 30229, 94, -4060, 271, -4060, 30229, -4060, 1664, 1664, -4060, -4060, 53476, 30229, 94, 1079, 2723, 30229, 2723, 54120, 94, -134, -134, -134, -134, 2387, 115, 2723, -4060, 54120, -4060, 3350, 56052, 3358, 30229, 30229, -4060, 48324, 56052, 54120, -4060, 115, 1378, 2723, 54764, 1079, 1079, 30229, 94, 29581, 2524, -134, 94, -4060, -4060, -4060, 30229, 28285, 94, 94, 923, 2920, 2939, 2958, -4060, -4060, 56052, 2723, 54120, -4060, -4060, -4060, -4060, -4060, -4060, 3217, -4060, -4060, 5554, 6637, 21776, 56052, 340, 526, -4060, 2953, 355, -4060, 3171, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1664, 2960, 55408, -4060, -4060, 13798, 2962, 2723, -134, 2723, 2723, -134, -134, 2723, 2723, -134, -134, -134, -134, -134, -134, -134, -134, 2723, 2723, -134, 1192, 4494, -4060, 2964, 2964, 2965, 2965, 2967, 2967, 2969, 3060, -4060, -4060, -4060, -4060, 202, 115, 115, 115, 115, -4060, 1636, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 48324, 3348, 2374, 2368, 3163, -4060, -4060, 964, 2976, -4060, -4060, 100, 4758, 199, 199, -4060, 28285, 28285, 28285, 2604, 56052, 3261, 1343, -4060, 2986, -4060, 15802, -4060, 2981, -4060, 1428, -4060, -4060, -4060, 242, 13798, 13798, 3493, 2567, -4060, 47680, -4060, 13798, -4060, -4060, 13798, 47680, 2567, 1838, -4060, 2983, -4060, 3408, 3409, -4060, -4060, -4060, -4060, 13798, 13798, -4060, 13798, 692, -4060, 13798, 13798, 13798, 13798, 13798, -4060, -4060, 18474, -4060, 2987, 2990, -4060, -4060, -4060, 3001, -4060, 13798, -4060, -4060, -4060, -4060, -4060, 13798, -4060, 13798, -4060, 13798, 13798, -4060, 13798, 13798, -4060, -4060, -4060, 16470, 13798, 13798, 3006, -4060, -4060, 13798, 13798, 13798, -4060, 13798, 1576, 13798, 2067, 13798, 2140, 13798, -4060, 13798, -4060, -4060, -4060, -4060, 13798, 395, 2763, 2723, 3012, -4060, 3093, -4060, 1846, 2671, 1225, -4060, 642, 3013, 349, -4060, 2992, 1428, -4060, -4060, -4060, -4060, -4060, -4060, 18474, 435, 3015, 18474, -4060, 3597, 2754, 2754, 2101, 13798, 211, 3597, -4060, -4060, 13798, 13798, 39289, -4060, -4060, -4060, 48324, 45104, -4060, -4060, -4060, 197, -4060, 2490, -4060, -4060, 2709, -4060, 3513, 3016, -4060, -4060, -4060, -4060, -4060, -4060, 56052, -4060, 3099, -4060, -4060, -4060, 26980, 26980, -4060, 26980, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 2599, 1701, 56052, -4060, 3018, -4060, -4060, 1431, 2664, 3041, 3410, -4060, -4060, -4060, 56052, 3025, 3597, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 3643, 3028, 3031, 3536, 3033, 1428, -4060, 3114, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 843, 2798, 29581, -4060, -4060, 24374, 1538, -4060, -4060, -4060, -4060, 3035, -4060, 3540, -4060, 3492, 3507, 26980, 26980, 26980, 43816, 3632, -4060, -4060, -4060, -4060, -4060, 13798, 43172, 43172, 1428, 3662, 3494, 3372, 3054, -4060, 3058, -4060, -4060, -4060, 9790, -4060, -4060, 1079, -4060, 92, -4060, -4060, -4060, 3345, -4060, -4060, -4060, -4060, 2604, 1595, -4060, -4060, -4060, 1428, -4060, 259, 349, 1509, -4060, -4060, 1551, -4060, -4060, -4060, 3466, 23724, 3196, 3196, 3468, 3349, -48, 1094, -4060, 115, -4060, 362, 2723, -4060, -4060, -134, -134, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 2763, -4060, -4060, -134, 3567, -4060, -4060, 47036, 43816, -4060, -4060, -4060, -4060, 3618, -4060, 3620, 1618, -4060, -4060, 2264, 1306, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1782, 2264, 2264, 1316, -4060, 172, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 3076, 3469, 3470, 1664, -4060, 30229, -4060, -4060, 30229, 30229, -4060, -4060, 488, 54120, -4060, -4060, -4060, -4060, -4060, -4060, 3071, -4060, -4060, 2763, -4060, -4060, -4060, -4060, 43816, -134, -4060, 3167, 30229, 3071, -4060, -4060, 200, -4060, -4060, 3106, 3177, -134, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 54120, 3077, -4060, 1566, -4060, -4060, -4060, 54120, 3152, -4060, -4060, 54120, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 3083, 2046, -4060, 3098, 1440, -4060, -4060, -4060, 2702, -4060, 3095, 3084, -4060, -4060, -4060, -4060, 56052, -4060, -4060, 28285, -4060, -4060, -4060, 6086, 56052, 1206, 1450, 3178, 1695, 3100, 54120, -4060, 3096, -4060, 3101, -4060, 1428, 2723, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 36053, -4060, -4060, 36697, -4060, -4060, -157, -4060, -4060, 1865, -4060, -4060, -134, 2763, 2264, 2264, 2252, -4060, 3384, 3558, 115, 115, -4060, 2006, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 252, 964, 3397, 56052, -4060, -4060, -4060, -4060, 3262, -4060, -4060, -4060, -4060, 3399, 28285, 21128, -4060, 3385, -4060, 3407, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1872, -4060, 3508, 14466, 1470, -4060, 13798, 1428, 1405, -4060, 3122, 3122, 3127, -4060, 3130, -4060, 3122, 3548, 3127, 3550, 3137, 3140, 1428, 1472, 3142, 3143, -4060, -4060, 13798, 13798, 1552, 441, 1561, 3761, 3314, 1148, 1163, 527, -4060, 1580, 3183, -4060, -4060, 1584, 1597, 1606, 1608, 1187, 1628, 1877, 14466, 1640, 282, 588, -4060, 1750, 1196, 1247, 1752, 13798, 1781, 13798, 1785, 13798, 1808, 1821, 1823, 3147, 3147, 163, -4060, 3153, -4060, -4060, -4060, 3154, -4060, 3157, -4060, -4060, -4060, 2604, 10458, 1225, -4060, 2671, 3158, 105, -126, 56052, -4060, 3162, -4060, -4060, 13798, -4060, 218, -4060, -4060, 18474, 594, 3165, -4060, -4060, 3166, -4060, -4060, 300, -4060, -4060, -4060, -4060, 201, 3759, 35406, -4060, 1879, -4060, 45104, 3160, -4060, 3164, 3269, 3270, 3272, 3170, -4060, 29581, 3467, 3467, 28285, 1664, 3621, -4060, -4060, -4060, 3190, 3192, -4060, -4060, -4060, 3583, 3464, -4060, -4060, 2763, 56052, 45104, -4060, 10458, 3202, 1216, 3205, 1894, -4060, -4060, -4060, 3206, -4060, 17138, 3211, -4060, 20478, 3488, 45104, 3682, 3684, 3686, -4060, 1185, 3605, -4060, -4060, -4060, 13798, 13798, 3261, -4060, 2999, -4060, -4060, -4060, 2599, -4060, -4060, -4060, 2599, -4060, 329, -4060, -126, -4060, -4060, 23724, -4060, 3628, 3629, 23724, 13798, 13798, 3238, 29581, 3261, 17138, -4060, -4060, 1664, 1664, -4060, 362, -4060, -4060, -4060, -4060, -4060, -4060, 3770, -4060, -134, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1106, -4060, -84, 13798, 30229, -4060, -4060, -4060, 3240, -4060, -4060, 3763, 3767, -4060, 30229, 2217, 56052, -4060, 2807, -4060, -4060, -4060, -4060, 3330, -4060, -4060, 6086, -4060, 29581, -4060, -4060, 30229, 56052, -4060, 28285, -4060, -4060, 21776, -4060, 3242, -4060, 3122, 3122, 3122, -4060, -4060, -4060, 3127, -4060, 3130, 3481, -4060, 3130, 3130, -4060, -4060, -4060, -4060, -4060, -4060, 178, 2061, -4060, -4060, 178, -4060, -4060, -4060, 150, 573, 3130, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 3122, 3127, 3127, -4060, -4060, 178, 3122, -4060, 3122, -4060, 3109, -4060, 161, 144, 3122, 3122, 3122, 3243, 3227, 3484, -4060, 13798, 13798, 3524, 56052, 3529, -4060, 3832, 56052, 3889, 3246, -4060, 55408, 1914, -4060, -4060, -4060, 1939, -4060, -4060, -4060, 1953, -4060, 3244, -4060, 1956, -4060, -4060, -4060, 56052, -4060, 1967, -4060, -4060, -4060, -4060, -4060, 3263, 56052, 2264, 2264, 2590, -4060, -4060, 3398, 3431, 3265, 3275, -4060, -4060, -134, 881, 28285, -4060, 28285, -4060, 3430, -4060, -4060, 3279, 360, 4936, -4060, 3278, 3288, 3293, -4060, 56052, 43172, -4060, 2754, -4060, 1428, 13798, 1338, -4060, -4060, 178, 3551, -4060, 1721, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 2754, 2754, -4060, -4060, 13798, -4060, 13798, 243, 3291, 13798, 13798, -4060, 13798, -4060, 280, 3298, 3290, -4060, -4060, -4060, -4060, 13798, -4060, -4060, 2754, -4060, 13798, -4060, -4060, 13798, -4060, 13798, 13798, -4060, 1831, -4060, 1833, -4060, 1859, -4060, -4060, -4060, 2763, 3300, 3658, -4060, -4060, -4060, 2763, 3458, -4060, -4060, 2763, 2723, -4060, 3357, 1773, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1976, -4060, -4060, 13798, -4060, -4060, -4060, 3651, 3954, -4060, 3535, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 56052, -224, 3311, 39941, 45104, 45104, 45104, 17138, 662, 3824, -4060, -4060, -4060, 1664, 3621, 3703, -4060, 120, -4060, 56052, 851, -4060, 1994, -4060, -4060, 3309, -4060, 259, 3430, -4060, -4060, 763, 1216, 29581, 38637, 1749, 1428, 3316, 3320, -4060, 3035, -4060, 3785, 2880, 45104, 45104, 45104, 3939, 3941, 3837, 3943, 1185, -4060, 1347, -4060, 314, 1235, -4060, 1428, 2599, 3328, -4060, 2762, -4060, -4060, 3023, 3379, 23724, 23724, 3108, 3380, 1428, 1428, 56052, -4060, 3508, -4060, 3807, 3807, -4060, -4060, -4060, -4060, 2763, 3464, -4060, 1897, 3338, 3340, 56052, 3343, 3351, -4060, 2629, 340, -4060, -4060, -4060, 28285, -4060, 94, -4060, -4060, -4060, 3071, 843, 3347, -4060, 56052, 3694, -4060, -4060, -4060, -4060, -141, -4060, 3353, -141, -141, 3983, 249, -4060, 3985, 47680, -4060, -4060, -4060, 1647, -4060, 3394, 178, -4060, -4060, 3395, -4060, -4060, -4060, -141, 3359, 178, -4060, -4060, -4060, -4060, -141, -4060, 48324, 1659, -134, 2677, -4060, 3414, -4060, 3909, 1015, 3771, -4060, 3004, -4060, 3834, 3777, 3669, -4060, 178, -4060, -4060, 4008, -4060, 178, 4008, -141, 3670, -4060, -141, 56052, -4060, 1428, 2754, 3964, -4060, -4060, 3544, -134, 3904, -4060, 1999, -4060, -4060, -4060, -4060, 2723, -4060, 56052, -4060, 56052, 56052, -4060, -134, 3382, -4060, 3388, 1782, -4060, -4060, -4060, -4060, -134, 1450, -4060, 56052, 6086, -4060, -4060, -4060, -4060, 3393, 3401, -4060, -4060, 3866, 3396, 3403, 5167, -4060, -4060, -4060, 4048, -4060, 56052, 56052, 56052, -4060, -4060, 1325, 1428, 3412, 3420, 3421, 3422, -4060, 3423, 2022, 3427, 3428, 1903, 3406, -4060, -4060, -4060, 1916, 1251, 2030, 3731, 3809, -4060, 3650, -4060, 1943, 1481, 2021, 2044, 2050, 2054, -4060, -4060, -4060, -4060, -4060, 3432, -4060, -4060, 436, -4060, 3433, 3494, -4060, 2039, -4060, -4060, 3923, 3819, -4060, 3896, -4060, -4060, -4060, 755, 755, 755, 2042, -4060, 3844, -4060, -4060, 3864, -4060, 3449, 3549, 56052, -4060, 3464, -4060, -4060, -4060, -4060, -4060, -4060, 3442, -4060, 17138, -4060, 45104, 2880, 2880, 2880, 243, 243, 4068, 243, -4060, 4069, 4070, 1347, -4060, -4060, -4060, -4060, 13798, -4060, 3698, -4060, -4060, 13798, 3457, -4060, -4060, 13798, 3459, 2068, -4060, 125, 3460, 3461, -4060, 2089, -4060, 56052, 56052, 2100, 1566, 3462, 56052, 56052, 2899, 2970, 2974, 1192, 1192, -4060, -4060, -4060, 1111, 340, -4060, 3874, -4060, -4060, 2105, -4060, 106, 3748, -4060, -4060, -4060, -4060, -141, -4060, 243, -4060, -4060, -4060, -4060, -4060, 47680, -4060, 4008, -4060, -4060, -4060, 243, -4060, -4060, 1045, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 3760, 3506, -4060, -4060, -4060, -4060, 48324, -4060, 4116, 4111, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 3471, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 56052, -4060, 689, -4060, -4060, -4060, -4060, -4060, 56052, 56052, 2115, -4060, 3524, 3659, -4060, 2807, -4060, -4060, 1344, 56052, 3986, -4060, -4060, 3385, -4060, 1035, 2130, 2136, 2169, -4060, -4060, -4060, -4060, -4060, -4060, 3762, -4060, -4060, -4060, 13798, -4060, 13798, -4060, -4060, 3796, 3969, -4060, -4060, -4060, -4060, -4060, -4060, 3478, -4060, 2723, 3261, -4060, -4060, -4060, 3758, 3509, 3509, 3509, -4060, 3539, 3584, 18474, -4060, 3486, 3532, -4060, -4060, -4060, 2880, -4060, -4060, 243, -4060, 243, 243, -4060, -4060, 4139, 3910, 1428, 56052, 1428, 56052, -4060, 4109, -4060, 4110, 55408, 55408, -4060, 2172, 2175, 297, 56052, -4060, 3786, 2177, 2201, -4060, -4060, -4060, -4060, -4060, 3495, -4060, 56052, -4060, -4060, -4060, 108, -4060, -4060, 2221, -4060, -4060, -4060, 2241, -4060, -4060, -4060, -4060, 3501, 3627, -4060, 62492, -4060, -4060, 3504, 3537, -4060, 3511, 3512, -4060, 1695, -4060, -4060, -4060, -4060, -4060, 6086, 3688, 763, 360, 3430, -4060, 297, 122, 276, 3514, -4060, 2099, -4060, -4060, -4060, 3515, 2599, -4060, 2261, -4060, -4060, -4060, 29581, 28285, 3516, 3619, 56052, 1357, 2735, -4060, -4060, -4060, 3518, 198, -4060, 2244, 2258, -4060, -4060, 3520, 2267, 3741, 297, -134, 115, -4060, 297, -4060, -4060, -4060, 1566, 3522, 122, 276, 3464, -4060, 1011, 1011, 178, 243, 178, 13798, 13798, 4031, 3553, 56052, 170, -4060, 63780, 63780, 56052, -4060, -4060, -4060, -4060, 4764, -4060, -4060, 13, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 4157, -4060, 3523, -4060, -4060, 3504, 3526, 3704, 1182, -4060, 1538, -4060, 56052, 3832, 6086, 3713, -4060, 156, -4060, -4060, 3538, 1538, -4060, 3798, -4060, 122, -4060, -4060, -4060, 276, -4060, -4060, -4060, -4060, -4060, 3698, 3814, 2723, 2723, 2723, 2723, 2261, -4060, 3202, 2697, -4060, 2763, -4060, 2274, -4060, -4060, -4060, 3626, 115, 4066, 4071, 115, 115, 115, 115, 3545, 2735, -4060, 4050, 3838, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 2723, -4060, -4060, -4060, -4060, -4060, 2284, -4060, 4210, -4060, 1021, 3840, 3841, -4060, -4060, -4060, 3552, 1428, 13798, -4060, 13798, 3586, -4060, -4060, 4026, 56052, -4060, -4060, -4060, -4060, 13798, -4060, 62492, 62492, -4060, -4060, -4060, -4060, 4192, -4060, 3560, 763, -4060, 4163, 3842, 4165, -4060, 3565, 4088, -4060, -4060, -4060, -4060, 4099, 62492, -4060, -4060, 48324, -4060, -4060, -4060, 300, 1794, 300, -4060, 300, -4060, 198, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 56052, 3570, -4060, -134, 115, 115, 2518, 2518, 2763, 56052, 3680, -4060, -4060, 115, -4060, 3572, 3573, -4060, -4060, -4060, -4060, -4060, 3630, 4108, -148, 1428, 1428, -4060, 65, -4060, -4060, 3995, 4090, 13798, 1428, 59272, 3575, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 63136, 13798, -4060, 13, 4157, -4060, -4060, 3860, -4060, 3862, -4060, -4060, -4060, -4060, -4060, -4060, 62492, 763, -4060, -4060, -4060, -4060, -4060, 2387, 3619, -4060, 3596, -4060, -4060, -35, -4060, -134, -134, -4060, -4060, -4060, -4060, -4060, 2309, -4060, 48324, -4060, 3838, 1011, 1011, -4060, -4060, 142, 3615, 13798, 62492, -4060, 4107, -4060, 4035, 1428, 3974, 3598, -4060, 3600, 1428, 4145, 63780, 63780, -4060, -4060, -4060, 3713, -4060, -4060, -4060, -4060, -4060, 2318, -4060, 17806, -4060, -4060, -4060, -4060, -4060, 48324, -4060, 3680, -4060, -4060, -4060, -4060, -134, -4060, 4006, -4060, 142, -4060, 4007, 3901, -4060, 82, -4060, 1428, 59916, 4223, 56052, -4060, 3705, -4060, -4060, 13798, 4137, 48968, 60560, 3613, -4060, -4060, -4060, 62492, 3805, -4060, 3596, -4060, 3623, -4060, 3597, 2735, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 13798, -4060, 4136, 3715, -4060, 3635, -4060, 62492, 1428, 62492, -4060, -4060, 4077, 3636, 1800, -4060, 3624, -4060, -4060, 4067, 3632, -4060, 17806, 3633, -4060, 1428, 4250, 62492, 56052, 57340, 4151, 61204, 4112, 56052, 6086, 4113, 4114, -4060, 4261, 3605, -4060, -4060, 3734, -4060, 57984, -4060, 2776, 3857, 3677, -4060, -4060, 4190, 1944, -4060, 243, 4085, 62492, 62492, -4060, -4060, -4060, -4060, 40593, -4060, -4060, -4060, -4060, -4060, -116, -4060, 3944, 3653, 58628, 61848, -4060, -4060, -4060, 37341, -4060, -4060, -4060, 4125, -4060, 13798, -4060, 715, 25022, 3820, 40593, -4060, -4060, 1428, -4060, -4060, -4060, -4060, 48324, 2324, -4060, -4060, 29581, -4060, -4060, -4060, -4060, 27635, 3657, -4060, 115, -4060, 29581, 17138, -4060, -4060 }; /* 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_uint16 yydefact[] = { 0, 2668, 1180, 2603, 0, 0, 0, 0, 0, 0, 2605, 159, 66, 1758, 1863, 1864, 1671, 1696, 2, 0, 1180, 305, 209, 0, 78, 1711, 0, 1916, 0, 0, 1180, 0, 521, 0, 1910, 0, 0, 1180, 1751, 1900, 282, 209, 2605, 0, 1226, 0, 1782, 2484, 0, 0, 0, 1765, 0, 2482, 1751, 0, 0, 0, 0, 3, 8, 19, 0, 41, 24, 30, 14, 18, 13, 54, 48, 26, 39, 38, 10, 0, 27, 57, 1142, 58, 16, 45, 11, 12, 15, 36, 44, 37, 40, 52, 1216, 22, 23, 31, 46, 62, 20, 59, 55, 21, 1865, 25, 47, 42, 33, 63, 34, 53, 35, 61, 56, 978, 29, 49, 28, 9, 17, 50, 51, 43, 64, 32, 60, 0, 1008, 0, 0, 0, 0, 0, 0, 0, 0, 1694, 967, 2666, 2667, 2668, 1182, 1181, 0, 2605, 2024, 1165, 1191, 2038, 2094, 2095, 2096, 2097, 2098, 2099, 2040, 2100, 2101, 2039, 2102, 2104, 2103, 2105, 2106, 2041, 2042, 2107, 2108, 2109, 2111, 2110, 2112, 2043, 2044, 2113, 2114, 2115, 2116, 2117, 2045, 2046, 2118, 2120, 2119, 2047, 2121, 2122, 2123, 2126, 2125, 2124, 2048, 2127, 2049, 2128, 2129, 2130, 2131, 2132, 2133, 2134, 2135, 2136, 2138, 2137, 2050, 2139, 2140, 2141, 2142, 2143, 2145, 2144, 2146, 2147, 2148, 2051, 2149, 2150, 2151, 2152, 2153, 2154, 2155, 2156, 2157, 2052, 2158, 2159, 2160, 2180, 2053, 2161, 2164, 2163, 2162, 2165, 2166, 2167, 2169, 2168, 2170, 2171, 2054, 2172, 2173, 2174, 2175, 2176, 2178, 2177, 2182, 2183, 2184, 2185, 2186, 2055, 2056, 2057, 2179, 2181, 2391, 2187, 2058, 2189, 2188, 2190, 2192, 2191, 2059, 2193, 2060, 2061, 2194, 2195, 2020, 2196, 2021, 2197, 2199, 2200, 2201, 2207, 2202, 2062, 2198, 2203, 2204, 2205, 2206, 2208, 2209, 2063, 2210, 2211, 2212, 2213, 2214, 2215, 2216, 2217, 2218, 2219, 2242, 2230, 2232, 2223, 2225, 2226, 2228, 2224, 2231, 2229, 2235, 2236, 2234, 2237, 2238, 2239, 2240, 2241, 2233, 2221, 2227, 2222, 2243, 2244, 2220, 2245, 2246, 2247, 2248, 2249, 2250, 2251, 2252, 2253, 2254, 2255, 2257, 2256, 2258, 2259, 2260, 2261, 2262, 2263, 2265, 2264, 2266, 2267, 2268, 2269, 2271, 2270, 2273, 2274, 2064, 2272, 2275, 2276, 2277, 2278, 2279, 2065, 2066, 2067, 2280, 2281, 2068, 2069, 2282, 2284, 2283, 2285, 2286, 2287, 2288, 2289, 2290, 2291, 2070, 2071, 2072, 2292, 2293, 2294, 2295, 2296, 2297, 2298, 2299, 2300, 2301, 2302, 2303, 2304, 2305, 2307, 2306, 2308, 2309, 2310, 2311, 2312, 2313, 2314, 2073, 2315, 2074, 2316, 2317, 2318, 2319, 2320, 2321, 2322, 2323, 2324, 2075, 2325, 2076, 2326, 2327, 2328, 2329, 2077, 2330, 2331, 2332, 2333, 2335, 2336, 2334, 2337, 2078, 2338, 2339, 2340, 2079, 2342, 2341, 2343, 2080, 2345, 2081, 2082, 2344, 2084, 2346, 2347, 2083, 2085, 2348, 2349, 2350, 2351, 2352, 2354, 2353, 2355, 2356, 2357, 2358, 2086, 2359, 2360, 2361, 2362, 2087, 2363, 2364, 2365, 2366, 2367, 2369, 2368, 2370, 2371, 2372, 2373, 2375, 2377, 2376, 2374, 2378, 2379, 2380, 2381, 2384, 2385, 2386, 2387, 2382, 2383, 2088, 2388, 2389, 2390, 2392, 2393, 2395, 2394, 2089, 2090, 2396, 2397, 2093, 2398, 2399, 2400, 2403, 2401, 2402, 2405, 2404, 2406, 2409, 2407, 2408, 2091, 2410, 2092, 2411, 2412, 2413, 228, 2027, 211, 2028, 2037, 0, 0, 2474, 2473, 1149, 1166, 2606, 2607, 614, 917, 0, 0, 918, 0, 613, 916, 614, 2668, 0, 610, 611, 0, 0, 0, 1762, 1761, 1760, 0, 1758, 0, 1694, 1694, 1694, 0, 0, 1694, 1694, 0, 1697, 1694, 1694, 1694, 0, 71, 1872, 306, 307, 0, 2513, 208, 0, 0, 0, 2019, 0, 1713, 1714, 1712, 1100, 0, 1917, 1918, 0, 1925, 0, 1926, 1920, 2471, 0, 0, 0, 0, 0, 0, 209, 1183, 0, 1716, 1752, 1717, 1715, 0, 272, 281, 283, 284, 280, 2506, 2607, 2618, 2620, 1609, 1234, 831, 0, 0, 2430, 2431, 2265, 2285, 2432, 2382, 0, 0, 2448, 2414, 0, 2424, 0, 1839, 284, 1112, 1136, 1120, 1113, 1136, 1766, 1763, 0, 0, 1100, 1919, 2730, 0, 0, 0, 2725, 0, 2731, 0, 1226, 0, 0, 1, 5, 0, 0, 1254, 2033, 2398, 0, 2032, 2031, 2034, 2581, 2587, 2574, 0, 1114, 1128, 2175, 2057, 2284, 1855, 1853, 2014, 0, 958, 1009, 0, 963, 0, 2485, 0, 961, 0, 974, 973, 971, 0, 485, 956, 0, 209, 0, 2677, 965, 1163, 2604, 0, 230, 0, 80, 82, 0, 0, 0, 2610, 0, 0, 0, 0, 163, 0, 209, 0, 160, 2677, 2677, 2668, 2670, 2672, 614, 612, 0, 0, 0, 0, 0, 1692, 1756, 1759, 2095, 2039, 2106, 0, 1985, 0, 0, 0, 1498, 0, 2045, 0, 2121, 2123, 2050, 0, 0, 1254, 1254, 787, 0, 0, 0, 2147, 2148, 1991, 0, 0, 0, 1982, 1992, 2057, 2189, 2190, 0, 1984, 2195, 0, 0, 0, 0, 2214, 1989, 0, 0, 2252, 2254, 0, 0, 2258, 2259, 2260, 2261, 1968, 1308, 0, 787, 1981, 1988, 1974, 2285, 2290, 2291, 0, 2300, 0, 0, 2329, 0, 2336, 2334, 2340, 0, 0, 2366, 0, 0, 787, 1967, 2384, 2385, 2386, 2387, 0, 1983, 2088, 1990, 0, 2398, 1254, 787, 787, 0, 0, 0, 2406, 2409, 2413, 0, 0, 0, 0, 1246, 0, 2638, 1307, 0, 0, 0, 1385, 1670, 1245, 1249, 1266, 1271, 1285, 0, 1300, 1319, 1320, 1322, 1422, 1321, 1327, 1326, 1978, 1325, 1324, 1979, 1980, 1247, 1318, 2004, 2027, 2003, 0, 0, 0, 0, 0, 0, 0, 1698, 0, 209, 1682, 1694, 73, 0, 0, 0, 2016, 1585, 2488, 2489, 0, 79, 1101, 1717, 0, 1915, 2003, 0, 1929, 0, 1178, 0, 712, 531, 522, 0, 1834, 1833, 0, 1911, 2619, 0, 0, 1154, 1718, 0, 1906, 0, 1904, 1901, 1903, 273, 0, 0, 303, 0, 2613, 2610, 2631, 1217, 2621, 0, 0, 1618, 1610, 0, 1241, 2651, 2646, 2645, 2648, 2649, 1240, 2650, 1239, 2647, 2644, 0, 1235, 1237, 1238, 830, 0, 833, 835, 1734, 1735, 834, 843, 0, 832, 0, 0, 0, 0, 2416, 2457, 2454, 2453, 2437, 0, 839, 841, 840, 2445, 838, 0, 2382, 2417, 2424, 0, 0, 2415, 0, 0, 831, 1847, 0, 0, 1847, 0, 1618, 1837, 1840, 0, 2434, 1814, 914, 913, 912, 2435, 1833, 0, 1790, 1802, 0, 1767, 1807, 0, 2436, 0, 1836, 0, 1618, 1847, 0, 1783, 0, 0, 0, 0, 279, 1141, 1140, 1116, 1137, 1138, 0, 0, 1119, 1121, 1122, 144, 0, 2741, 2483, 0, 1973, 1972, 2025, 2727, 1971, 2735, 2737, 2721, 0, 2724, 2723, 2732, 1219, 0, 2623, 6, 65, 0, 2036, 0, 0, 0, 0, 0, 0, 991, 0, 0, 0, 0, 0, 1148, 0, 1144, 1143, 0, 1117, 1130, 0, 0, 1869, 2675, 2676, 2674, 849, 0, 2669, 212, 0, 972, 0, 486, 212, 0, 0, 0, 0, 0, 487, 488, 419, 1015, 1695, 979, 969, 0, 0, 968, 2677, 0, 0, 1193, 1195, 1194, 1212, 232, 229, 210, 0, 0, 1151, 1689, 1691, 1168, 2609, 0, 0, 2611, 2615, 1306, 1305, 0, 157, 162, 0, 0, 0, 0, 2673, 0, 614, 0, 0, 0, 2665, 2653, 2660, 2661, 2664, 2663, 2662, 0, 2659, 2652, 2655, 2656, 2658, 2657, 2677, 2671, 0, 919, 919, 919, 0, 1526, 2014, 0, 0, 0, 2017, 0, 0, 1590, 1340, 1590, 1590, 1590, 1499, 0, 0, 0, 0, 0, 0, 0, 0, 1590, 1379, 1352, 0, 1380, 0, 0, 0, 1993, 0, 0, 0, 2638, 0, 0, 1490, 0, 1469, 0, 0, 0, 2638, 0, 0, 0, 0, 0, 1494, 1496, 2003, 1590, 0, 0, 1590, 0, 0, 0, 0, 0, 1259, 827, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1590, 1590, 0, 0, 1590, 1393, 1995, 0, 0, 0, 1994, 0, 0, 0, 1987, 1986, 1969, 0, 1396, 1398, 1397, 0, 1590, 1590, 0, 0, 0, 1590, 1590, 1330, 1329, 1331, 0, 0, 0, 0, 2437, 1465, 1467, 0, 0, 1304, 1303, 0, 1302, 1301, 0, 1248, 0, 0, 1253, 1252, 1309, 1310, 1311, 1312, 0, 1313, 1314, 1315, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1332, 0, 0, 1970, 0, 0, 1439, 0, 1677, 1684, 1679, 0, 1698, 1680, 1688, 501, 500, 1703, 1704, 1686, 1699, 1700, 0, 1685, 0, 0, 1672, 0, 72, 0, 1895, 0, 0, 0, 1891, 1893, 1897, 1892, 0, 0, 1896, 0, 1894, 1873, 1877, 1883, 1874, 0, 0, 304, 308, 310, 0, 313, 2523, 2538, 2539, 2535, 2540, 2558, 2541, 2545, 0, 2537, 2529, 0, 2544, 0, 2533, 2542, 0, 2527, 0, 2543, 2548, 2559, 2531, 2536, 2514, 0, 2521, 2525, 1586, 1587, 0, 2487, 0, 2015, 0, 0, 0, 1201, 1930, 1931, 1927, 1585, 2472, 2475, 0, 711, 532, 0, 0, 543, 0, 0, 68, 69, 0, 1185, 0, 1184, 1188, 0, 0, 1526, 1907, 1908, 0, 271, 296, 291, 299, 293, 295, 294, 300, 301, 302, 297, 292, 298, 285, 0, 2523, 0, 2507, 0, 2614, 0, 2616, 2633, 2632, 0, 2158, 0, 0, 1669, 1661, 1666, 1663, 0, 0, 1241, 1619, 0, 1592, 0, 0, 1224, 1227, 1236, 2450, 0, 2447, 2446, 0, 0, 2465, 2418, 0, 2459, 2460, 0, 2451, 0, 2452, 0, 0, 0, 0, 0, 2449, 2423, 2422, 0, 2425, 2426, 0, 2429, 2469, 2470, 2467, 2468, 2466, 2442, 1843, 0, 0, 1813, 0, 614, 0, 0, 0, 0, 0, 209, 0, 1784, 0, 0, 659, 1806, 1841, 1842, 1847, 0, 0, 1847, 0, 1819, 1837, 0, 1847, 1779, 0, 0, 1771, 1776, 1772, 0, 1778, 1777, 1780, 1768, 1769, 1843, 1795, 144, 1837, 1805, 1812, 0, 1794, 1801, 0, 1810, 1837, 1837, 1850, 1850, 0, 1125, 1126, 0, 0, 0, 1115, 1764, 1234, 0, 0, 1507, 0, 1509, 1506, 1505, 1504, 1526, 0, 0, 2722, 2738, 2720, 2726, 2733, 2734, 2719, 1220, 1618, 2630, 2624, 1218, 2625, 2628, 7, 4, 1255, 999, 0, 2035, 0, 0, 0, 0, 2591, 2589, 0, 2590, 2588, 2564, 2575, 0, 980, 0, 0, 0, 0, 0, 0, 0, 0, 144, 0, 1132, 1868, 0, 1857, 1858, 1859, 1860, 1861, 1856, 1854, 1870, 1871, 850, 849, 605, 608, 607, 0, 0, 964, 0, 0, 474, 962, 0, 0, 452, 430, 452, 489, 1098, 1736, 1098, 0, 1736, 1736, 1098, 1736, 0, 0, 1736, 1736, 1736, 1736, 0, 0, 1736, 0, 0, 1098, 0, 1736, 0, 1083, 0, 0, 1736, 1736, 1736, 1736, 1736, 1098, 0, 0, 1736, 1736, 0, 1108, 0, 0, 1736, 1736, 1736, 1736, 0, 1736, 1736, 0, 1736, 0, 0, 0, 1082, 618, 646, 647, 957, 1010, 1013, 1088, 1021, 1033, 1017, 1016, 0, 1057, 1060, 1086, 1087, 1084, 1000, 0, 0, 966, 1164, 0, 0, 909, 908, 1209, 0, 1212, 1197, 1211, 0, 233, 235, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 144, 112, 135, 0, 0, 0, 0, 0, 0, 0, 83, 84, 1153, 1152, 0, 1150, 1176, 1175, 1173, 0, 1174, 1172, 1167, 1169, 1170, 2608, 2612, 615, 849, 462, 0, 422, 2587, 0, 0, 0, 211, 2714, 0, 2654, 146, 920, 0, 0, 0, 0, 0, 1592, 1527, 0, 1592, 1693, 1757, 1756, 0, 0, 1591, 1590, 0, 0, 0, 0, 0, 0, 1500, 0, 0, 1492, 0, 0, 0, 0, 0, 0, 0, 0, 0, 788, 1403, 0, 0, 0, 0, 0, 0, 1561, 1562, 1563, 1564, 1572, 1565, 1566, 1567, 1574, 1579, 1568, 1569, 1575, 1576, 1577, 1570, 1578, 1573, 1571, 1580, 0, 1560, 0, 0, 1491, 1584, 1581, 1583, 1582, 0, 1470, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1590, 0, 0, 0, 1590, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1414, 0, 0, 0, 0, 0, 1590, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1375, 0, 2006, 2005, 0, 0, 0, 882, 0, 0, 0, 1334, 0, 1333, 1534, 0, 2636, 2639, 0, 0, 0, 0, 1244, 1251, 1250, 1257, 1256, 1258, 1262, 1267, 1260, 1264, 0, 1316, 2101, 1269, 0, 0, 1297, 2638, 1597, 1298, 1283, 1288, 1289, 0, 1286, 1287, 0, 1291, 0, 1290, 1294, 1295, 1296, 1299, 0, 0, 0, 0, 1323, 1328, 1348, 1349, 1249, 0, 1440, 1441, 1998, 2007, 0, 1674, 1687, 1835, 1701, 1736, 2572, 1681, 1102, 0, 0, 74, 76, 1888, 1885, 1884, 1886, 1890, 144, 1887, 0, 1898, 2147, 2384, 2387, 317, 0, 289, 288, 290, 314, 0, 0, 2524, 2522, 2556, 2555, 2560, 0, 2557, 2553, 2546, 2582, 2550, 0, 2582, 2552, 2551, 2582, 2547, 2554, 2582, 2519, 0, 1589, 2185, 2270, 0, 1592, 2491, 1526, 2740, 2007, 0, 1928, 0, 0, 0, 1179, 0, 0, 530, 529, 528, 527, 0, 545, 525, 533, 70, 0, 0, 1912, 0, 0, 0, 0, 1156, 0, 1909, 144, 1902, 0, 0, 2522, 0, 2519, 2617, 2622, 2026, 1668, 836, 1662, 0, 1614, 1611, 1613, 1627, 1628, 1626, 1620, 1621, 1625, 1624, 1223, 1233, 1229, 1232, 0, 1598, 1242, 0, 848, 847, 844, 842, 0, 0, 0, 0, 2464, 2456, 2458, 2455, 2438, 2439, 2440, 0, 2443, 2441, 0, 2428, 0, 1845, 1848, 1849, 0, 0, 1828, 1822, 1821, 1817, 1823, 0, 1818, 1832, 1831, 1830, 1792, 1791, 1787, 1838, 1827, 1825, 1815, 1847, 1826, 1824, 1773, 1774, 1775, 0, 1618, 0, 1845, 1820, 1847, 1837, 0, 1847, 1847, 0, 0, 1809, 1811, 1139, 1124, 1123, 0, 0, 1536, 0, 2626, 0, 0, 0, 1523, 1537, 0, 1537, 0, 0, 0, 0, 1585, 2728, 2736, 0, 2629, 977, 0, 2576, 2578, 2567, 2566, 2565, 2562, 0, 0, 0, 0, 0, 992, 994, 0, 0, 976, 981, 982, 986, 140, 2022, 1645, 1646, 1644, 1642, 1643, 141, 142, 1635, 1636, 1632, 1633, 1631, 1634, 143, 1147, 1146, 1145, 1129, 1118, 0, 0, 1134, 0, 606, 1736, 1736, 0, 0, 0, 0, 0, 0, 0, 0, 213, 222, 2486, 0, 0, 428, 429, 1736, 427, 475, 476, 479, 480, 481, 0, 0, 0, 0, 0, 0, 0, 0, 165, 482, 1736, 1736, 424, 453, 454, 457, 458, 459, 460, 461, 420, 0, 425, 1099, 950, 1180, 1064, 0, 690, 950, 905, 910, 910, 1062, 1737, 0, 0, 1180, 0, 0, 0, 0, 0, 1180, 0, 0, 0, 0, 0, 1736, 0, 1075, 0, 1019, 0, 0, 0, 0, 0, 1076, 0, 0, 0, 1020, 1736, 0, 0, 0, 0, 0, 0, 1180, 0, 0, 0, 1180, 1111, 1110, 1109, 0, 0, 1180, 1180, 0, 0, 0, 0, 652, 653, 0, 0, 0, 644, 1085, 1039, 1040, 619, 519, 0, 1011, 1012, 849, 849, 689, 0, 1105, 686, 692, 2010, 0, 1002, 1004, 2678, 2679, 2680, 1200, 1192, 1199, 1196, 1212, 0, 1552, 1198, 231, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 0, 0, 0, 0, 0, 0, 0, 0, 1690, 1177, 1171, 158, 849, 1736, 1736, 1736, 1736, 426, 463, 464, 467, 468, 469, 470, 473, 471, 472, 0, 0, 438, 991, 0, 174, 2708, 0, 0, 415, 414, 0, 616, 0, 0, 921, 0, 0, 0, 1592, 0, 1609, 2015, 1754, 0, 2018, 0, 1399, 0, 1444, 1477, 1446, 1447, 1450, 0, 0, 0, 0, 0, 1400, 0, 1350, 0, 1401, 1402, 0, 0, 0, 0, 1452, 0, 789, 0, 0, 1353, 1354, 1345, 1337, 0, 0, 1424, 0, 1473, 1355, 0, 0, 0, 0, 0, 1425, 1495, 0, 1497, 2007, 0, 1456, 1407, 1360, 0, 1454, 0, 1361, 1426, 1427, 1428, 1409, 0, 1430, 0, 1410, 0, 0, 1413, 0, 0, 1363, 1460, 1458, 0, 0, 0, 0, 1462, 1365, 0, 0, 0, 1364, 0, 0, 0, 0, 0, 0, 0, 1367, 0, 1346, 1459, 1461, 1416, 0, 0, 0, 0, 0, 1376, 1590, 1448, 0, 1230, 2640, 1534, 0, 0, 2631, 1338, 952, 1466, 2008, 1263, 1268, 1261, 1265, 2638, 0, 0, 0, 0, 1281, 1280, 0, 0, 0, 2638, 1597, 1284, 1443, 1431, 0, 1490, 0, 1678, 1675, 1702, 0, 0, 1104, 1103, 1683, 1102, 77, 0, 1889, 1882, 1899, 1875, 0, 309, 318, 311, 315, 316, 312, 2549, 0, 2530, 0, 2534, 2528, 2532, 0, 0, 2520, 0, 2526, 2501, 2495, 2502, 2504, 2498, 2503, 2505, 2496, 2497, 2492, 2499, 1618, 0, 0, 1202, 1204, 1205, 1203, 1212, 0, 0, 2478, 2479, 2477, 2476, 535, 0, 553, 1652, 1653, 1638, 1639, 1637, 1640, 544, 1641, 1651, 0, 556, 0, 0, 0, 1914, 1913, 0, 1186, 1189, 1190, 1161, 1160, 1162, 1155, 1157, 1158, 1234, 0, 1731, 1730, 0, 2620, 1708, 1710, 1719, 1722, 0, 1905, 0, 286, 0, 0, 0, 0, 0, 0, 1935, 1660, 1616, 1617, 2000, 1615, 0, 0, 0, 1593, 0, 1594, 0, 0, 2420, 0, 2462, 2461, 2463, 0, 2427, 1844, 0, 1796, 0, 1816, 1829, 1789, 0, 1808, 1770, 1798, 1788, 1592, 1837, 1785, 1786, 1851, 1852, 145, 1230, 2631, 1585, 1532, 2627, 0, 1525, 1524, 1538, 0, 0, 1537, 1537, 0, 1512, 1511, 1592, 1749, 0, 1510, 1549, 0, 2739, 2577, 0, 0, 2563, 997, 995, 996, 998, 993, 985, 984, 209, 983, 989, 0, 988, 1131, 0, 0, 1127, 1862, 0, 0, 960, 216, 219, 217, 0, 218, 0, 0, 484, 483, 0, 1835, 477, 169, 168, 170, 171, 173, 172, 167, 975, 0, 0, 0, 1835, 455, 431, 432, 435, 436, 437, 691, 951, 1044, 0, 0, 0, 910, 685, 950, 919, 911, 950, 950, 1094, 1095, 0, 0, 631, 626, 1066, 640, 1042, 1027, 1043, 1054, 1056, 0, 628, 629, 630, 654, 0, 0, 642, 0, 0, 1022, 1073, 1074, 1102, 623, 658, 0, 0, 0, 667, 668, 666, 648, 655, 1096, 1097, 624, 625, 1068, 0, 1605, 1607, 1614, 633, 632, 627, 0, 0, 1079, 1049, 0, 665, 663, 660, 662, 661, 664, 643, 635, 634, 637, 636, 639, 638, 651, 641, 1032, 0, 0, 1041, 1098, 1098, 1058, 1059, 1014, 1018, 1061, 0, 673, 674, 676, 677, 2013, 0, 1107, 1063, 0, 678, 687, 679, 0, 0, 0, 0, 0, 179, 2682, 0, 1555, 0, 1556, 1553, 1554, 234, 136, 134, 115, 119, 121, 114, 117, 118, 120, 124, 125, 123, 126, 127, 130, 131, 128, 122, 129, 116, 132, 113, 0, 86, 87, 0, 88, 89, 0, 90, 91, 0, 92, 85, 0, 0, 0, 0, 1835, 465, 0, 0, 1736, 1736, 421, 439, 440, 443, 444, 445, 446, 447, 450, 448, 451, 449, 980, 0, 0, 236, 671, 672, 670, 669, 0, 2715, 418, 416, 417, 0, 0, 689, 147, 517, 617, 620, 943, 945, 944, 935, 934, 148, 151, 154, 1755, 0, 1558, 1629, 0, 0, 1445, 0, 1501, 0, 1342, 801, 801, 785, 1485, 781, 1489, 801, 1481, 785, 1483, 0, 0, 1493, 0, 0, 0, 1453, 1451, 0, 0, 0, 0, 0, 0, 1471, 0, 0, 0, 1347, 0, 1435, 1457, 1455, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1463, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 871, 877, 880, 881, 883, 875, 0, 1418, 0, 1335, 2634, 1231, 1592, 0, 2641, 2643, 1230, 0, 2626, 0, 0, 1468, 0, 1278, 1274, 0, 1272, 1596, 1293, 1292, 0, 0, 0, 1282, 1442, 0, 1999, 2009, 1089, 498, 2573, 1673, 75, 1878, 0, 0, 2586, 0, 2585, 0, 2568, 2571, 2014, 0, 0, 0, 0, 2490, 0, 1745, 1745, 0, 1212, 1214, 1921, 2480, 2481, 0, 536, 537, 539, 541, 531, 0, 523, 526, 0, 535, 0, 1159, 0, 1709, 0, 0, 0, 1726, 1997, 1996, 2005, 1728, 1739, 1727, 1733, 0, 0, 0, 0, 0, 0, 837, 0, 1943, 1612, 1623, 1622, 0, 0, 1609, 1243, 0, 2419, 2444, 1846, 1618, 1804, 1803, 1781, 1618, 1800, 1847, 1530, 0, 1531, 1508, 0, 1516, 0, 0, 0, 0, 0, 0, 0, 1609, 0, 1543, 1544, 0, 0, 1547, 1550, 1551, 1529, 2729, 2579, 2580, 990, 0, 1133, 0, 657, 656, 221, 220, 226, 227, 1649, 1647, 1648, 490, 502, 1650, 503, 478, 166, 491, 492, 456, 0, 433, 1046, 0, 950, 906, 907, 919, 0, 919, 919, 0, 0, 1026, 0, 1168, 0, 1031, 843, 649, 1035, 1072, 1071, 0, 1036, 650, 0, 1024, 0, 1608, 1023, 0, 1051, 1029, 1898, 520, 1065, 689, 1106, 887, 777, 725, 716, 801, 719, 718, 763, 785, 730, 781, 779, 748, 781, 781, 756, 755, 773, 754, 759, 738, 857, 857, 737, 776, 857, 760, 758, 762, 0, 764, 781, 769, 757, 761, 778, 753, 750, 775, 801, 785, 785, 734, 774, 857, 0, 767, 801, 693, 805, 736, 857, 864, 0, 0, 801, 803, 2012, 0, 189, 0, 0, 1001, 0, 182, 180, 191, 0, 0, 0, 1213, 0, 0, 137, 139, 93, 0, 95, 97, 102, 0, 104, 0, 107, 0, 109, 2023, 111, 0, 98, 0, 497, 496, 495, 494, 466, 0, 0, 0, 0, 1835, 441, 161, 0, 0, 0, 237, 239, 240, 0, 247, 0, 506, 0, 504, 0, 516, 518, 0, 1932, 849, 621, 0, 0, 0, 1528, 0, 0, 1753, 0, 1377, 1502, 0, 0, 802, 1478, 857, 0, 1487, 0, 1488, 783, 782, 1480, 1482, 1486, 1484, 1341, 1351, 1423, 1344, 1343, 0, 0, 1383, 1405, 0, 1384, 0, 0, 0, 0, 0, 1357, 0, 1359, 0, 0, 1437, 1408, 1429, 1386, 1411, 0, 1362, 1336, 0, 1387, 0, 1392, 1390, 0, 1366, 0, 0, 1373, 0, 1371, 0, 1372, 0, 1374, 1415, 1417, 0, 0, 882, 868, 869, 870, 0, 872, 874, 876, 0, 0, 1449, 1598, 1535, 2642, 1221, 1222, 2635, 2637, 953, 1270, 0, 1279, 1276, 0, 1273, 1432, 1676, 1091, 1090, 1880, 0, 1876, 326, 321, 329, 323, 325, 324, 330, 331, 332, 333, 327, 322, 328, 320, 319, 2583, 0, 2594, 0, 0, 0, 0, 0, 0, 1745, 0, 1705, 1707, 1206, 1212, 1214, 0, 1207, 1932, 540, 0, 0, 560, 0, 558, 534, 0, 1187, 1230, 0, 1720, 1723, 2623, 0, 0, 0, 1744, 1743, 0, 1740, 1742, 0, 287, 0, 2512, 0, 0, 0, 0, 0, 0, 0, 1936, 1938, 0, 1667, 2001, 1602, 1601, 1595, 1618, 0, 1797, 144, 1793, 1533, 0, 1504, 0, 0, 0, 1504, 1514, 1513, 0, 1748, 1629, 1750, 1539, 1539, 1548, 987, 1135, 434, 0, 0, 1045, 0, 0, 0, 0, 0, 0, 1078, 0, 1105, 1028, 1055, 1081, 0, 1069, 1180, 1606, 1080, 1050, 1052, 1156, 0, 675, 0, 891, 724, 717, 735, 733, 790, 780, 0, 790, 790, 851, 862, 860, 854, 0, 858, 859, 744, 763, 739, 0, 857, 752, 743, 765, 768, 770, 772, 790, 0, 857, 732, 731, 741, 728, 790, 813, 0, 0, 0, 0, 809, 0, 885, 0, 0, 816, 694, 806, 808, 696, 0, 0, 766, 857, 721, 865, 864, 723, 857, 864, 790, 0, 804, 790, 0, 190, 178, 0, 0, 1003, 1005, 0, 0, 1006, 2684, 0, 2686, 1210, 1557, 133, 0, 94, 0, 103, 0, 0, 108, 0, 0, 99, 0, 0, 423, 493, 499, 442, 0, 0, 2709, 0, 0, 2707, 250, 248, 249, 0, 243, 245, 240, 0, 0, 0, 616, 1934, 1933, 505, 601, 622, 0, 0, 0, 1559, 1630, 0, 1503, 0, 0, 0, 0, 1479, 0, 0, 0, 0, 0, 1474, 1476, 1472, 1464, 0, 0, 0, 0, 0, 1339, 0, 1433, 0, 0, 0, 0, 0, 0, 1370, 1368, 1369, 866, 1420, 0, 879, 873, 871, 878, 0, 1594, 1275, 0, 1093, 1092, 0, 0, 2584, 0, 2518, 2570, 2569, 2587, 2587, 2587, 0, 1706, 0, 1208, 1215, 0, 538, 0, 533, 0, 557, 0, 524, 600, 1729, 1721, 1724, 1725, 2007, 1738, 0, 1732, 0, 2509, 2510, 2508, 0, 0, 0, 0, 1937, 0, 0, 1944, 1946, 2002, 1603, 1604, 0, 1599, 1654, 2421, 1799, 0, 0, 1519, 1522, 0, 0, 0, 1747, 0, 0, 0, 1048, 0, 688, 0, 0, 0, 1614, 948, 0, 0, 0, 0, 0, 0, 0, 1077, 1975, 1067, 1037, 1105, 1025, 0, 1030, 645, 0, 890, 0, 895, 794, 795, 796, 745, 791, 793, 0, 747, 715, 853, 852, 856, 0, 855, 864, 740, 771, 746, 0, 742, 729, 819, 820, 822, 821, 818, 828, 811, 829, 0, 0, 823, 824, 825, 817, 0, 807, 0, 0, 815, 810, 720, 722, 726, 727, 713, 0, 714, 2011, 176, 181, 192, 193, 970, 2683, 0, 2681, 0, 138, 96, 105, 106, 110, 0, 0, 0, 2706, 187, 0, 238, 843, 241, 2716, 247, 0, 0, 507, 509, 517, 602, 0, 0, 0, 0, 1378, 799, 797, 800, 798, 786, 0, 1381, 1382, 1406, 0, 1404, 0, 1358, 1434, 0, 0, 1412, 1388, 1391, 1389, 1394, 1395, 0, 1419, 0, 1609, 1277, 1881, 1879, 0, 2592, 2592, 2592, 2500, 0, 0, 0, 546, 0, 563, 562, 559, 1741, 2511, 1941, 1942, 0, 1939, 0, 0, 1945, 1600, 0, 1664, 1517, 0, 1520, 0, 1515, 0, 1540, 0, 1552, 0, 1047, 0, 0, 922, 0, 947, 0, 0, 0, 1977, 1976, 1034, 1038, 1070, 0, 888, 0, 892, 893, 894, 0, 886, 792, 0, 954, 863, 861, 0, 812, 814, 819, 697, 0, 183, 1007, 354, 2685, 2694, 2691, 2696, 2688, 0, 0, 164, 179, 188, 2710, 826, 214, 244, 0, 0, 2623, 1932, 0, 512, 922, 924, 926, 0, 1475, 0, 1436, 1438, 867, 0, 1618, 2595, 0, 2516, 2517, 2515, 0, 0, 0, 554, 0, 0, 588, 1940, 1948, 1947, 0, 1241, 1665, 0, 0, 1542, 1541, 0, 0, 0, 922, 0, 1736, 680, 923, 939, 938, 928, 1614, 0, 924, 926, 0, 889, 0, 0, 857, 0, 857, 0, 0, 185, 380, 0, 366, 352, 0, 0, 0, 356, 194, 197, 195, 0, 196, 202, 0, 203, 204, 205, 206, 207, 198, 378, 379, 201, 199, 200, 0, 2029, 0, 2030, 1226, 2691, 0, 0, 0, 2687, 2620, 100, 0, 191, 0, 2717, 246, 2702, 510, 508, 0, 2620, 149, 0, 152, 925, 941, 932, 155, 927, 940, 930, 784, 1356, 1421, 1654, 0, 0, 0, 0, 0, 2593, 2597, 1746, 1526, 542, 0, 547, 0, 550, 552, 566, 0, 1736, 0, 0, 1736, 1736, 1736, 1736, 581, 589, 591, 0, 1656, 1225, 1518, 1521, 1546, 1545, 684, 683, 937, 0, 929, 946, 949, 681, 682, 0, 901, 0, 900, 0, 897, 896, 749, 955, 751, 0, 184, 0, 177, 0, 0, 365, 368, 0, 0, 371, 361, 360, 362, 0, 355, 354, 354, 408, 359, 405, 404, 397, 2695, 0, 2623, 2692, 0, 0, 0, 2689, 0, 0, 2711, 224, 223, 215, 0, 354, 2700, 2701, 0, 2704, 514, 513, 1089, 0, 1089, 933, 1089, 931, 1241, 2598, 2601, 2599, 2600, 2602, 2596, 1922, 555, 548, 0, 0, 564, 0, 1736, 1736, 0, 0, 0, 0, 0, 561, 590, 1736, 1659, 0, 1657, 936, 1053, 903, 904, 902, 0, 0, 708, 186, 381, 392, 395, 387, 367, 0, 0, 0, 357, 354, 0, 341, 339, 340, 346, 347, 348, 349, 350, 351, 342, 345, 343, 344, 354, 0, 255, 0, 0, 2693, 2690, 0, 2697, 0, 101, 193, 214, 225, 2718, 2703, 354, 2623, 150, 942, 153, 156, 1228, 836, 554, 551, 574, 567, 570, 0, 599, 0, 0, 595, 596, 594, 592, 585, 0, 583, 0, 1655, 0, 0, 0, 710, 709, 698, 0, 0, 354, 388, 0, 363, 0, 372, 0, 0, 253, 411, 409, 251, 399, 399, 2698, 2699, 175, 2712, 2705, 515, 1923, 549, 574, 0, 572, 0, 568, 565, 569, 597, 598, 0, 582, 0, 593, 1658, 899, 898, 0, 706, 702, 695, 699, 701, 0, 0, 389, 395, 385, 393, 354, 0, 0, 353, 0, 407, 254, 0, 0, 0, 354, 0, 398, 400, 402, 354, 1949, 571, 0, 579, 575, 577, 580, 588, 587, 584, 704, 703, 700, 707, 705, 0, 386, 0, 0, 384, 364, 369, 354, 412, 354, 265, 264, 0, 257, 334, 406, 0, 256, 2713, 0, 1935, 573, 0, 0, 586, 390, 0, 354, 0, 354, 0, 354, 0, 0, 0, 0, 0, 252, 0, 1943, 578, 576, 0, 382, 354, 370, 375, 0, 0, 260, 335, 336, 0, 262, 0, 1951, 354, 354, 371, 374, 413, 410, 0, 337, 258, 259, 270, 269, 0, 1950, 0, 1955, 354, 354, 376, 278, 276, 354, 266, 274, 268, 0, 275, 0, 263, 0, 0, 1962, 0, 261, 277, 338, 1953, 1954, 1952, 1957, 0, 0, 1959, 1960, 0, 1924, 267, 1961, 1956, 0, 1963, 1965, 0, 1958, 0, 0, 1964, 1966 }; /* YYPGOTO[NTERM-NUM]. */ static const yytype_int16 yypgoto[] = { -4060, -4060, -4060, -4060, -4060, 103, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1687, -4060, -4060, -4060, -4060, -4060, -4060, 1881, 1891, -4060, -3291, -4060, -4060, 1890, -4060, 561, 1893, -4060, 559, -4060, 1901, -4060, 571, -553, -1531, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 562, 1497, 3617, -4060, 560, -4060, 206, -4060, -4060, -4060, -3226, 98, -99, -4060, -4060, 24, 1541, 17, 3274, -98, -3264, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 557, 567, -4060, -4060, 334, -4060, -4060, -1065, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -302, -263, 1929, -4060, -4060, -4060, 4310, -4060, 3721, -4060, -2012, 2260, -4060, -4060, -4060, -4060, -4060, 2323, -1946, -4060, -4060, -4060, 1194, -4060, -4060, -4060, -4060, -150, 234, -4060, 235, -4060, 237, -4060, 238, -4060, 239, 240, 241, 244, -4060, 247, -4060, -4060, -251, -4060, -4060, -4060, -4060, 257, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -152, -4060, -4060, -22, -4060, -4060, -143, 260, -4060, -106, 263, -4060, 264, -4060, -43, -4060, -40, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 3276, -4060, -4060, -4060, -2631, -4060, -4060, -2759, 2739, -4060, -2059, -4060, -4060, -2262, -4060, -4060, -2065, 774, -4060, -4060, 1142, 529, -4060, -1603, -2205, -2202, -4060, -4060, -4060, -2355, -2350, -1530, -4060, -1513, -2529, -4060, -4060, -4060, 254, -4060, -4060, -2953, -4060, 2678, -4060, -4060, -4060, 1471, -4060, -4060, 1207, 532, 1208, -4060, 813, 2993, -1340, -4060, -4060, -4060, -4060, -4060, -4060, 23, 344, -46, -4060, -3466, 540, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -2757, -4060, -4060, -4060, -172, -4060, -4060, -97, -4060, -4060, -139, -4060, 126, -2657, -4060, -4060, 2623, -1518, -4060, 3878, -4060, -445, 628, 2714, -2764, -2406, -4060, -1018, -1006, -2586, -4060, -4060, -4060, 1402, 1385, -4060, 1101, 2705, -1581, -4060, 2038, -4060, -4060, 1128, -4060, 1120, -4060, -4060, -4060, -88, -4060, -4060, 245, -2642, -4060, -4060, -4060, 1087, -4060, 1088, -4060, -4060, -4060, -1047, 1056, -2077, 1705, -917, -4060, 496, 999, -803, -4060, -4060, -4060, 712, -3616, -2687, -4060, -41, -2444, -1055, -9, -4060, -4060, -3410, -3164, -4060, 1631, -4060, -4060, -4060, -3151, -3404, 1327, -4060, -4060, 920, -4060, -1644, 918, -4060, -4060, -4060, 927, -4059, 269, -4060, -4060, -4060, -4060, -3135, -4060, -4060, -1608, -2113, -4060, -4060, 4447, 4448, -1118, -2624, -2553, 261, 265, -4060, -4060, -4060, 2648, -1542, 268, 203, 204, 1988, -639, 367, -2204, -4060, 506, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1442, -4060, 2236, -4060, 2010, -4060, 2242, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 2083, -4060, -4060, -4060, -4060, 542, -4060, -670, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -2235, -2240, 2090, -4060, -4060, 2092, -4060, -4060, -4060, 601, -2219, -1083, -1071, -1564, 3833, -1573, -2589, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 2907, -4060, -4060, -4060, -4060, -4060, 3843, -4060, 2912, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 805, 1774, -4060, -4060, -4060, -4060, -4060, -4060, 1180, 2694, -4060, -4060, -4060, -12, -4060, -4060, -4060, -4060, 2398, -4060, -4060, -4060, -4060, 2755, -4060, -4060, -4060, -4060, -4060, -4060, 1307, -4060, 1819, -4060, -1707, -4060, 905, -1074, 3036, 3845, 1904, -649, -4060, -4060, -2638, 3559, -4060, -4060, -1485, -4060, 3554, -1448, -931, 3223, 2497, 1053, 4571, -4060, -1259, -1151, -4060, -4060, -711, -4060, -4060, -4060, -669, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 1882, -4060, -1332, -4060, -4060, -4060, -4060, -4060, -1001, 1991, 1883, -1125, -4060, 3295, -4060, -4060, -4060, -2064, -1015, 2297, 2929, -4060, -4060, -1417, -4060, -2137, -4060, 1918, -4060, -4060, -1921, 858, -4060, 1250, -4060, -4060, -4060, 422, 1114, 423, -3088, -1176, 1746, -4060, -4060, -1346, 3331, -1740, 670, 1902, 983, -4060, -4060, -4060, -4060, 1203, -2438, -607, -4060, -2831, 894, -980, -1042, -4060, -2602, 875, -1206, -2029, -2092, -1367, -2780, -4060, 256, -4060, 51, -4060, 2418, 446, 448, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -637, -900, 3800, 2940, -4060, 3204, -4060, -1199, 3455, 3463, -4060, -4060, 3640, 1866, 1868, -4060, -2910, -2705, -4060, -4060, -625, -1274, 925, -4060, 959, -3194, -2962, 3465, -2664, 1287, 4493, 3472, -1677, 3992, -4060, -4060, -4060, -4060, -4060, -4060, 2366, -4060, -4060, -4060, -4060, -4060, -4060, 3019, 3913, -631, -1456, -4060, -773, 2997, 2375, -966, 2984, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 2530, 1233, -4060, -4060, -4060, 3123, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 969, -21, -4060, 936, -42, -4060, 667, -4060, -4060, -4060, -4060, -4060, -105, -4060, -4060, -109, -4060, -1072, -1442, 844, -1335, -2385, -4060, 961, -2592, -2669, 673, -759, -1218, -1248, -1594, 93, 3411, -4060, 3456, -1143, -4060, 89, -364, -1377, -6, -2799, -89, -657, -4060, -23, -4060, -4060, -4060, 3594, -4060, 2430, 4537, -4060, 3305, 3075, 4540, -505, 3604, 3091, -4060, 3094, -4060, -4060, -4060, -2039, -1420, -4060, -4060, 146, -4060, 2514, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 2486, 3663, 3139, -4060, 2535, -4060, -4060, -4060, -4060, -4060, 2373, -4060, -753, -3038, -1117, 3533, 20, -4060, 1026, -1749, -1036, -4060, -4060, 326, -4060, -4060, 1422, 3989, 3674, -4060, -4060, -4060, -4060, -4060, -2666, -615, -3473, 1464, -2083, -4060, -2246, -2752, -4060, -1123, -4060, -4060, -4060, -2407, -4060, -4060, -4060, 60, 4062, 4064, -4060, -4060, -222, -4060, 333, -4060, -4060, -4060, -4060, -4060, -4060, -4060, 368, -4060, 369, -4060, -4060, -4060, -4060, 3885, -4060, -4060, 3886, -4060, -4060, -4060, -4060, -4060, 3890, -4060, -4060, -4060, -4060, -4060, -4060, 1776, -4060, -4060, -4060, -4060, -4060, -4060 }; /* YYDEFGOTO[NTERM-NUM]. */ static const yytype_int16 yydefgoto[] = { -1, 58, 663, 1608, 59, 60, 61, 62, 63, 1427, 64, 887, 1349, 2021, 2022, 65, 582, 66, 1120, 1121, 1784, 1785, 2995, 3409, 3410, 3004, 3423, 2998, 3413, 3414, 3001, 3417, 3418, 1774, 1775, 3405, 3406, 1776, 1579, 67, 2477, 3455, 4371, 3456, 4373, 3457, 4375, 1802, 545, 2297, 2298, 1146, 3030, 3395, 4130, 3399, 4210, 4329, 4141, 2400, 3760, 4131, 4132, 4219, 576, 577, 1809, 1655, 4252, 2276, 4362, 2277, 68, 708, 1118, 1750, 1751, 3438, 3439, 3787, 3440, 3792, 3793, 3794, 3795, 4547, 4422, 4498, 4548, 4602, 4630, 4636, 4580, 4645, 4646, 4647, 4634, 927, 4648, 69, 612, 613, 929, 1453, 2035, 1454, 70, 71, 575, 1370, 1371, 1372, 1373, 2648, 2036, 2643, 2644, 3574, 4581, 4632, 4651, 4423, 4424, 4336, 4425, 4222, 4426, 4340, 4427, 4225, 4428, 4429, 4430, 4431, 4539, 4432, 4335, 4573, 4419, 4420, 4541, 4614, 4627, 4433, 4232, 4330, 4485, 4233, 4331, 4534, 4415, 4535, 4568, 4610, 4416, 4486, 4571, 4489, 4434, 4440, 4549, 4435, 4441, 4436, 4237, 4347, 4439, 4345, 4438, 4545, 4544, 4598, 2476, 3041, 694, 695, 720, 2467, 696, 1135, 1091, 1658, 2310, 2311, 2847, 2848, 3016, 3017, 3018, 2302, 2303, 2304, 2455, 2456, 2457, 2284, 2285, 2286, 1662, 2281, 2282, 697, 1092, 1102, 2305, 2306, 2307, 3022, 2459, 2460, 2461, 2462, 1338, 3026, 1339, 3285, 3044, 3447, 4149, 3802, 4258, 4454, 3448, 3449, 3450, 2936, 72, 598, 909, 1424, 2700, 1425, 2702, 3193, 3194, 3195, 2081, 2082, 4070, 2086, 2699, 4172, 4461, 4285, 4286, 2687, 4284, 3200, 3599, 3600, 3875, 4072, 4175, 4466, 4388, 4514, 4464, 4510, 4465, 4512, 4591, 4557, 4558, 4398, 4475, 4476, 4518, 4560, 4297, 4298, 4299, 2720, 4028, 2449, 1649, 1650, 546, 547, 548, 717, 3045, 1718, 3046, 1719, 2935, 1720, 1721, 2892, 1532, 2925, 2900, 3036, 2945, 2946, 2947, 2948, 2949, 2955, 2859, 2317, 2318, 2396, 2958, 3381, 3986, 4528, 4529, 4530, 4484, 73, 906, 4018, 3693, 3715, 3383, 3384, 3385, 3386, 3387, 3388, 3389, 3473, 3474, 3471, 1193, 3951, 3952, 3953, 3467, 3468, 3750, 3733, 3734, 3735, 4019, 849, 3975, 3700, 962, 963, 2735, 978, 979, 2133, 1485, 3736, 2134, 1653, 3701, 3702, 3703, 3744, 3528, 4055, 3534, 3535, 3536, 3126, 3127, 3128, 3129, 3130, 2590, 3737, 2957, 3686, 3944, 3947, 4118, 4321, 2319, 2860, 1746, 2863, 1020, 549, 2321, 2322, 1815, 1816, 4192, 4261, 4265, 4193, 4266, 4262, 4194, 4195, 4196, 4268, 4264, 3051, 3925, 3926, 2852, 3147, 4120, 74, 1103, 1086, 1094, 1089, 1110, 703, 1736, 75, 2236, 2237, 2238, 2239, 1625, 2232, 2233, 668, 2401, 2963, 4001, 685, 1722, 1723, 1724, 3677, 3309, 3682, 4108, 1725, 2390, 2874, 1726, 3296, 3662, 1727, 3326, 3680, 3941, 2875, 2876, 1728, 1729, 1730, 1731, 3308, 3320, 3939, 1732, 3555, 3556, 3557, 2323, 898, 2634, 2953, 2370, 76, 77, 78, 676, 1634, 79, 1034, 1035, 1036, 1078, 1079, 1636, 2263, 2817, 1029, 1030, 1031, 677, 1076, 80, 712, 1789, 81, 1435, 2712, 2713, 2714, 82, 1111, 83, 84, 713, 1796, 1797, 1798, 85, 1419, 140, 86, 917, 1430, 1432, 1433, 87, 707, 1112, 1113, 1114, 1115, 2406, 88, 2073, 2675, 2676, 2677, 2678, 1747, 2410, 1748, 1749, 3593, 89, 90, 660, 2599, 618, 619, 620, 3136, 3137, 3138, 2126, 952, 953, 954, 1480, 850, 851, 1289, 1060, 1841, 853, 854, 855, 1290, 1291, 3738, 856, 1302, 1976, 857, 858, 859, 860, 861, 862, 3500, 3501, 3833, 2005, 2006, 2007, 863, 864, 1279, 1890, 3493, 3091, 3822, 1832, 3077, 1882, 1883, 1215, 1216, 1181, 2502, 1838, 1584, 1585, 1586, 1587, 1588, 2211, 1821, 1822, 1589, 2201, 2595, 2596, 2202, 2784, 3918, 3264, 3265, 3266, 3267, 3268, 2967, 2968, 2969, 3057, 1879, 1880, 1888, 1405, 1406, 1833, 2129, 3233, 2614, 2746, 3633, 3905, 1735, 2908, 2909, 938, 1601, 2115, 2739, 2740, 1474, 1475, 2120, 2121, 3461, 4635, 3131, 2247, 3286, 2696, 2697, 4086, 4402, 4403, 1468, 1469, 940, 941, 1470, 91, 557, 92, 2019, 2628, 3164, 1346, 2640, 1123, 736, 701, 570, 1340, 1341, 1342, 93, 94, 586, 607, 920, 2721, 2722, 3210, 2723, 2724, 2725, 3217, 2324, 2325, 3218, 3614, 3615, 3616, 3587, 95, 2791, 2792, 608, 96, 1172, 555, 556, 97, 1038, 645, 1555, 1556, 1557, 2182, 98, 637, 1021, 3239, 3243, 2168, 913, 1343, 1537, 1024, 1538, 2153, 2758, 1520, 2193, 99, 1082, 1081, 1644, 100, 681, 1645, 101, 888, 1364, 2031, 3169, 3560, 3856, 1365, 1366, 2641, 102, 609, 924, 925, 1438, 2100, 103, 600, 914, 2092, 104, 590, 105, 106, 903, 3594, 4460, 4553, 594, 2075, 1415, 3803, 3227, 3628, 3629, 3631, 3899, 3900, 4588, 4639, 4662, 4655, 4665, 4666, 4669, 4674, 4675, 865, 1045, 866, 3935, 867, 868, 869, 3211, 870, 2116, 3634, 871, 2793, 872, 2853, 1590, 737, 580, 524, 3419, 3420, 669, 1046, 2110, 901, 4239, 671, 672, 526, 527, 107, 633, 983, 987, 1507, 1508, 1509, 1025, 1501, 984, 1510, 636, 970, 971, 1497, 972, 1495, 973, 2141, 1490, 1516, 108, 904, 532, 1417, 1418, 2684, 109, 647, 110, 111, 690, 112, 1407, 2068, 2069, 2670, 3182, 2671, 113, 930, 1457, 114, 890, 1399, 2659, 1400, 2044, 1401, 1402, 2058, 2052, 2061, 2055, 2227, 1621, 1622, 3179, 2017, 673, 674, 2651, 3173, 3174, 1067, 4166, 3860, 4278, 4279, 115, 141, 535, 715, 1130, 1460, 116, 117, 118, 119, 934, 1603, 1604, 2778, 1605, 1606, 1464, 1956, 1957, 1275, 1276, 3139, 3140, 955, 724, 1155, 1147, 134, 135, 136, 727, 728, 137, 1108, 1109, 2964, 3401, 3762, 4004, 4005, 4136, 4247, 4243, 4244, 4137, 4241, 4246, 4367, 4368, 1149, 4453, 1150, 1151, 3031, 4016, 4251, 4449, 4552, 1152, 2473, 3443, 4145, 4364, 120, 1051, 1047, 657, 1599, 1593, 1595, 121, 122 }; /* 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[] = { 525, 964, 967, 935, 631, 1133, 1023, 1639, 572, 1054, 1646, 988, 939, 571, 1602, 1942, 1534, 581, 596, 2098, 1733, 1481, 1806, 523, 1217, 604, 2124, 599, 1530, 2185, 1088, 2122, 1734, 2038, 614, 1895, 2037, 617, 1562, 632, 2412, 693, 614, 1975, 3165, 1941, 1817, 1818, 3059, 649, 2992, 3287, 3207, 1563, 3215, 2287, 2695, 2468, 2320, 1842, 1843, 3078, 3209, 3287, 3287, 615, 3653, 3081, 1651, 670, 2076, 3047, 3228, 2789, 1176, 1122, 1125, 2347, 1858, 3323, 1652, 2486, 1916, 2084, 2488, 2316, 2149, 2175, 1897, 2111, 2642, 2728, 3452, 143, 683, 2369, 2199, 2749, 2750, 722, 1910, 1911, 1912, 2260, 2326, 2186, 2850, 1915, 2330, 2851, 2888, 2894, 3023, 2189, 2190, 2861, 579, 3024, 686, 2779, 525, 2348, 1075, 525, 670, 698, 683, 3212, 2288, 985, 3775, 2265, 2308, 2360, 2308, 3880, 2397, 3246, 1580, 2780, 3229, 3230, 2014, 688, 1320, 2289, 692, 2790, 3674, 2309, 2490, 2309, 1977, 1978, 1824, 533, 1981, 1982, 1983, 1984, 1403, 1986, 1987, 1989, 1991, 1992, 1993, 1994, 1995, 3756, 2079, 1271, 1272, 2214, 1273, 595, 1834, 1835, 1836, 3742, 1283, 1284, 603, 3620, 3696, 3530, 714, 1321, 1848, 3141, 1403, 1613, 1141, 682, 3011, 3921, 3697, 704, 2300, 4190, 2458, 3696, 1283, 1284, 3708, 1283, 1284, 3709, 2500, 2864, 3698, 2090, 3710, 3697, 1786, 4487, 3295, 1790, 1903, 4525, 2833, 1907, 990, 622, 3588, 699, 3719, 3698, 3287, 3287, 3038, 2751, 4487, 3741, 2366, 2818, 2869, 3302, 4203, 990, 622, 1925, 1926, 2437, 2846, 1930, 3048, 1564, 123, 2632, 573, 1578, 2632, 1126, 2300, 3240, 1648, 2234, 3434, 1431, 1283, 1284, 3020, 1944, 1945, 3021, 2904, 2905, 1949, 1950, 591, 2656, 3958, 2463, 1648, 960, 1283, 1284, 893, 2587, 1042, 1615, 1322, 3454, 2681, 1162, 705, -959, 2788, 1322, 2464, 1283, 1284, 4513, 3531, -1588, 1283, 1284, 3606, 1404, 1283, 1284, 1283, 1284, 4114, -603, 4342, 1850, 2208, 1487, 990, 622, 1667, 3969, 3291, 3292, 3382, 2059, 3816, 3660, 2226, 1283, 1284, 729, 3829, 1283, 1284, 1648, 2672, 1404, 1597, 3256, 1283, 1284, 1791, 2855, 2737, 4092, 1792, 3990, 911, 3039, 3992, 1032, 1336, 1256, 2377, 4365, 1142, 2951, 1502, 3800, 1793, 4190, 3145, 2811, 1488, 968, -604, 658, 1506, 1539, 1462, 125, 1283, 1284, -2561, 4333, 1954, 3948, 1283, 1284, 1830, 2367, 4190, 2220, 2613, 138, 44, 642, 2646, 1143, 1473, 4093, 2579, 4191, -1835, -2045, 142, 1283, 1284, 1830, 1478, 3546, 592, 3558, 2328, 2329, 2087, 2331, 1571, 4482, 2334, 2335, 2336, 2337, -884, -2493, 2340, 2283, 2138, 1027, 1544, 2350, 3859, 3049, 142, 2799, 2355, 2356, 2357, 2358, 2359, 2255, 2682, 4531, 2363, 2364, 1615, 2478, 3124, 2139, 2373, 2374, 2375, 2376, 2960, 2379, 2380, 142, 2382, 1857, 1066, -2494, 2800, 2738, 2088, 1169, 1743, 2474, 719, 2056, 2479, 1283, 1284, 1217, 1476, 3125, 3530, 1283, 1284, 2127, 1043, -1588, 2856, 2283, 139, 3949, 1787, 4343, 4531, 2475, 1616, 2140, 1740, 2812, 3511, 1744, 4007, 3426, 3427, 1572, 4483, 2240, 1479, 2248, 1426, 1283, 1284, 1463, 1794, 2647, 2657, 896, 937, 3641, 2301, 2638, 1028, 1831, 2564, 1324, 1884, 3607, 3543, 1885, 1161, 4115, 3416, 1131, 1132, 3950, 1283, 1284, 4094, 4526, -511, 1567, 1847, 2215, 3585, 1016, 1283, 1284, 1489, 2503, 2952, 1257, -2493, 659, 3247, 4253, 2588, 670, 4334, 698, 969, 965, 1955, 4191, 2378, 975, 980, 2221, 1598, 1283, 1284, 1033, 57, 738, 1286, 874, 2301, 1287, 3261, 878, 3963, -2561, 4123, 698, 4191, 3729, 3915, 1440, -2494, 3967, 1127, 3531, 3257, 2726, 4366, 2170, 891, 4127, 2173, 1286, 670, 3801, 1287, 2177, 3661, 899, 1617, 3889, 3890, 3891, 1694, 1972, 1795, 3989, 2855, 3800, 2813, 3262, 3991, 915, 1019, -2192, 1851, 1336, 1090, 1323, 1144, -1588, 1337, 1518, 1283, 1284, 1323, 2039, -2216, 2191, 1283, 1284, 1283, 1284, -2343, 4116, 961, 1616, 670, 2218, 912, 3867, 670, 670, 916, 723, 632, 4509, 1286, 1651, 3305, 1287, 2683, 4359, 3830, 1980, 2658, 3532, 1039, 3047, 2850, 1652, 894, 2851, 1286, 639, 3251, 1287, 4344, 3287, 3287, 2673, 2001, 2709, 3301, 2235, 1058, 3303, 3304, 1286, 3023, 3659, 1287, 3238, 1286, 3024, 2633, 1287, 1286, 2633, 1286, 1287, 3782, 1287, 4255, 3665, 3382, 1283, 1284, 670, 2287, 670, 574, 1093, 3050, 643, 2016, 3804, 2857, 1286, 4075, 2501, 1287, 1286, 525, 1808, 1287, 3881, 4414, 683, 1286, 1119, 1788, 1287, 683, 683, 2849, 2018, 3040, 1134, 1093, 2862, 2862, 1107, 886, 4533, 4204, 1106, 4138, 4139, 2513, 2436, 3241, 1105, 1163, 1164, 1165, 1168, -2045, 2768, 2867, 3542, 1286, 4316, 2871, 1287, 1283, 1284, 1286, 2630, 905, 1287, 3056, 3300, 1139, 4527, 3428, 2752, 918, 931, 1618, 2890, 2891, 2288, 1283, 1284, 1280, 1286, 4260, 2080, 1287, 3699, 2091, 2527, 2906, 3289, 2038, 1145, 1619, 2037, 2289, 2308, 3711, 2915, 1016, 1218, 1283, 1284, 3699, 1614, 2078, 3273, 1651, 2320, 3293, 1160, 3739, 4142, 2309, 3798, 1335, 1040, 2188, 3636, 1652, 2368, 2097, 2397, 1116, -959, 1283, 1284, 2484, 1124, 1124, 593, 3466, -1588, 2490, 1288, 3020, -1588, 2629, 3021, 1044, 3801, 3063, -603, 3533, 3652, 3823, 1286, 1788, 3466, 1287, 2594, 1167, 1286, 2493, 2601, 1287, 1288, 2615, 1540, 1288, 2060, 3294, 3559, 1277, 670, 1281, 1176, 2961, 2618, 1293, 1471, 2621, 3311, 4076, 3959, 2580, 2458, 4144, -2561, 2612, 1286, 3809, 1337, 1287, 1620, 2136, 1788, 3019, 3252, 3253, 1568, 2795, 1329, 525, 1331, -604, 1093, 525, 670, 2858, 525, 4443, 1283, 1284, 1258, 1286, 1374, 2174, 1287, 1545, -2493, 2446, 1408, 2478, 1288, 1286, 1330, 2511, 1287, 2057, 1334, 683, -2045, 1344, 2539, 3780, 3781, 3882, 2543, 1533, 1288, 1345, 2710, 670, 683, 3532, 2479, 683, 1286, 1170, 1619, 1287, 1283, 1284, -2493, 1288, -2494, 2589, 1282, 2463, 1288, 2566, 2688, 670, 1288, 2265, 1288, 1283, 1284, 1559, 3025, 1951, 1952, -2192, 1292, 1996, 2464, 2512, 631, 874, 3512, 3209, 1951, 2531, 1483, 1288, -2216, 3027, 640, 1288, -2494, 4357, -2343, 670, 2002, 2003, 1288, 1942, 1519, 3879, 1886, 2954, 2565, 1887, 2192, 3189, 2491, 1612, 1503, 1286, 3263, 3425, 1287, 632, 4506, 1286, 588, 1286, 1287, 4619, 1287, 4361, 670, 3306, 1637, 2819, 2820, 4660, 1288, 2147, 1416, 3478, 1428, 4182, 1288, 4183, 2919, 985, 2920, 1283, 1284, 1569, 2831, 1434, 2568, 2569, 1436, 144, -2014, 960, 2492, 3212, 2709, 1288, 2731, 2802, 2803, 2804, 2805, 2843, 2844, 3244, 641, -511, 1570, 683, 2807, 1367, 683, 2585, 2586, -1835, 3974, 1473, 3586, 1283, 1284, 1830, 2605, 534, 3047, 2921, 1286, 966, 3259, 1287, 2742, 4323, 2774, 4325, 670, 1148, 1156, 670, 2779, 3167, 4317, 1830, 2884, -846, 3873, 2748, 4322, 3673, 2922, 587, 4150, 670, 605, 1647, 2157, 3023, 2258, 2896, 3090, 3937, 3024, 1288, 1283, 1284, 3032, 2838, 2850, 1288, 3681, 2851, 2711, 3664, 4102, 1283, 1284, 1492, 1819, 3150, 3151, 597, 1283, 1284, 683, 3488, 3489, 1286, -2192, 2923, 1287, 1197, 3643, 1942, 3874, 1128, 3647, 1288, 2472, 3789, 2165, -2216, 2870, 1413, 2872, 1286, 601, -2343, 1287, 3790, 1124, 2300, 670, 2885, 2510, 2597, 1810, 525, 525, 3979, 2537, 1304, 1288, 2910, 1788, 4407, 525, 1286, 1170, 2901, 1287, 937, 1288, 3980, -1835, 683, 2912, 1997, 2504, 1602, 1811, 1812, 683, 738, 1827, 1283, 1284, 2927, 2929, 2931, 1902, 1286, 3601, 2933, 1287, 1288, 3006, 3007, 3008, 3009, 1283, 1284, 4134, 2166, 1998, 3642, 1283, 1284, 1498, 3646, 1906, 3496, 3497, 1218, 1129, 3637, 3712, 4661, 1574, 3713, 2242, 2764, 1198, 1124, 1283, 1284, 3618, 1218, 2762, 2973, 3033, 2975, 2976, 1283, 1284, 2979, 2980, 2785, 1421, 2767, 1065, 1422, 2770, 2771, 2642, 2989, 2990, 3020, 2287, 3206, 3021, 2786, 2000, 2283, 4353, 1489, 1288, 942, 2606, 4361, 606, 2732, 1288, 2849, 1288, 4354, 1136, -846, 1286, 2862, 1336, 1287, 3513, 3514, 1814, 3962, 1943, 1560, 3551, 3552, 644, 2517, 1499, 3690, 1283, 1284, 2243, 2775, 1283, 1284, 1283, 1284, 2710, 2974, 3791, 874, 2977, 2978, 1964, 2040, 2981, 2982, 2983, 2984, 2985, 2986, 2987, 2988, 1286, 4125, 2991, 1287, 3315, 1283, 1284, 3717, 3718, 1283, 1284, 2122, 2122, 2288, 3190, 1286, 895, 2598, 1287, 1733, 1733, 1288, 1283, 1284, 3245, 765, 2308, 670, 709, 3316, 2289, 1734, 1734, 2009, 1283, 1284, 589, 683, 2518, 3258, 2620, 2320, 2347, 2309, 1414, 3237, 1283, 1284, 2089, 3624, 670, 683, 2743, 2300, 2283, 2039, 4523, 4524, 1307, 3981, 3625, 4110, 3149, 1999, 4135, 2808, 1283, 1284, 2316, 2507, 961, 3201, 1493, 1218, 670, 2924, 943, 4312, 933, 1336, 1288, 2244, 4152, 1423, 4157, 1963, 2348, 1286, 2167, 2112, 1287, 770, 4318, 2635, 3132, -1835, 3097, 2524, 1288, 2658, 1283, 1284, 1283, 1284, 3047, 4408, 2135, 2342, 2652, 3540, 2064, 3034, 2067, 2279, 683, 2529, 2072, 2594, 2458, 1333, 1288, 1283, 1284, 1286, 683, 3019, 1287, 4337, 4338, 1283, 1284, 670, 1066, 921, 1283, 1284, 2011, 2530, 528, 1016, 683, 2301, 3248, 1651, 1288, 3106, 2320, 2705, 2706, 2787, 1124, 3154, 3155, 2352, 1739, 1652, 944, 1283, 1284, 2730, 2397, 2533, 1283, 1284, 2245, 2107, 1286, 2607, 2711, 1287, 606, 3812, 670, 1575, 2283, 616, 4355, 1286, 2123, 1942, 1287, 683, 1942, 2608, 1286, 1830, 3393, 1287, 583, 670, 1500, 2463, 3591, 4319, 782, 2625, 4681, 3148, 3025, 1283, 1284, 1283, 1284, 2626, 1813, 4257, 632, 3158, 2464, 3843, 2071, 1968, 3213, 2070, 632, 3027, 4280, 2761, 3911, 3912, 1083, 1288, 1337, 1124, 4320, 2313, 3035, 4122, 525, 525, 525, 683, 525, 2754, 683, 646, 2222, 650, 2545, 1124, 2715, 1403, 2402, 2171, 525, 922, 670, 1286, 661, 525, 1287, 2158, 2159, 2160, 2283, 2162, 1016, -242, 2387, 4106, 4107, 1288, 1286, 2163, 2283, 1287, 662, 2172, 1286, 683, 2343, 1287, 2176, 2280, 706, 2897, 1288, 798, 2551, 529, 584, 1283, 1284, 3626, 651, 3391, 1286, 683, 2203, 1287, 1283, 1284, 4356, 2555, 3789, 1286, -1664, 552, 1287, 2737, 1248, 3269, 3134, 4370, 3790, 1283, 1284, 2388, 1336, 1283, 1284, 4259, 1929, 1283, 1284, 664, 2353, 4288, 2154, 670, -1588, 1304, 2300, 2267, 3287, 3287, 1283, 1284, 923, 3394, 2161, 4163, 675, 2164, 3392, 1283, 1284, 1283, 1284, 1337, 3813, 4289, 3920, 689, 2344, 936, 1286, 4308, 1288, 1287, 1286, 2301, 1286, 1287, 585, 1287, 2898, 1283, 1284, 652, 553, 1478, 2204, 2403, -1665, 2556, 3654, 3655, 2187, 1283, 1284, 1316, 1317, 1318, 1319, 1286, -1588, 1743, 1287, 1286, 1404, 684, 1287, 2886, 1288, 2246, 1743, 687, 1336, 2715, 3225, 1249, 1286, 2895, 721, 1287, 1142, 2716, 1336, 1131, 1132, 2558, 2849, 3183, 1286, 1969, 1744, 1287, 2738, 691, 4151, 4550, 4550, 2776, -1588, 1744, 1286, 4511, 882, 1287, 4515, 2715, 2934, 3814, 2451, 2397, 2241, 1288, 2241, 1153, 2256, 2257, -1588, 2259, 2320, 2398, 1286, -1588, 1288, 1287, 1252, 2128, 3679, 683, 2559, 1288, 2407, 683, 2397, 3791, 1096, 3431, 3432, 1479, -1835, 2563, 3280, 1084, -1588, 2899, 1716, 2299, 2581, 1717, 945, 946, -1588, 948, 3627, 950, 1286, 3258, 1286, 1287, 2777, 1287, 3277, 3407, -1588, 1283, 1284, 1283, 1284, 1085, 3116, 1016, 951, 700, 937, 1068, 1069, 1286, -1588, 683, 1287, 3970, 554, -1588, 826, 1286, 2205, 1097, 1287, 1535, 1286, -1835, -1588, 1287, 1288, 4589, 1283, 1284, 2469, 525, 1283, 1284, 2717, 2718, 3971, 702, 2206, 1190, 1191, 1288, 683, 3494, 1307, 1286, 2487, 1288, 1287, 1253, 1286, 2283, 2207, 1287, 2470, 1283, 1284, 3312, 3495, 3019, 2404, 3397, 1745, 2509, 2409, 1288, 2717, 2718, 1283, 1284, 1283, 1284, 3812, 1536, 1288, 3972, 3398, 2719, 1283, 1284, 1283, 1284, 3506, 1016, 1131, 1132, 1337, 1286, 2346, 1286, 1287, 3516, 1287, 1016, -1588, 3281, 2451, 1325, 1326, 2602, 1663, 1664, 2283, 3902, 3903, 1098, 1283, 1284, 939, 3605, 1124, 1260, 3189, 2038, 3897, 4603, 2037, -1588, 3846, 2290, 4521, 2832, 3848, 1218, 2538, 1288, 3550, -1588, 1743, 1288, 3904, 1288, 3025, 3180, 4604, 3181, 2208, 1546, 2301, 653, 1970, 1805, 3517, 125, 1283, 1284, 4044, 2519, 3898, 3027, 1283, 1284, 1070, 1071, 1288, 709, 1971, 1744, 1288, -1588, 2636, 654, 3815, 1283, 1284, 1942, 1337, 1547, 1144, 1286, 2520, 1288, 1287, 3153, 2528, 710, 1337, -1835, 1286, -1756, 711, 1287, 670, 1288, 2604, 1336, 2610, 2541, -1756, 530, 1283, 1284, 531, 1286, 714, 1288, 1287, 1286, 611, 2542, 1287, 1286, 655, 3166, 1287, 2625, 611, 3222, 3223, 3224, 3465, 2546, 2532, 2674, 1286, 1288, -1588, 1287, 1548, 4032, 2508, 2507, 1549, 1286, 2505, 1286, 1287, 1293, 1287, -1756, 2452, 2550, 2291, 2627, 716, 1823, 1336, 730, -1756, 1942, -1588, 3813, 683, 670, 2489, 1286, 718, 2122, 1287, 1288, 272, 1288, 274, 1471, 683, 3549, 2283, 1286, 2209, 1374, 1287, 2300, 542, 656, 1374, 2554, 732, 2557, 1283, 1284, 1288, 733, 530, 2506, 2507, 531, 734, 670, 1288, 990, 622, 1107, 879, 1288, 2534, 2507, 2560, 3578, -1588, 2266, 889, 1283, 1284, 892, 2572, 2249, 683, 1283, 1284, 2734, 683, 1283, 1284, 1942, 2653, 2453, 1288, 2654, 1304, 897, 2655, 1288, 2451, 3696, 1283, 1284, 670, 670, 683, 683, 902, 602, 1292, 908, 3818, 3697, 1218, 2591, 670, 1099, 2210, 1602, 910, 2910, 935, 1145, 670, 3908, 631, 3698, 926, 1124, -1588, 4063, 4064, 4065, 1283, 1284, 1288, 3156, 1288, 990, 3704, 1124, -1588, 1314, 1315, 1316, 1317, 1318, 1319, 2250, 1016, 919, 3463, 928, 3482, 1286, 2532, 1286, 1287, 933, 1287, 632, -1588, 4050, -1588, 1550, 956, 2313, 2760, 4455, 986, 4457, 2452, 4458, 670, 1283, 1284, 1050, 1336, 957, 2251, -1835, 1100, 2679, 1101, 3260, 1286, 1416, 981, 1287, 1286, -1588, -1588, 1287, 2292, -1588, -1588, 2704, 1057, 683, 3014, 1016, 3667, 3668, 2293, 1434, 2708, 3015, 2535, 1900, 874, 2294, 2715, 1286, 683, 3307, 1287, 1056, 1288, 1062, 3184, 683, 683, 1943, 683, 3541, 1286, 1288, 1286, 1287, 1059, 1287, 1063, 1337, 3487, 1061, 1286, 3249, 1286, 1287, 1064, 1287, 1288, 3490, 1077, 1551, 1288, 2453, 1283, 1284, 1288, 1080, 2252, 2454, 3321, 2547, 2507, 895, 2756, 1304, 2283, 3324, 3498, 1288, 1286, 3327, 3502, 1287, 2845, 123, 1087, 4385, 1288, 1095, 1288, 1104, 3638, 1107, 2893, 3503, 3639, 3118, 3469, 1117, 1337, 1137, 2344, 3476, 3504, 1138, 3505, 1140, 3604, 1790, 1288, 123, 3640, 2772, 2769, 2548, 2507, 1307, 1286, 3810, 2241, 1287, 1288, 1173, 1286, 1552, 3507, 1287, 3402, 3691, 2883, 2295, 3694, 3695, 1171, 3010, 2854, 1286, 3510, 1044, 1287, 2398, 3819, 3820, 1743, 1174, 2398, 1175, 2868, 3815, 3714, 2253, 2866, 2398, 2878, 2717, 2718, 2398, 1177, 2877, 2549, 2507, 2451, 2301, 1286, 3850, 3835, 1287, 3936, 2877, 3120, 1016, 2877, 1744, 2398, 2398, 1178, 670, 2877, 2877, 1179, 124, 2907, 2814, 2903, 1182, 2914, 2398, 1183, 1943, 1184, 2822, 2917, 2918, 1185, 1942, 2398, 683, 2719, 4472, 125, 2829, 2830, 1186, 2452, 3828, 2932, 1187, 2877, 3012, 1336, 1188, 2834, 2835, 2836, 2837, 1189, 2839, 2840, 2689, 2398, 2950, 1192, 2454, 3936, 3213, 1791, 1194, 2296, 1328, 1792, 1195, 1288, 2300, 1288, 2228, 2229, 1196, 2970, 1199, 2230, 2231, 1286, 1522, 1793, 1287, 1200, 1553, 3515, 965, 3518, 1403, 1201, 3824, 1337, 965, 2879, 2880, 2881, 2882, 3853, 1048, 1049, 1288, 1052, 1286, 1053, 1288, 1287, 2552, 2507, 1286, 1282, 126, 1287, 1286, 1309, 1310, 1287, 3520, 1307, 990, 622, 3522, 2451, 2690, 2913, 1412, 1286, 1554, 1288, 1287, 670, 2039, 2841, 2842, 2916, 3863, 3864, 3865, 610, 1202, 1523, 1288, 4273, 1288, 3524, 3855, 683, 683, 683, 2345, 3058, 1288, 1332, 1288, 127, 2046, 3854, 3525, 1286, 3526, 2283, 1287, 272, 1203, 274, 1204, 2346, 3840, -1588, 3841, 670, 1205, 1229, 1524, 3083, 2507, 670, 2241, 1206, 1288, 2241, 2241, 3135, 2507, 2241, 2241, 2241, 2241, 2241, 2241, 2241, 2241, 1207, 1247, 2241, 3842, 1208, 1303, 128, 1286, 3421, 3422, 1287, -1835, 1209, 3689, 1261, 1262, 3458, 3459, 2254, 1212, 2893, 3508, 2507, 3576, 3577, 1288, 3603, 1213, 1794, 1219, 3014, 1288, -1588, 1016, 3282, 1220, 1404, 3015, 3609, 3610, 3407, 3922, 1221, 2016, 1288, 1602, 2047, 4041, 3716, 1348, 1863, 2048, 1222, 3053, 3054, 3055, 3721, 3997, 3766, 3767, 4043, 4274, 4275, 1223, 3747, 1224, 4276, 4277, -1588, 1410, -1588, 1288, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 1225, 3067, 1411, 3768, 3769, 1309, 1310, 4049, -1588, 1420, 2283, 4263, 4267, -1588, 2049, 2300, 2452, 3770, 3771, 3163, 3773, 3774, 1336, 670, 670, 939, 1226, -1588, 3068, -1866, 2050, 3776, 3777, 1304, -1588, -1867, 1337, 3283, 1227, 2689, 3852, 2507, -1588, 3172, 965, 2249, 1795, 1230, 2911, 3178, 3178, 939, 3178, 1231, -1588, 3906, 4263, 4267, 3876, 3877, 129, 1232, 3699, 4002, 4003, 744, 2451, 3163, -1588, 1288, 1233, 3433, 1234, -1588, 1304, 1235, 1867, 2204, 3069, 3196, 1236, 3070, -1588, 3705, 3379, 4051, 4035, 4038, 1237, 3071, 1238, 2453, 1288, -1866, 4045, 2507, 1239, 2301, 1288, -1867, 1240, 2269, 1288, 4059, 2507, 2690, 4066, 3886, 4052, 1943, 1241, 2250, 3214, 744, 4053, 1288, 1242, 2270, 4054, 4263, 13, 1243, 1525, 4267, 3178, 3178, 3178, 670, 1244, 2135, 965, 4302, 4091, 3459, 1245, 2123, 2123, 1429, 2452, 130, -1866, 1305, 2251, 3930, 1336, 1246, -1867, 1288, 3177, 3177, 765, 3177, -1588, 4097, 3877, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 4270, 4100, 4101, 3014, 1250, 1306, 4112, 4113, 1283, 1284, 3015, 1251, -1588, 3955, 3956, 683, 4140, 2842, 1254, 2553, 1255, 1638, -1588, 1868, 1259, 1288, 1263, 1871, 3930, 1264, 965, 4153, 4101, 3965, 1872, 765, 1016, 4154, 4101, 1265, 3968, 131, 1266, 132, 769, 3282, 1267, 942, 4290, 670, 670, 2252, 2205, 770, -1588, 1268, 4077, 4078, 1269, 4080, 3177, 3177, 3177, 2283, 3072, 1270, 3993, 1327, 25, 3995, 4155, 4101, 2206, 4188, 4101, 1307, 4189, 4101, 4199, 4101, 536, 2249, 4291, 1437, 775, 1439, 2207, 4162, 2454, 133, 2398, 1459, 769, 2398, 2398, 3284, 1131, 1132, 2877, 1472, 4384, 770, 4200, 4101, 1476, 1526, 1859, 1860, 1861, 1862, 1863, -1588, 1473, 670, 1484, 1873, 1307, 2398, 4121, 1337, 1491, 2689, 4205, 4206, 3270, 3271, 1527, 2271, 3283, -1835, 4121, 1494, 775, 1496, 2253, -1588, 1517, 2877, 1521, -689, 3274, 1541, 4207, 4206, 2877, 4303, 3459, 2250, 2877, 2313, 2301, 1528, 1542, 4310, 2688, 1543, 782, 1942, 1016, 4304, 3459, 3073, 4625, 4626, 2314, 4459, 1558, 1529, 4306, 3404, 2208, 537, 1308, 1561, 943, 4386, 4387, 1565, 2251, 1875, 1566, 3332, 1573, -1588, 683, 4405, 3877, 2690, 1576, 3390, 1577, 2452, 1578, -1866, 1591, 2877, 1592, 1336, 1594, -1867, 2016, 2016, 2016, 1596, 782, 2272, 4292, -915, 1600, 3313, 4519, 4520, 1607, 1864, 1865, 1866, 1867, 1609, 2691, 4554, 4555, 3319, 793, 1610, 3411, 4672, 4673, 3415, 2941, 2944, -1866, 2273, 1932, 1933, 1309, 1310, -1867, -1588, 797, 798, 1611, 1337, 1624, 4176, 1626, 4177, 4178, 1311, -1588, -1588, 2252, 1627, 4390, 1628, 944, 4393, 4394, 4395, 4396, 538, 1632, 3441, 4470, 4471, 4167, 4168, 1629, 3722, -689, -1588, 793, -1588, 683, 2398, 537, 1309, 1310, 1630, 2249, 1631, 1633, 2926, 796, 3333, 38, 1635, 797, 798, 1648, 1654, 2692, 1656, 2209, 2274, 4293, 1657, 1660, 2249, -1588, -1588, 2928, 1661, -1588, -1588, 4379, 4380, 4381, 4382, 1665, 1738, 1743, 3983, 4294, 3074, 1737, 3724, 2249, 3725, 1741, 2930, 1876, 44, 1742, 1799, 1800, 2241, 1868, 1804, 1869, 1870, 1871, 3424, 1801, 2253, 1807, 1820, 4295, 1872, 1878, 1744, 4404, 1322, 1830, 1602, 2250, 1837, -1866, 1852, 1889, 3284, 1899, 1900, -1867, 4468, 4469, 2254, 1901, 1923, 1940, 2204, 1953, 1960, 4477, 2250, 2210, 3726, -845, 1068, 1069, 874, 4324, 3445, 3722, 2693, 1016, 2251, 3547, 1961, 1286, 1979, 1985, 1287, 2250, 3075, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 2010, 2013, 2251, 2275, 2015, 2020, -689, 2023, -1866, 1374, 4029, 4030, 4031, 670, -1867, 2027, 2313, 2024, 2025, 3076, 2026, 2251, 1943, 2028, 3723, 683, 1873, 4272, 3724, 2029, 3725, 2314, 2030, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 3196, 670, 2041, 874, 54, 818, 2042, 2043, 2051, 3931, 2045, 2204, 3932, 2053, 2252, 2063, 1218, 2054, 670, 2062, 2074, 2077, 824, 2085, 1337, 2093, 2095, 826, 2094, 2096, 827, 2099, 2102, 2252, 2016, 2103, 2105, 3726, 2106, 539, 2109, 1304, 2113, 2128, 2315, 1350, 2130, 683, 1874, 1875, 2131, 683, 2252, 818, 2137, 1943, 2144, 3931, 57, 540, 3932, -689, 969, 968, 2205, 2150, 2152, 2145, 2146, 2156, 824, -884, 2178, 2179, 2180, 826, 2181, 2183, 827, 1070, 1071, 4437, 2198, 3590, 2206, 2196, 1016, 4098, 4099, 3933, 3934, 2212, 4104, 4105, -689, 2398, 2213, 2253, 2207, 2216, 537, 2261, 2217, 4296, 541, 2398, -609, 2877, 2219, 542, 2262, 2264, 1602, 2223, 2268, -845, 2253, 2224, 2225, 1943, 2278, 2254, 2398, 2877, 2313, 683, 2327, 1304, 2398, 945, 946, 947, 948, 949, 950, 2253, 1743, 3933, 3934, 2338, 2332, 2333, 2339, 1351, 543, 2341, 2349, 2354, 2351, 2205, 2361, 951, 544, 2362, 2365, 2371, 2372, 2381, 1072, 1073, 1074, 2694, 540, 2384, 4559, 1744, 2383, 3658, 1352, 2206, 2385, 2391, 1353, 2392, 1131, 1132, -884, 2399, 1788, 2411, 3727, 2413, 2208, 2207, 2414, 2415, 3728, 2416, 2417, 2418, 1876, 2419, 2420, 525, 2421, 2422, 2423, 3761, 2424, 2425, 2426, 2970, 2427, 558, 2428, 3909, 1288, 1877, 1878, 1942, 2447, 2429, 1354, 2430, 2431, 1602, 3757, 2432, 3411, 2433, 2434, 2435, 2438, 1942, 1124, 4537, 3729, 3779, 1942, 2439, 2440, 2441, 1355, 1942, 2442, 3499, 2443, 1670, 1671, 4667, 2444, 683, 4559, 683, 2445, 2465, 1307, -689, 2471, 2466, 2485, 2481, 2482, 4676, 939, 2483, 3808, 2123, 4667, 2494, 2489, 2496, 559, 4676, 2523, 2532, 2600, 2208, 2497, 2498, 2514, -849, -849, 1673, 2516, 1197, 2521, 2522, 2525, 1131, 1132, -849, 2507, 2526, 2540, 3727, 2544, 1676, 2536, -1317, 3913, 3728, 2561, 1677, 1678, 560, 2562, 1679, 1356, 1319, 2567, 875, 876, 877, 2209, 3730, 880, 881, 2609, 2570, 883, 884, 885, 4597, 1304, 4599, 2571, 2582, 2254, 2583, -689, 1681, 1777, 1778, 1779, 1780, 1781, 1782, 1783, 2584, 561, 3729, 1307, 4612, 3788, 1648, 2592, 2254, 2619, 1682, 3796, 2593, 3797, 2624, 4363, 2623, 1248, 4300, 1, 2631, 1252, 2, 2649, 4637, 2650, 3731, 2254, 2680, 1375, 1376, 2686, 2637, 4640, 4641, 2701, 4652, 3, 2698, 1687, 2729, 4, 2741, 2745, 2747, 3172, 1489, 2210, 1408, 670, 670, 670, 2753, 562, 2757, 5, 6, 2759, 2763, 2781, 2209, 2782, 2783, 7, 3196, 1357, 4349, 2798, 8, 9, 2796, 2797, 2809, 2815, 2816, 2823, 1309, 1310, 3214, 3884, 2821, 3730, 2824, 3732, 10, 965, 2825, 2828, 2887, 670, 670, 670, 540, 2826, 2827, 2937, 2889, 2962, 2965, 2959, 2972, 1358, 2994, 2997, 11, 3000, 935, 3003, 2135, 3013, 1359, 3029, 683, 683, 3037, 1377, 1691, 935, 3058, 1826, 3062, 3066, 3084, 1692, 937, 1360, 12, 3085, 3086, 3098, 3960, 3731, 2210, 2674, 3927, 13, 14, 15, 3146, 3940, 3099, 4300, 1376, 683, 1693, 3111, 1378, 3170, 16, 17, 1361, 3133, 3144, 3945, 3152, 2661, 3171, 3175, 3187, 3191, 1379, 18, 1309, 1310, 3197, 3198, 3199, 3192, 670, 2080, 3202, 3203, 3204, 3216, 3219, 19, 3220, -689, 3221, 3226, 1350, 2662, -67, 1380, 3231, 3232, 1381, 563, 3732, 3234, 1307, 670, 3235, 3242, 1362, 20, 2663, 3236, 3250, 1382, 3254, 3275, 3255, 3278, 1695, 3279, 3314, 3298, 3299, 2664, 3325, 3310, 1304, 21, 3297, 22, 3318, 3322, 3317, 3996, 23, 3328, 1696, 24, 3331, 1363, 1383, 1377, 1314, 1315, 1316, 1317, 1318, 1319, 3330, 3403, 3396, 3411, 3400, 3415, 4009, 3404, 3938, 3429, 3430, 530, 25, 4532, 531, 26, 3437, 1384, 3444, 3442, 3441, 1455, 1376, 1385, 1378, 3460, 3466, 2387, 2665, 2666, 2269, 3470, 564, 4363, 3472, 3477, 27, 3479, 1379, 3927, 3927, 3927, 3480, 1700, 1351, 3481, 2270, 3483, 3484, 3491, 3492, 3527, 1701, 28, 3973, 3561, 2667, 29, 4532, 3537, 3538, 1380, 3539, 3544, 1381, 3562, 1347, 3548, 1386, 1352, 3553, 3554, 3579, 1353, 3584, 3563, 3580, 1382, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 3586, 4360, 3999, 3564, 3565, 3566, 3592, 3581, 3582, 3595, 3583, 565, 3596, 1294, 1295, 1421, 566, 2241, 1383, 3567, 3598, 1377, 3258, 4073, 3608, 965, 4014, 1354, 3619, 1309, 1310, 3617, 3611, 3621, 567, 3622, 670, 3623, 3630, 2668, 3644, 3645, 3669, 1384, 3657, 1706, 3670, 1355, 2135, 1385, 3692, 3675, 1378, 3751, 1296, 3752, 3650, 3755, 3666, 568, 3685, 3748, 3758, 3759, 3763, 3764, 1379, 1297, 30, 3783, 3772, 3927, 3927, 4649, 3784, 569, 3927, 3927, 2715, 3817, 1441, 3778, 3832, 4300, 3785, 31, 2588, 32, 3532, 1380, 1442, 1694, 1381, 2669, 1386, 3786, 3805, 1307, 3799, 4649, 1443, 33, 1707, 1708, 1709, 1382, 3806, 1298, 670, 1710, 3825, 3807, 34, 1356, 1444, 1445, 1446, 3831, 1387, 3844, 1667, 1299, 1388, 3857, 3861, 3868, 1711, 3870, 3878, 1712, 1447, 670, 1383, 2271, 35, 3885, 3888, 36, 1389, 37, 3886, 3892, 38, 3893, 3894, 3895, 1390, 3907, 1300, 3910, 3914, 4133, 39, 40, 1391, 3917, 3923, 1384, 3924, 3411, 3411, 3928, 41, 1385, 42, 1714, 3943, 873, 3946, 3929, 4147, 3954, 3957, 43, 3961, 3739, 3964, 3966, 3977, 44, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 45, 3978, 3982, 1392, 3985, 46, 47, 48, 3987, 3988, 3742, 3994, 2960, 873, 4000, 4011, 1393, 1394, 4679, 4012, 873, 1386, 1357, 3998, 2272, 4020, 1301, 4023, 4024, 1859, 1860, 1861, 1862, 1863, 4021, 4025, 4027, 3475, 49, 4042, 3453, 4046, 4047, 1387, 4033, 50, 4048, 1131, 1132, 3058, 2273, 3058, 4034, 4035, 4036, 4037, 2970, 2970, 1358, 4039, 4040, 3568, 3927, 1389, 4056, 4060, 4057, 1359, 1395, 1309, 1310, 1390, 4061, 4062, 4202, 4067, 4240, 4068, 3569, 1391, 4069, 2626, 1360, 4079, 4081, 4082, 4085, 4111, 4088, 51, 4090, 4095, 4096, 4103, 4117, 4126, 796, 1396, 4128, 4129, 4143, 52, 4148, 4156, 4038, 53, 4159, 1361, 54, 4160, 4161, 4164, 2274, 55, 4165, 1392, 4169, 4173, 4170, 1397, 4174, 1398, 4179, 936, 4184, 4185, 4201, 4198, 1393, 1394, 1943, 683, 4208, 4209, 4287, 4242, 1864, 1865, 1866, 1867, 4254, 4283, 4245, 4248, 56, 4249, 4269, 4271, 4282, 4301, 2954, 1362, 4305, 4328, 4313, -383, 4346, 1387, 4351, 4240, 4240, 1456, 57, 4348, 4372, 4134, 873, 4378, 4389, 4391, 4369, 873, 1448, 4332, 4392, 4400, 4397, 1389, 4339, 4401, 1395, 4451, 1363, 4406, 4411, 1390, 4409, 4410, 4414, 1449, 4417, -401, 4442, 1391, 4444, 4445, 4446, 4447, 4448, 3570, 4450, 4463, 873, 4474, 4478, 4481, 4479, 4480, 4490, 1396, 3411, 4491, 4495, 4501, 2275, 4502, 3571, 4533, 873, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 4509, 4538, 1392, 4281, 1397, 4540, 1398, 4542, 4543, 4546, 4564, 4566, 4494, -2397, 4567, 1393, 1394, 4572, 4452, 4309, 4577, 4575, 1868, 4585, 1869, 1870, 1871, 4494, 4587, 4590, 4594, 4595, 4600, 1872, 4605, 4606, 873, 873, 4609, 873, 873, 4596, 4601, 4505, 4611, 4615, 4617, 4620, 4621, 4622, 4624, 3572, 873, 4628, 4629, 4631, 4638, 4654, 4653, 4240, 4240, 4658, 4668, 4678, 3168, 4341, 3005, 1395, 3573, 4418, 2996, 2999, 4008, 4010, 3687, 3688, 3002, 2993, 4006, 3290, 4013, 4240, 3475, 1154, 4015, 3475, 3475, 4250, 4358, 4503, 3272, 4504, 4022, 4017, 4670, 4146, 1396, 4633, 638, 1026, 1450, 670, 2727, 3475, 2645, 3575, 4220, 4221, 1659, 4223, 4224, 4226, 4227, 4228, 1873, 4642, 4229, 3720, 1397, 4230, 1398, 4287, 4569, 3740, 3743, 3745, 3746, 4494, 2893, 4231, 4473, 4570, 4234, 4488, 4551, 4235, 4236, 4584, 4500, 4240, 4499, 2389, 4586, 2312, 4256, 3597, 4071, 3329, 873, 3872, 4462, 3602, 1803, 4171, 4240, 4508, 2083, 4074, 4608, 2734, 873, 4592, 1451, 4562, 4399, 2450, 731, 4026, 3451, 4561, 4240, 3436, 3684, 2386, 2956, 2395, 3671, 1874, 1875, 1452, 3676, 4565, 3706, 3707, 873, 3749, 3984, 4494, 4119, 4494, 3276, 4507, 3529, 4326, 3847, 3849, 3845, 4307, 550, 551, 4314, 4311, 4494, 2480, 4240, 4315, 4374, 3052, 4197, 4376, 3435, 670, 4124, 2810, 2806, 2942, 4240, 4240, 3028, 4467, 4109, 1041, 2943, 2940, 2197, 2195, 1037, 3942, 3205, 3672, 4494, 4494, 2448, 2707, 3589, 4657, 3869, 2408, 3188, 1477, 2108, 2622, 3143, 3082, 1055, 1962, 3160, 1482, 3161, 1898, 2794, 2200, 670, 3919, 4240, 3142, 3656, 4186, 3765, 4187, 1849, 4058, 3159, 3851, 4240, 3678, 3901, 3916, 4377, 4240, 4522, 2736, 4180, 4574, 4181, 1166, 1640, 2012, 1409, 3185, 4582, 3186, 3887, 3866, 1641, 3651, 1642, 648, 739, 2765, 1022, 2169, 4240, 1643, 4240, 2184, 2194, 4516, 4517, 2766, 2639, 3683, 2101, 3871, 3896, 4623, 4083, 4607, 4677, 4680, 3976, 3883, 4240, 873, 4240, 4671, 4240, 4084, 1505, 1876, 2755, 1825, 634, 1959, 2151, 635, 1504, 2143, 2142, 4240, 4613, 2685, 2733, 1458, 2104, 4618, 1877, 1878, 2660, 1623, 2801, 4240, 4240, 3858, 4383, 932, 1461, 725, 3545, 726, 4350, 1157, 1158, 4352, 4563, 0, 1159, 4240, 4240, 0, 0, 0, 4240, 0, 4650, 0, 0, 0, 0, 873, 873, 0, 0, 0, 0, 0, 0, 0, 873, 873, 873, 873, 873, 873, 873, 0, 0, 0, 1943, 0, 4650, 873, 873, 0, 873, 873, 0, 0, 670, 873, 873, 0, 1943, 873, 873, 873, 873, 1943, 873, 873, 0, 0, 1943, 0, 0, 0, 873, 873, 0, 873, 873, 873, 873, 873, 0, 0, 873, 873, 873, 873, 873, 873, 873, 873, 873, 873, 0, 873, 0, 0, 873, 873, 0, 0, 0, 873, 0, 0, 0, 873, 873, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 873, 873, 0, 1753, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 873, 0, 873, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 873, 873, 0, 873, 873, 873, 873, 873, 0, 873, 873, 873, 873, 873, 873, 873, 873, 0, 0, 1, 873, 0, 2, 0, 873, 0, 1670, 1671, 0, 0, 0, 1754, 1755, 1756, 1757, 1758, 1068, 1069, 1759, 1760, 1761, 4, 1762, 1763, 1764, 1765, 1766, 1767, 1768, 1769, 1770, 1771, 0, 1772, 1773, 5, 6, 0, 0, 0, -849, -849, 1673, 7, 0, 0, 0, 0, 8, 9, -849, 0, 0, 0, 0, 0, 1676, 0, 0, 0, 0, 0, 1677, 1678, 10, 0, 1679, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 1681, 0, 0, 0, 0, 0, 911, 989, 0, 0, 0, 0, 0, 0, 1648, 0, 12, 0, 1682, 0, 0, 0, 0, 0, 0, 13, 14, 15, 0, 0, 0, 0, 990, 622, 0, 0, 0, 0, 16, 17, 0, 0, 0, 991, 0, 0, 0, 1687, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 19, 0, 0, 992, 0, 993, 1070, 1071, 0, 0, 0, 0, 0, 0, 0, 994, 0, 0, 0, 0, 20, 0, 0, 0, 873, 0, 0, 0, 873, 1670, 1671, 0, 0, 0, 873, 0, 0, 0, 21, 0, 22, 873, 0, 0, 0, 23, 0, 0, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1691, 0, 0, 0, -1835, 995, 1673, 1692, 0, 0, 996, 0, 25, 997, 0, 26, 0, 0, 0, 0, 1676, 0, 0, 0, 0, 0, 1677, 1678, 1693, 0, 1679, 0, 0, 0, 0, 0, 27, 0, 0, 0, 0, 3042, 0, 0, 0, 998, 0, 999, 0, 0, 0, 0, 0, 28, 1681, 0, 1000, 29, 1001, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1648, 0, 0, 0, 1682, 0, 0, 0, 0, 0, 0, 0, 0, 1002, 1003, 0, 0, 0, 0, 0, 1695, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1687, 0, 0, 0, 0, 1696, 0, 0, 1004, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1005, 0, 0, 0, 0, 852, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 1700, 0, 0, 1006, 0, 0, 0, 900, 0, 1701, 31, 0, 32, 0, 907, 0, 0, 1691, 0, 0, 0, 0, 0, 0, 1692, 0, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 1670, 1671, 0, 0, 0, 1693, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 0, 0, 36, 0, 37, 0, 0, 38, 1007, 0, 0, 0, 0, 0, -849, -849, 1673, 39, 40, 0, 0, 0, 0, 0, -849, 0, 0, 41, 1706, 42, 1676, 0, 0, 0, 0, 1008, 1677, 1678, 43, 0, 1679, 0, 0, 0, 44, 1695, 1009, 1010, 0, 0, 1011, 1012, 45, 0, 0, 0, 0, 46, 47, 48, 0, 0, 0, 1696, 1681, 0, 0, 0, 0, 0, 0, 1013, 0, 0, 0, 873, 0, 0, 1648, 873, 0, 0, 1682, 0, 0, 1707, 1708, 1709, 0, 873, 49, 873, 1710, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 1180, 0, 0, 0, 1711, 0, 1687, 1712, 0, 0, 0, 0, 0, 1700, 0, 0, 0, 0, 0, 0, 1014, 0, 1701, 0, 0, 0, 0, 873, 0, 0, 0, 1211, 0, 1015, 0, 0, 51, 0, 0, 0, 0, 0, 0, 1714, 0, 0, 0, 1228, 52, 0, 0, 0, 53, 0, 0, 54, 0, 0, 0, 0, 55, 0, 0, 0, 0, -2433, 0, 0, 0, 1016, 0, 0, 873, 873, 873, 0, 0, 0, 0, 0, 0, 0, 0, 1691, 0, 0, 0, 0, 1017, 873, 1692, 56, 0, 0, 0, 0, 1274, 873, 0, 0, 0, 1706, 0, 3043, 0, 0, 0, 0, 0, 57, 0, 1693, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 873, 0, 0, 873, 0, 873, 0, 0, 0, 0, 0, 873, 0, 873, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, -2433, 0, 0, 0, 0, 0, 0, 1018, 0, 0, 0, 0, 1707, 1708, 1709, 0, 0, 0, 0, 1710, 0, 0, 0, 0, 0, 1695, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1711, 0, 0, 1712, 0, 0, 0, 1696, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 852, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1486, 873, 0, 0, 0, 1714, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1515, 0, 2938, 0, 1700, 0, 0, 1667, 0, 1668, 0, 0, 0, 1701, 0, 0, 0, 0, 0, 0, 0, 0, 1670, 1671, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1672, 0, 0, 0, 0, 1673, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1676, 0, 0, 0, 0, 0, 1677, 1678, 0, 0, 1679, 0, 0, 0, 0, 0, 0, 873, 0, 1680, 1706, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1681, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1648, 0, 0, 0, 1682, 0, 0, 0, 0, 1752, 0, 0, 1683, 0, 0, 0, 0, 0, 0, 2939, 0, 0, 0, 0, 0, 0, 0, 1686, 0, 1707, 1708, 1709, 0, 1687, 0, 0, 1710, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1711, 0, 0, 1712, 0, 0, 0, 0, 0, 0, 0, 0, 1828, 1829, 1689, 0, 0, 0, 0, 0, 0, 1839, 1840, 0, 0, 1844, 1845, 1846, 0, 0, 0, 0, 0, 0, 1853, 1854, 0, 1855, 1856, 1714, 0, 0, 1881, 0, 0, 0, 1891, 1892, 1893, 1894, 0, 1896, 0, 0, 0, 0, 0, 1691, 0, 1904, 1905, 0, 1908, 1909, 1692, 0, 0, 0, 0, 1913, 1914, 0, 0, 1917, 1918, 1919, 1920, 1921, 1922, 0, 1924, 0, 0, 1927, 1928, 1693, 0, 0, 1931, 0, 0, 0, 1934, 1938, 1939, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1946, 1947, 1948, 1694, 0, 0, 0, 0, 0, 0, 0, 1958, 0, 0, 0, 0, 852, 0, 0, 0, 0, 0, 1965, 0, 1966, 1967, 0, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 1695, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1696, 0, 0, 2004, 1697, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1666, 0, 0, 0, 0, 1667, 0, 1668, 0, 0, 1669, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1670, 1671, 0, 0, 0, 0, 0, 0, 0, 1699, 0, 0, 0, 873, 0, 0, 1700, 0, 0, 0, 0, 0, 873, 873, 0, 1701, 0, 0, 0, 873, 0, 1672, 873, 0, -849, -849, 1673, 1674, 0, 0, 0, 0, 1675, 0, -849, 873, 873, 0, 873, 0, 1676, 873, 873, 873, 873, 873, 1677, 1678, 873, 0, 1679, 0, 0, 0, 0, 0, 0, 873, 0, 1680, 0, 0, 1703, 873, 0, 873, 0, 873, 873, 0, 873, 873, 0, 0, 1681, 873, 873, 873, 0, 0, 0, 873, 873, 873, 0, 873, 0, 873, 1648, 873, 0, 873, 1682, 873, 1706, 0, 0, 0, 873, 2114, 1683, 1684, 0, 0, 0, 0, 0, 1685, 0, 0, 0, 0, 0, 0, 0, 1686, 0, 0, 0, 0, 0, 1687, 873, 0, 0, 873, 0, 0, 0, 2148, 0, 873, 1688, 1515, 0, 0, 873, 873, 0, 0, 0, 0, 0, 0, 0, 0, 2155, 0, 0, 0, 0, 1707, 1708, 1709, 0, 1689, 0, 0, 1710, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1711, 3334, 3335, 1712, 0, 0, 0, 3336, 0, 3337, 0, 3338, 3339, 0, 0, 0, 0, 0, 0, 0, 0, 1690, 0, 1691, 0, 0, 0, 0, 0, 3340, 1692, 0, 0, 0, 0, 0, 0, 0, 0, 1714, 0, 0, 0, 0, 0, 0, 1715, 0, 0, 0, 0, 1693, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1716, 1694, 0, 1717, 0, 873, 3341, 0, 0, 3342, 0, 0, 0, 0, 0, 0, 0, 3343, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3344, 0, 1695, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3345, 0, 0, 1696, 0, 0, 0, 1697, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3346, 0, 3347, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3288, 0, 0, 1698, 3348, 3349, 0, 0, 0, 1699, 0, 0, 3288, 3288, 0, 0, 1700, 0, 0, 0, 0, 0, 0, 0, 0, 1701, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3350, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1702, 0, 0, 3351, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1703, 1704, 1705, 0, 0, 0, 0, 3352, 0, 0, 0, 0, 0, 0, 0, 0, 3353, 3354, 0, 3355, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1706, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2495, 0, 0, 0, 2499, 0, 0, 0, 0, 0, 0, 3356, 3357, 3358, 0, 0, 2495, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3359, 3360, 3361, 0, 0, 0, 0, 3362, 0, 0, 3363, 0, 0, 0, 1707, 1708, 1709, 0, 0, 0, 0, 1710, 0, 0, 0, 0, 0, 0, 3364, 3365, 3288, 3288, 0, 0, 0, 0, 0, 0, 1711, 0, 0, 1712, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3366, 3367, 1713, 0, 0, 0, 0, 0, 0, 0, 2574, 2576, 2578, 0, 0, 1714, 0, 0, 0, 0, 873, 0, 1715, 873, 0, 0, 3368, 0, 0, 0, 0, 0, 0, 0, 0, 2603, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 873, 0, 0, 1716, 0, 0, 1717, 0, 2611, 0, 0, 0, 0, 0, 0, 0, 0, 2616, 0, 2617, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 873, 0, 873, 0, 0, 0, 0, 0, 0, 0, 3369, 0, 0, 0, 3370, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 3371, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1666, 0, 0, 0, 0, 1667, 0, 1668, 0, 0, 1669, 0, 0, 0, 0, 0, 3372, 2703, 873, 3373, 1670, 1671, 3374, 3375, 3376, 3377, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 873, 0, 0, 0, 0, 0, 0, 1672, 0, 0, 0, 2744, 1673, 1674, 0, 0, 0, 0, 1675, 0, 0, 3378, 3379, 873, 873, 0, 1676, 0, 873, 0, 0, 0, 1677, 1678, 0, 0, 1679, 0, 0, 0, 0, 0, 0, 0, 0, 1680, 0, 0, 0, 3380, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1681, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 1648, 2773, 0, 0, 1682, 0, 0, 0, 852, 0, 0, 0, 1683, 1684, 0, 0, 0, 0, 0, 1685, 0, 0, 0, 0, 0, 0, 0, 1686, 0, 0, 0, 0, 0, 1687, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1688, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1689, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1690, 0, 1691, 0, 0, 0, 0, 0, 0, 1692, 0, 0, 0, 0, 0, 0, 0, 3288, 3288, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1693, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 1694, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 873, 0, 0, 873, 873, 0, 873, 0, 0, 0, 0, 0, 0, 1695, 0, 873, 0, 0, 0, 0, 873, 0, 0, 873, 0, 873, 873, 0, 0, 0, 0, 1696, 0, 0, 0, 1697, 0, 0, 2971, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1698, 0, 0, 0, 0, 0, 1699, 0, 0, 0, 0, 0, 0, 1700, 0, 0, 0, 0, 0, 0, 873, 0, 1701, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3061, 0, 0, 0, 0, 0, 0, 0, 0, 3064, 3065, 0, 1702, 0, 0, 0, 3079, 0, 0, 3080, 0, 0, 0, 0, 0, 0, 0, 1703, 1704, 1705, 0, 0, 3087, 3088, 0, 3089, 0, 0, 3092, 3093, 3094, 3095, 3096, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3100, 0, 0, 0, 0, 1706, 3101, 0, 3102, 0, 3103, 3104, 0, 3105, 0, 0, 0, 0, 3108, 3109, 3110, 0, 0, 0, 3112, 3113, 3114, 0, 3115, 0, 3117, 0, 3119, 0, 3121, 0, 3122, 0, 0, 0, 0, 3123, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1707, 1708, 1709, 0, 0, 0, 0, 1710, 0, 0, 0, 0, 3157, 0, 0, 0, 0, 2004, 0, 0, 0, 0, 0, 0, 1711, 0, 0, 1712, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1713, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1714, 0, 0, 0, 0, 0, 0, 1715, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1716, 0, 0, 1717, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1515, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 873, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4238, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3462, 0, 0, 3464, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3485, 3486, 0, 0, 0, 0, 0, 0, 873, 873, 0, 0, 0, 0, 0, 4238, 4238, 0, 0, 0, 0, 0, 3509, 0, 0, 0, 0, 0, 0, 0, 0, 3519, 0, 3521, 0, 3523, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 852, 0, 0, 0, 0, 0, 0, 873, 0, 873, 3613, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 4238, 4238, 0, 0, 3632, 3635, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4238, 0, 0, 0, 0, 0, 3648, 3649, 4456, 0, 0, 3613, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3663, 0, 0, 0, 0, 0, 0, 0, 873, 0, 4238, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4238, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4238, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 4238, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4238, 4238, 0, 0, 0, 0, 0, 0, 0, 3753, 3754, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4238, 0, 0, 0, 0, 0, 0, 873, 0, 0, 4238, 0, 0, 0, 0, 4238, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 4238, 0, 4238, 0, 0, 3811, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 4238, 0, 4238, 0, 4238, 0, 0, 0, 0, 3821, 0, 2114, 0, 0, 3826, 3827, 0, 4238, 0, 0, 0, 0, 0, 0, 0, 0, 3834, 0, 0, 4238, 4238, 3836, 0, 0, 3837, 0, 3838, 3839, 0, 0, 0, 0, 0, 0, 0, 4238, 4238, 0, 0, 0, 4238, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3613, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3613, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3632, 0, 0, 0, 0, 4087, 0, 0, 0, 4089, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2114, 0, 4158, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 907, 4327, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4412, 0, 4413, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4421, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4492, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4497, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4536, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4576, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 4593, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 1935, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 4659, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 3613, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 1936, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 1937, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 1511, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 1512, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 1513, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 1514, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 842, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 2515, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 2573, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 2575, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 2577, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 1210, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 1973, 0, 152, 153, 0, 0, 0, 1974, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 0, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 3060, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 3107, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 3612, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 795, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 4556, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 0, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 779, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 0, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 1988, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 0, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 740, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 741, 0, 156, 157, 158, 159, 742, 161, 0, 162, 0, 0, 743, 163, 744, 745, 746, 164, 747, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 748, 749, 172, 173, 0, 174, 175, 750, 751, 177, 0, 178, 179, 180, 181, 752, 183, 0, 753, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 754, 203, 0, 755, 756, 204, 0, 0, 205, 757, 206, 758, 0, 207, 759, 760, 0, 208, 209, 210, 761, 762, 763, 0, 0, 0, 0, 764, 213, 765, 0, 0, 766, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 767, 0, 241, 242, 243, 244, 245, 768, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 771, 256, 0, 257, 0, 258, 0, 259, 0, 260, 772, 262, 773, 0, 264, 0, 265, 0, 774, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 776, 272, 273, 274, 777, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 778, 279, 280, 281, 1990, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 780, 292, 293, 0, 0, 0, 0, 0, 781, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 783, 322, 323, 324, 325, 784, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 785, 333, 0, 0, 786, 335, 787, 336, 0, 337, 788, 789, 790, 791, 792, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 794, 0, 796, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 800, 372, 373, 374, 375, 801, 802, 378, 803, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 804, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 805, 806, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 807, 0, 808, 423, 424, 425, 426, 427, 428, 809, 810, 431, 432, 433, 434, 0, 811, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 812, 813, 466, 467, 0, 0, 468, 469, 814, 471, 472, 473, 815, 816, 474, 475, 476, 477, 817, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 819, 820, 821, 822, 0, 0, 0, 0, 0, 490, 491, 0, 823, 824, 825, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 828, 506, 0, 0, 829, 830, 831, 507, 832, 508, 0, 0, 509, 833, 0, 834, 510, 0, 511, 512, 835, 836, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 837, 0, 838, 839, 0, 0, 840, 841, 0, 0, 0, 0, 843, 844, 0, 0, 845, 846, 0, 0, 847, 848, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 744, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 2032, 0, 0, 0, 0, 212, 213, 765, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 769, 246, 247, 0, 248, 249, 250, 251, 252, 770, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 775, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 782, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 793, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 797, 798, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 818, 484, 485, 0, 2033, 487, 488, 2034, 0, 0, 0, 0, 0, 490, 491, 0, 0, 824, 492, 493, 494, 495, 826, 496, 497, 827, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 847, 848, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 2314, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 537, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 1743, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 1744, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 3446, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 2387, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, -517, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 540, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 2394, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 2314, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 537, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 1743, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 1744, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 540, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 2394, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 2125, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 1581, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 1582, 152, 153, 0, 1583, 0, 154, 0, 578, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 1581, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 1582, 152, 153, 0, 1583, 0, 154, 0, 578, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 1581, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 1582, 152, 153, 0, 0, 0, 154, 0, 578, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 2715, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 3208, 0, 0, 154, 0, 0, 155, 848, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 145, 146, 4663, 147, 148, 149, 150, 151, 4664, 848, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 1214, 152, 153, 0, 0, 0, 154, 0, 848, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 2393, 152, 153, 0, 0, 0, 154, 0, 2394, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 0, 0, 0, 0, 3176, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 578, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 4664, 848, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 578, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 678, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 679, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 680, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 578, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 848, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 2394, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 1465, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 1466, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 1467, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 621, 622, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 623, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 624, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 625, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 626, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 627, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 628, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 629, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 630, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 974, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 1278, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 621, 622, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 623, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 624, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 625, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 626, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 628, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 630, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 1467, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 1368, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 1369, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 1369, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 3408, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 3412, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, -403, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 4211, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 4212, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 0, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 4213, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 4214, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 4215, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 4216, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, -358, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 4217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, -358, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 4218, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 503, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, -358, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 4656, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 0, 0, 145, 146, 1826, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 0, 0, 145, 146, 2008, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 0, 0, 145, 146, 3162, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 0, 522, 0, 0, 0, 0, 0, 145, 146, 3862, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 2249, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 2250, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 2251, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 2252, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 1131, 1132, 0, 354, 355, 0, 0, 2253, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 4643, 610, 4644, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 2254, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 1283, 1284, 154, 1285, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 1286, 0, 0, 1287, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 1288, 0, 522, 145, 146, 0, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 958, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 959, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 960, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 961, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 976, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 977, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 2117, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 2118, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 799, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 2119, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 958, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 959, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 665, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 667, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 665, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 1531, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 1042, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 1043, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 1044, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 2132, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 958, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 666, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 4578, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 4579, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 610, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 735, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 623, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 982, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 142, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 623, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 2405, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 2865, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 2873, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 2902, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 2966, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 145, 146, 522, 147, 148, 149, 150, 151, 0, 0, 152, 153, 0, 0, 0, 154, 0, 0, 155, 0, 156, 157, 158, 159, 160, 161, 0, 162, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 169, 170, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 176, 0, 177, 0, 178, 179, 180, 181, 182, 183, 0, 184, 185, 0, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 202, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 213, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 223, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 228, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 240, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 2065, 252, 0, 0, 253, 254, 0, 0, 0, 255, 256, 0, 257, 0, 258, 0, 259, 0, 260, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 266, 267, 0, 268, 0, 0, 269, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 281, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 289, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 2066, 352, 353, 0, 0, 0, 354, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 361, 0, 0, 362, 0, 0, 0, 0, 0, 0, 0, 0, 0, 363, 364, 365, 0, 366, 367, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 378, 0, 379, 0, 380, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 404, 0, 405, 406, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 416, 0, 417, 418, 0, 419, 420, 421, 0, 422, 0, 0, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 0, 435, 436, 0, 0, 0, 437, 438, 439, 440, 0, 0, 0, 441, 0, 0, 0, 442, 0, 443, 444, 445, 446, 0, 447, 448, 449, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 461, 462, 463, 464, 465, 0, 0, 466, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 492, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 500, 501, 0, 0, 502, 0, 0, 503, 0, 504, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 517, 0, 518, 519, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, -403, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 4211, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 4212, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, -373, -373, 227, 0, -373, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 4213, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 4214, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 4215, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 4216, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, -358, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 4217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, -358, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 4218, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 503, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, -358, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, -403, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 4211, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 4212, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, -394, 0, 227, 0, -394, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 4213, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 4214, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 4215, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 4216, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, -358, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 4217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, -358, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 4218, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 503, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, -394, 0, -358, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, -403, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 4211, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 4212, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, -391, 0, 227, 0, -391, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 4213, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 4214, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 4215, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 4216, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, -358, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 4217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, -358, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 4218, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 503, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, -391, 0, -358, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, -403, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 4211, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 4212, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 4493, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 4213, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 4214, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 4215, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 4216, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, -358, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 4217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, -358, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 4218, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 503, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, -358, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, -403, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 4211, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 4212, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, -396, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 4213, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 4214, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 4215, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 4216, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, -358, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 4217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, -358, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 4218, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 503, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, -358, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, -403, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 4211, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 4212, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 4583, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 4213, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 4214, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 4215, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 4216, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, -358, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 4217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, -358, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 4218, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 503, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, -358, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, -403, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 4211, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 4212, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 4616, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 4213, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 4214, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 4215, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 4216, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, -358, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 4217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, -358, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 4218, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 503, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, -358, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, -403, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 4211, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 4212, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, -377, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 4213, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 4214, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 4215, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 4216, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, -358, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 4217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, -358, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 4218, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 503, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, -358, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, -403, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 4211, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 4212, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 0, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 4213, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 4214, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 4215, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 4216, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, -358, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 4217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, -358, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 4218, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 503, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, -358, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, -403, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 4211, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 4212, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 0, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 4213, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 4214, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 4215, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 4216, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, -358, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 4217, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, -358, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 4218, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 4496, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, -358, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 0, 146, 522, 147, 148, 149, 150, 151, 0, 0, 0, 153, 0, 0, 0, 154, 0, 0, 0, 0, 156, 157, 158, 159, 160, 0, 0, 0, 0, 0, 0, 163, 0, 0, 0, 164, 0, 0, 165, 166, 167, 0, 168, 0, 0, 0, 0, 0, 171, 0, 0, 172, 173, 0, 174, 175, 0, 0, 0, 0, 178, 179, 180, 0, 182, 183, 0, 184, 185, 0, 186, 187, 0, 189, 0, 191, 192, 193, 194, 195, 196, 0, 197, 198, 0, 199, 200, 201, 0, 203, 0, 0, 0, 204, 0, 0, 205, 0, 206, 0, 0, 207, 0, 0, 0, 208, 209, 210, 0, 0, 211, 0, 0, 0, 0, 212, 0, 0, 0, 0, 0, 214, 215, 0, 216, 0, 0, 0, 217, 0, 218, 219, 220, 221, 222, 0, 0, 0, 0, 0, 0, 224, 225, 226, 0, 0, 0, 227, 0, 0, 229, 0, 230, 231, 232, 0, 0, 233, 234, 0, 235, 236, 237, 238, 239, 0, 0, 0, 241, 242, 243, 244, 245, 0, 0, 246, 247, 0, 248, 249, 250, 251, 252, 0, 0, 0, 0, 0, 0, 0, 0, 256, 0, 257, 0, 258, 0, 259, 0, 0, 261, 262, 263, 0, 264, 0, 265, 0, 0, 0, 0, 267, 0, 0, 0, 0, 0, 270, 0, 0, 0, 271, 272, 273, 274, 0, 0, 275, 276, 277, 0, 0, 278, 0, 0, 0, 0, 279, 280, 0, 0, 0, 0, 282, 0, 0, 0, 283, 284, 0, 285, 286, 0, 0, 0, 0, 287, 0, 288, 0, 0, 0, 290, 0, 0, 291, 0, 0, 292, 293, 0, 0, 0, 0, 0, 294, 295, 0, 296, 0, 297, 0, 298, 299, 0, 0, 0, 0, 0, 0, 0, 300, 0, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 0, 319, 320, 321, 0, 322, 323, 324, 325, 0, 326, 327, 0, 0, 0, 0, 328, 329, 330, 331, 332, 333, 0, 0, 334, 335, 0, 336, 0, 337, 0, 338, 339, 340, 341, 342, 343, 344, 345, 346, 0, 0, 347, 348, 0, 0, 349, 350, 351, 352, 353, 0, 0, 0, 0, 355, 0, 0, 0, 356, 0, 357, 358, 0, 359, 360, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 364, 365, 0, 0, 0, 368, 0, 369, 370, 371, 372, 373, 374, 375, 376, 377, 0, 0, 0, 0, 0, 381, 382, 0, 383, 0, 384, 385, 386, 387, 388, 0, 389, 390, 391, 0, 0, 392, 0, 0, 0, 393, 394, 395, 396, 397, 0, 0, 398, 399, 400, 401, 402, 0, 403, 0, 0, 405, 0, 407, 0, 0, 408, 409, 410, 411, 412, 413, 414, 415, 0, 0, 0, 417, 0, 0, 419, 420, 421, 0, 422, 0, 0, 0, 424, 425, 426, 427, 428, 429, 430, 431, 0, 433, 434, 0, 435, 0, 0, 0, 0, 437, 438, 439, 0, 0, 0, 0, 441, 0, 0, 0, 0, 0, 0, 444, 0, 446, 0, 447, 0, 0, 450, 451, 0, 0, 0, 0, 0, 452, 453, 454, 0, 455, 456, 0, 457, 0, 0, 458, 0, 459, 0, 460, 0, 462, 463, 464, 465, 0, 0, 0, 467, 0, 0, 468, 469, 470, 471, 472, 473, 0, 0, 474, 475, 476, 477, 0, 478, 479, 0, 0, 480, 481, 482, 483, 0, 0, 484, 485, 0, 486, 487, 488, 489, 0, 0, 0, 0, 0, 490, 491, 0, 0, 0, 0, 493, 494, 495, 0, 496, 497, 0, 498, 499, 0, 0, 0, 0, 0, 502, 0, 0, 503, 0, 0, 0, 505, 506, 0, 0, 0, 0, 0, 507, 0, 508, 0, 0, 509, 0, 0, 0, 510, 0, 511, 512, 513, 514, 0, 0, 0, 0, 0, 0, 515, 516, 0, 0, 518, 0, 520, 521, 0, 0, 522 }; static const yytype_int16 yycheck[] = { 6, 626, 627, 618, 45, 716, 637, 1081, 20, 658, 1082, 636, 619, 19, 1056, 1263, 996, 23, 30, 1436, 1103, 952, 1139, 6, 783, 37, 1474, 33, 994, 1560, 687, 1473, 1103, 1368, 40, 1211, 1368, 43, 1018, 45, 1747, 130, 48, 1302, 2630, 1263, 1164, 1165, 2486, 55, 2435, 2831, 2716, 1019, 2720, 1658, 2085, 1806, 1666, 1184, 1185, 2505, 2719, 2843, 2844, 41, 3260, 2511, 1086, 75, 1416, 2477, 2741, 2210, 743, 712, 713, 1685, 1201, 2910, 1086, 1821, 1233, 1423, 1824, 1666, 1506, 1543, 1213, 1466, 2036, 2103, 3045, 4, 100, 1703, 1581, 2136, 2137, 544, 1225, 1226, 1227, 1634, 1668, 1561, 2311, 1232, 1672, 2311, 2345, 2351, 2467, 1569, 1570, 2319, 23, 2467, 124, 2202, 126, 1685, 675, 129, 130, 131, 132, 2719, 1658, 634, 3421, 1649, 1662, 1697, 1664, 3608, 1730, 2775, 1038, 2203, 2742, 2743, 1341, 126, 855, 1658, 129, 2211, 3312, 1662, 1827, 1664, 1303, 1304, 1169, 9, 1307, 1308, 1309, 1310, 21, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, 3395, 73, 840, 841, 1590, 843, 29, 1177, 1178, 1179, 35, 18, 19, 36, 3221, 23, 22, 19, 856, 1189, 2596, 21, 48, 11, 100, 2456, 3661, 35, 137, 26, 77, 1803, 23, 18, 19, 3355, 18, 19, 3358, 150, 2322, 49, 31, 62, 35, 176, 150, 2847, 59, 1219, 77, 2285, 1222, 61, 62, 3186, 132, 3377, 49, 3008, 3009, 130, 78, 150, 3384, 21, 2264, 2328, 2861, 130, 61, 62, 1242, 1243, 1774, 2303, 1246, 47, 1020, 12, 52, 103, 194, 52, 57, 26, 163, 125, 5, 3017, 916, 18, 19, 2467, 1264, 1265, 2467, 2358, 2359, 1269, 1270, 111, 200, 23, 1803, 125, 160, 18, 19, 68, 21, 37, 65, 71, 3047, 294, 730, 140, 156, 2209, 71, 1803, 18, 19, 328, 131, 156, 18, 19, 3208, 160, 18, 19, 18, 19, 198, 156, 293, 374, 356, 966, 61, 62, 12, 3723, 2843, 2844, 2958, 109, 3469, 403, 19, 18, 19, 545, 44, 18, 19, 125, 2068, 160, 258, 379, 18, 19, 176, 64, 22, 212, 180, 3743, 35, 241, 3746, 434, 371, 37, 139, 191, 167, 9, 975, 231, 194, 77, 2600, 125, 405, 255, 156, 494, 985, 70, 13, 127, 18, 19, 65, 197, 494, 510, 18, 19, 13, 160, 77, 405, 165, 283, 494, 204, 375, 200, 277, 258, 197, 263, 158, 160, 573, 18, 19, 13, 194, 3145, 235, 194, 1670, 1671, 216, 1673, 544, 549, 1676, 1677, 1678, 1679, 264, 156, 1682, 237, 434, 448, 70, 1687, 638, 216, 573, 21, 1692, 1693, 1694, 1695, 1696, 1629, 434, 4484, 1700, 1701, 65, 593, 35, 455, 1706, 1707, 1708, 1709, 81, 1711, 1712, 573, 1714, 1200, 666, 156, 48, 131, 264, 197, 235, 9, 539, 67, 616, 18, 19, 1214, 197, 62, 22, 18, 19, 1476, 219, 294, 193, 237, 372, 608, 430, 456, 4529, 31, 256, 497, 1111, 245, 194, 264, 3769, 3008, 3009, 625, 630, 1626, 286, 1628, 671, 18, 19, 140, 332, 486, 421, 582, 389, 3247, 324, 2028, 535, 140, 197, 865, 112, 3208, 3142, 115, 728, 401, 665, 367, 368, 652, 18, 19, 389, 373, 156, 73, 140, 1591, 3184, 548, 18, 19, 573, 21, 186, 219, 277, 664, 2776, 4147, 274, 539, 364, 541, 434, 626, 664, 263, 333, 630, 631, 573, 472, 18, 19, 638, 664, 555, 388, 557, 324, 391, 192, 561, 3707, 256, 3962, 565, 263, 419, 3650, 927, 277, 3716, 370, 131, 616, 2100, 414, 1537, 578, 3983, 1540, 388, 582, 457, 391, 1545, 664, 587, 366, 3621, 3622, 3623, 286, 1298, 430, 3740, 64, 231, 362, 231, 3745, 601, 637, 160, 665, 371, 689, 390, 421, 434, 631, 276, 18, 19, 390, 1368, 160, 276, 18, 19, 18, 19, 160, 511, 503, 256, 626, 1601, 317, 3585, 630, 631, 602, 391, 634, 664, 388, 1649, 144, 391, 644, 4251, 356, 1306, 567, 476, 646, 3047, 2847, 1649, 434, 2847, 388, 204, 2785, 391, 637, 3431, 3432, 2070, 1323, 176, 2860, 405, 664, 2863, 2864, 388, 3017, 3294, 391, 2757, 388, 3017, 471, 391, 388, 471, 388, 391, 3433, 391, 4149, 3301, 3320, 18, 19, 687, 2285, 689, 537, 691, 487, 512, 1345, 3453, 419, 388, 3886, 635, 391, 388, 702, 1142, 391, 3609, 635, 707, 388, 709, 666, 391, 712, 713, 2311, 1346, 610, 717, 718, 2321, 2322, 534, 570, 635, 610, 702, 4011, 4012, 1847, 666, 632, 701, 732, 733, 734, 735, 503, 2187, 2326, 3140, 388, 4201, 2330, 391, 18, 19, 388, 2015, 596, 391, 2484, 2858, 722, 605, 3010, 596, 604, 584, 536, 2347, 2348, 2285, 18, 19, 847, 388, 638, 664, 391, 602, 584, 1890, 2360, 2832, 2103, 588, 554, 2103, 2285, 2303, 624, 2369, 548, 783, 18, 19, 602, 638, 1419, 2812, 1802, 2393, 2845, 727, 627, 4015, 2303, 3448, 881, 647, 1567, 3233, 1802, 584, 1435, 2393, 707, 670, 18, 19, 1819, 712, 713, 648, 664, 670, 2487, 649, 3017, 644, 2013, 3017, 573, 457, 576, 670, 657, 3259, 3491, 388, 666, 664, 391, 1952, 735, 388, 1831, 669, 391, 649, 1985, 544, 649, 629, 666, 638, 846, 847, 848, 1512, 489, 1996, 852, 936, 1999, 2878, 3888, 602, 665, 2456, 4018, 554, 1979, 388, 3460, 631, 391, 645, 1487, 666, 2467, 2786, 2787, 423, 2214, 875, 876, 877, 670, 879, 880, 881, 605, 883, 4351, 18, 19, 573, 388, 889, 1541, 391, 544, 636, 1788, 895, 593, 649, 388, 876, 616, 391, 512, 880, 904, 672, 883, 1902, 3431, 3432, 3609, 1906, 995, 649, 884, 430, 916, 917, 476, 616, 920, 388, 666, 554, 391, 18, 19, 670, 649, 636, 666, 666, 2456, 649, 1929, 2080, 936, 649, 2450, 649, 18, 19, 222, 2467, 665, 666, 503, 852, 33, 2456, 666, 986, 952, 665, 3605, 665, 666, 957, 649, 503, 2467, 512, 649, 670, 4249, 503, 966, 1325, 1326, 649, 2212, 636, 3604, 577, 442, 666, 580, 636, 2679, 666, 1063, 981, 388, 615, 3007, 391, 986, 4454, 388, 87, 388, 391, 4602, 391, 4252, 995, 502, 1080, 2266, 2267, 279, 649, 1501, 904, 3075, 910, 4088, 649, 4090, 80, 1509, 82, 18, 19, 564, 2283, 917, 665, 666, 920, 235, 382, 160, 665, 3610, 176, 649, 200, 2228, 2229, 2230, 2231, 2300, 2301, 2768, 586, 670, 587, 1038, 286, 888, 1041, 665, 666, 158, 3726, 277, 379, 18, 19, 13, 179, 642, 3453, 125, 388, 194, 2791, 391, 378, 4205, 2198, 4207, 1063, 725, 726, 1066, 3144, 2635, 52, 13, 2339, 21, 216, 405, 4204, 3310, 148, 408, 4026, 1080, 128, 1082, 1522, 3433, 1632, 2354, 389, 3671, 3433, 649, 18, 19, 123, 2294, 3294, 649, 3326, 3294, 614, 3298, 3926, 18, 19, 381, 616, 665, 666, 664, 18, 19, 1111, 665, 666, 388, 672, 187, 391, 573, 3250, 2362, 264, 370, 3254, 649, 474, 239, 288, 672, 2329, 85, 2331, 388, 488, 672, 391, 249, 1038, 26, 1139, 2340, 666, 494, 1143, 1144, 1145, 125, 1900, 141, 649, 2362, 666, 125, 1153, 388, 666, 2356, 391, 389, 649, 139, 158, 1162, 2363, 249, 665, 2202, 1144, 1145, 1169, 1170, 1171, 18, 19, 2374, 2375, 2376, 140, 388, 3202, 2380, 391, 649, 2451, 2452, 2453, 2454, 18, 19, 494, 351, 276, 3250, 18, 19, 209, 3254, 140, 665, 666, 1200, 449, 3235, 624, 483, 381, 627, 122, 2182, 664, 1111, 18, 19, 3219, 1214, 2175, 2416, 247, 2418, 2419, 18, 19, 2422, 2423, 258, 278, 2186, 466, 281, 2189, 2190, 3171, 2432, 2433, 3433, 2832, 2715, 3433, 272, 1322, 237, 53, 573, 649, 13, 373, 4504, 294, 421, 649, 2847, 649, 64, 718, 203, 388, 2858, 371, 391, 665, 666, 1162, 3700, 1263, 544, 665, 666, 567, 666, 283, 3341, 18, 19, 188, 2199, 18, 19, 18, 19, 430, 2417, 394, 1282, 2420, 2421, 1285, 1369, 2424, 2425, 2426, 2427, 2428, 2429, 2430, 2431, 388, 3977, 2434, 391, 2887, 18, 19, 3373, 3374, 18, 19, 2742, 2743, 2832, 2680, 388, 672, 664, 391, 2391, 2392, 649, 18, 19, 2769, 122, 2845, 1322, 672, 2891, 2832, 2391, 2392, 1328, 18, 19, 429, 1332, 666, 666, 1998, 2938, 2939, 2845, 294, 2754, 18, 19, 1426, 153, 1345, 1346, 666, 26, 237, 2103, 4480, 4481, 346, 333, 164, 3939, 2610, 443, 664, 607, 18, 19, 2938, 666, 503, 2700, 644, 1368, 1369, 441, 140, 4197, 604, 371, 649, 291, 4028, 431, 4042, 1285, 2939, 388, 544, 1467, 391, 188, 370, 2019, 2589, 158, 2536, 666, 649, 567, 18, 19, 18, 19, 3799, 373, 1484, 402, 2054, 3138, 1405, 436, 1407, 439, 1409, 666, 1411, 2531, 3010, 879, 649, 18, 19, 388, 1419, 3017, 391, 4215, 4216, 18, 19, 1426, 666, 317, 18, 19, 1332, 666, 317, 548, 1435, 324, 2777, 2450, 649, 2559, 3043, 2093, 2094, 478, 1346, 2616, 2617, 402, 1110, 2450, 220, 18, 19, 2105, 3043, 666, 18, 19, 374, 1460, 388, 590, 614, 391, 294, 122, 1467, 644, 237, 42, 283, 388, 1473, 2716, 391, 1476, 2719, 606, 388, 13, 25, 391, 128, 1484, 499, 3010, 3188, 471, 291, 664, 4679, 2609, 3017, 18, 19, 18, 19, 672, 1160, 4151, 1501, 2619, 3010, 3527, 1410, 179, 2719, 1409, 1509, 3017, 4169, 2163, 3644, 3645, 334, 649, 631, 1419, 502, 74, 551, 3960, 1523, 1524, 1525, 1526, 1527, 2147, 1529, 408, 1614, 32, 666, 1435, 494, 21, 127, 1538, 1539, 429, 1541, 388, 0, 1544, 391, 1523, 1524, 1525, 237, 1527, 548, 665, 402, 3933, 3934, 649, 388, 1528, 237, 391, 156, 1539, 388, 1564, 565, 391, 1544, 599, 141, 186, 649, 374, 666, 458, 220, 18, 19, 387, 79, 368, 388, 1582, 1583, 391, 18, 19, 4247, 666, 239, 388, 197, 231, 391, 22, 573, 2796, 2592, 4258, 249, 18, 19, 451, 371, 18, 19, 4153, 140, 18, 19, 416, 565, 249, 1518, 1614, 100, 141, 26, 1653, 4393, 4394, 18, 19, 512, 168, 1526, 4058, 609, 1529, 417, 18, 19, 18, 19, 631, 291, 273, 3660, 481, 193, 246, 388, 4189, 649, 391, 388, 324, 388, 391, 294, 391, 267, 18, 19, 154, 294, 194, 100, 248, 197, 666, 3263, 3264, 1564, 18, 19, 659, 660, 661, 662, 388, 156, 235, 391, 388, 160, 160, 391, 2342, 649, 595, 235, 160, 371, 494, 2734, 664, 388, 2352, 541, 391, 167, 502, 371, 367, 368, 666, 3294, 2672, 388, 373, 264, 391, 131, 212, 664, 4499, 4500, 604, 194, 264, 388, 4463, 565, 391, 4466, 494, 2381, 374, 77, 3308, 1626, 649, 1628, 200, 1630, 1631, 212, 1633, 3331, 1730, 388, 217, 649, 391, 573, 636, 3325, 1738, 666, 649, 1741, 1742, 3331, 394, 7, 3014, 3015, 286, 158, 666, 127, 571, 238, 370, 638, 1661, 666, 641, 528, 529, 246, 531, 572, 533, 388, 666, 388, 391, 665, 391, 2820, 2972, 258, 18, 19, 18, 19, 597, 197, 548, 550, 230, 389, 301, 302, 388, 272, 1788, 391, 125, 430, 277, 595, 388, 238, 58, 391, 197, 388, 158, 286, 391, 649, 4555, 18, 19, 1807, 1808, 18, 19, 621, 622, 148, 167, 258, 757, 758, 649, 1819, 666, 346, 388, 1823, 649, 391, 664, 388, 237, 272, 391, 1808, 18, 19, 2883, 666, 3433, 1738, 137, 402, 665, 1742, 649, 621, 622, 18, 19, 18, 19, 122, 249, 649, 187, 152, 664, 18, 19, 18, 19, 666, 548, 367, 368, 631, 388, 419, 388, 391, 666, 391, 548, 356, 248, 77, 259, 260, 1959, 1097, 1098, 237, 639, 640, 144, 18, 19, 2486, 664, 1788, 829, 3590, 3219, 538, 86, 3219, 379, 3533, 108, 4477, 666, 3537, 1900, 1901, 649, 3156, 389, 235, 649, 666, 649, 3433, 2657, 105, 2659, 356, 13, 324, 416, 590, 1138, 666, 127, 18, 19, 666, 665, 572, 3433, 18, 19, 446, 447, 649, 672, 606, 264, 649, 421, 2020, 438, 595, 18, 19, 3184, 631, 43, 421, 388, 665, 649, 391, 2613, 665, 584, 631, 158, 388, 616, 185, 391, 1959, 649, 1961, 371, 19, 665, 616, 564, 18, 19, 567, 388, 19, 649, 391, 388, 40, 665, 391, 388, 479, 2631, 391, 664, 48, 2731, 2732, 2733, 576, 665, 658, 672, 388, 649, 478, 391, 94, 665, 665, 666, 98, 388, 616, 388, 391, 2004, 391, 666, 365, 665, 221, 2010, 230, 672, 371, 567, 666, 3258, 502, 291, 2019, 2020, 672, 388, 212, 3460, 391, 649, 227, 649, 229, 2113, 2031, 3151, 237, 388, 478, 2036, 391, 26, 570, 540, 2041, 665, 235, 665, 18, 19, 649, 235, 564, 665, 666, 567, 235, 2054, 649, 61, 62, 534, 212, 649, 665, 666, 665, 3175, 550, 71, 135, 18, 19, 382, 665, 122, 2073, 18, 19, 2111, 2077, 18, 19, 3322, 2055, 440, 649, 2058, 141, 231, 2061, 649, 77, 23, 18, 19, 2093, 2094, 2095, 2096, 246, 613, 2004, 48, 374, 35, 2103, 665, 2105, 368, 550, 3144, 197, 3322, 2720, 588, 2113, 3639, 2150, 49, 622, 2019, 604, 3863, 3864, 3865, 18, 19, 649, 19, 649, 61, 62, 2031, 616, 657, 658, 659, 660, 661, 662, 188, 548, 246, 665, 502, 665, 388, 658, 388, 391, 604, 391, 2150, 636, 665, 638, 253, 502, 74, 2157, 4371, 666, 4373, 365, 4375, 2163, 18, 19, 96, 371, 672, 219, 158, 433, 2073, 435, 2793, 388, 2077, 672, 391, 388, 665, 666, 391, 395, 669, 670, 2091, 670, 2188, 177, 548, 3303, 3304, 405, 2095, 2096, 184, 665, 666, 2199, 412, 494, 388, 2203, 2868, 391, 665, 649, 228, 502, 2210, 2211, 2212, 2213, 3139, 388, 649, 388, 391, 664, 391, 671, 631, 665, 664, 388, 669, 388, 391, 228, 391, 649, 665, 613, 333, 649, 440, 18, 19, 649, 160, 291, 600, 2907, 665, 666, 672, 2152, 141, 237, 2914, 665, 649, 388, 2918, 665, 391, 666, 12, 611, 4283, 649, 385, 649, 171, 3239, 534, 2350, 665, 3243, 197, 3068, 664, 631, 193, 193, 3073, 665, 7, 665, 457, 3206, 59, 649, 12, 3245, 2191, 2188, 665, 666, 346, 388, 3462, 2198, 391, 649, 664, 388, 397, 665, 391, 2965, 3343, 2338, 516, 3346, 3347, 672, 666, 2315, 388, 665, 573, 391, 2314, 3485, 3486, 235, 664, 2319, 664, 2327, 595, 3364, 374, 2325, 2326, 2333, 621, 622, 2330, 664, 2332, 665, 666, 77, 324, 388, 3538, 3509, 391, 3670, 2342, 197, 548, 2345, 264, 2347, 2348, 664, 2350, 2351, 2352, 664, 108, 2361, 2261, 2357, 664, 2365, 2360, 664, 2362, 664, 2269, 2371, 2372, 664, 3610, 2369, 2370, 664, 4395, 127, 2279, 2280, 664, 365, 3497, 2379, 664, 2381, 2465, 371, 664, 2290, 2291, 2292, 2293, 664, 2295, 2296, 122, 2393, 2394, 664, 600, 3726, 3610, 176, 664, 613, 672, 180, 664, 649, 26, 649, 321, 322, 664, 2411, 664, 326, 327, 388, 108, 194, 391, 664, 519, 665, 2505, 665, 21, 664, 3492, 631, 2511, 2334, 2335, 2336, 2337, 3552, 652, 653, 649, 655, 388, 657, 649, 391, 665, 666, 388, 666, 200, 391, 388, 505, 506, 391, 665, 346, 61, 62, 665, 77, 188, 2364, 50, 388, 561, 649, 391, 2465, 3219, 665, 666, 2370, 3581, 3582, 3583, 523, 664, 167, 649, 210, 649, 665, 3557, 2481, 2482, 2483, 402, 2485, 649, 379, 649, 243, 482, 3556, 665, 388, 665, 237, 391, 227, 664, 229, 664, 419, 665, 100, 665, 2505, 664, 796, 200, 665, 666, 2511, 2417, 664, 649, 2420, 2421, 665, 666, 2424, 2425, 2426, 2427, 2428, 2429, 2430, 2431, 664, 817, 2434, 665, 664, 33, 287, 388, 664, 665, 391, 158, 664, 3337, 830, 831, 665, 666, 595, 664, 2630, 665, 666, 665, 666, 649, 3204, 664, 332, 664, 177, 649, 156, 548, 291, 664, 160, 184, 665, 666, 3767, 665, 664, 3221, 649, 3608, 565, 665, 3372, 616, 120, 570, 664, 2481, 2482, 2483, 3380, 3754, 665, 666, 665, 321, 322, 664, 3388, 664, 326, 327, 192, 517, 194, 649, 655, 656, 657, 658, 659, 660, 661, 662, 664, 35, 672, 665, 666, 505, 506, 665, 212, 665, 237, 4154, 4155, 217, 613, 26, 365, 665, 666, 2626, 665, 666, 371, 2630, 2631, 3233, 664, 231, 62, 130, 629, 665, 666, 141, 238, 130, 631, 374, 664, 122, 665, 666, 246, 2650, 2734, 122, 430, 664, 125, 2656, 2657, 3259, 2659, 664, 258, 3636, 4199, 4200, 665, 666, 421, 664, 602, 665, 666, 37, 77, 2674, 272, 649, 664, 666, 664, 277, 141, 664, 226, 100, 112, 2686, 664, 115, 286, 623, 624, 665, 665, 666, 664, 123, 664, 440, 649, 194, 665, 666, 664, 324, 649, 194, 664, 77, 649, 665, 666, 188, 665, 666, 665, 2716, 664, 188, 2719, 37, 665, 649, 664, 93, 665, 4262, 130, 664, 421, 4266, 2731, 2732, 2733, 2734, 664, 2819, 2820, 4180, 665, 666, 664, 2742, 2743, 288, 365, 500, 241, 249, 219, 115, 371, 664, 241, 649, 2656, 2657, 122, 2659, 356, 665, 666, 655, 656, 657, 658, 659, 660, 661, 662, 665, 665, 666, 177, 664, 276, 665, 666, 18, 19, 184, 664, 379, 3694, 3695, 2785, 665, 666, 664, 249, 664, 194, 389, 336, 664, 649, 664, 340, 115, 664, 2883, 665, 666, 3714, 347, 122, 548, 665, 666, 664, 3721, 565, 664, 567, 179, 291, 664, 13, 77, 2819, 2820, 291, 238, 188, 421, 664, 3892, 3893, 664, 3895, 2731, 2732, 2733, 237, 261, 664, 3747, 664, 241, 3750, 665, 666, 258, 665, 666, 346, 665, 666, 665, 666, 108, 122, 111, 50, 219, 666, 272, 4057, 600, 613, 2860, 488, 179, 2863, 2864, 595, 367, 368, 2868, 48, 4281, 188, 665, 666, 197, 567, 116, 117, 118, 119, 120, 478, 277, 2883, 71, 428, 346, 2887, 3954, 631, 274, 122, 665, 666, 2799, 2800, 588, 266, 374, 158, 3966, 666, 219, 666, 374, 502, 166, 2907, 664, 64, 2815, 194, 665, 666, 2914, 665, 666, 188, 2918, 74, 324, 613, 544, 4191, 4069, 564, 291, 4169, 548, 665, 666, 358, 150, 151, 89, 4377, 166, 629, 665, 666, 356, 199, 443, 544, 140, 665, 666, 288, 219, 492, 157, 2951, 666, 550, 2954, 665, 666, 188, 88, 2959, 666, 365, 194, 457, 666, 2965, 380, 371, 560, 457, 3621, 3622, 3623, 647, 291, 344, 235, 235, 665, 2884, 665, 666, 156, 223, 224, 225, 226, 665, 219, 665, 666, 2896, 357, 665, 2994, 665, 666, 2997, 2391, 2392, 494, 370, 1250, 1251, 505, 506, 494, 604, 373, 374, 48, 631, 638, 4079, 160, 4081, 4082, 518, 615, 616, 291, 160, 4290, 160, 220, 4293, 4294, 4295, 4296, 287, 666, 3031, 4393, 4394, 4064, 4065, 160, 27, 193, 636, 357, 638, 3042, 3043, 199, 505, 506, 160, 122, 160, 160, 125, 369, 2954, 457, 405, 373, 374, 125, 111, 291, 317, 478, 432, 323, 7, 664, 122, 665, 666, 125, 110, 669, 670, 4274, 4275, 4276, 4277, 4, 629, 235, 71, 341, 510, 493, 75, 122, 77, 249, 125, 633, 494, 666, 57, 449, 3000, 336, 111, 338, 339, 340, 3006, 171, 374, 200, 402, 365, 347, 651, 264, 4310, 71, 13, 4149, 188, 635, 610, 665, 140, 595, 10, 666, 610, 4391, 4392, 595, 672, 665, 665, 100, 665, 503, 4400, 188, 550, 125, 21, 301, 302, 3139, 4206, 3042, 27, 374, 548, 219, 3146, 672, 388, 664, 276, 391, 188, 580, 655, 656, 657, 658, 659, 660, 661, 662, 672, 666, 219, 534, 158, 671, 64, 288, 664, 3171, 3805, 3806, 3807, 3175, 664, 50, 74, 288, 288, 608, 288, 219, 3184, 288, 71, 3187, 428, 4163, 75, 288, 77, 89, 666, 655, 656, 657, 658, 659, 660, 661, 662, 3203, 3204, 666, 3206, 610, 573, 160, 420, 386, 577, 482, 100, 580, 564, 291, 666, 3219, 379, 3221, 379, 283, 666, 590, 403, 631, 666, 666, 595, 584, 584, 598, 13, 666, 291, 3888, 160, 379, 125, 379, 500, 573, 141, 666, 636, 402, 35, 610, 3250, 491, 492, 249, 3254, 291, 573, 664, 3258, 672, 577, 664, 520, 580, 419, 434, 255, 238, 666, 249, 672, 672, 659, 590, 264, 252, 562, 181, 595, 194, 666, 598, 446, 447, 4343, 60, 3187, 258, 515, 548, 3923, 3924, 657, 658, 502, 3928, 3929, 193, 3298, 666, 374, 272, 406, 199, 160, 194, 565, 565, 3308, 567, 3310, 573, 570, 126, 87, 4351, 573, 136, 203, 374, 573, 573, 3322, 264, 595, 3325, 3326, 74, 3328, 402, 141, 3331, 528, 529, 530, 531, 532, 533, 374, 235, 657, 658, 584, 402, 402, 136, 133, 605, 262, 262, 136, 402, 238, 402, 550, 613, 48, 402, 402, 402, 402, 525, 526, 527, 595, 520, 620, 4512, 264, 404, 3275, 158, 258, 620, 666, 162, 666, 367, 368, 264, 379, 666, 664, 373, 665, 356, 272, 666, 160, 379, 160, 160, 160, 633, 160, 160, 3396, 160, 160, 160, 3400, 160, 160, 160, 3404, 160, 108, 160, 379, 649, 650, 651, 4654, 611, 160, 202, 160, 160, 4454, 3396, 160, 3421, 160, 160, 160, 160, 4668, 3328, 4487, 419, 3430, 4673, 160, 160, 160, 222, 4678, 160, 249, 160, 27, 28, 4654, 160, 3444, 4590, 3446, 666, 643, 346, 605, 664, 615, 664, 379, 379, 4668, 4058, 379, 3459, 3460, 4673, 665, 672, 665, 167, 4678, 197, 658, 604, 356, 665, 665, 665, 61, 62, 63, 665, 573, 665, 665, 665, 367, 368, 71, 666, 666, 665, 373, 665, 77, 664, 664, 379, 379, 665, 83, 84, 200, 665, 87, 288, 662, 665, 558, 559, 560, 478, 498, 563, 564, 664, 666, 567, 568, 569, 4575, 141, 4577, 666, 665, 595, 665, 419, 111, 459, 460, 461, 462, 463, 464, 465, 665, 235, 419, 346, 4595, 3442, 125, 666, 595, 664, 129, 3444, 665, 3446, 666, 4252, 665, 573, 4175, 14, 666, 573, 17, 564, 4622, 664, 548, 595, 236, 13, 14, 664, 666, 4624, 4625, 12, 4636, 32, 556, 158, 666, 36, 666, 212, 504, 3577, 573, 550, 3580, 3581, 3582, 3583, 434, 287, 197, 50, 51, 665, 429, 258, 478, 258, 392, 58, 3596, 384, 4241, 573, 63, 64, 666, 337, 174, 160, 407, 534, 505, 506, 3610, 3611, 354, 498, 534, 605, 79, 3700, 534, 493, 264, 3621, 3622, 3623, 520, 534, 534, 404, 264, 452, 664, 672, 664, 420, 664, 664, 99, 664, 4247, 664, 3723, 287, 429, 474, 3644, 3645, 664, 99, 235, 4258, 3650, 659, 665, 154, 665, 242, 389, 444, 121, 245, 245, 665, 3697, 548, 550, 672, 3666, 130, 131, 132, 672, 3677, 665, 4298, 14, 3675, 263, 665, 130, 160, 143, 144, 469, 665, 665, 3685, 665, 160, 666, 584, 666, 644, 144, 156, 505, 506, 665, 48, 664, 283, 3700, 664, 160, 664, 584, 664, 160, 170, 210, 605, 197, 73, 35, 186, 416, 167, 48, 217, 170, 421, 605, 343, 346, 3723, 664, 374, 513, 190, 201, 665, 258, 183, 258, 160, 379, 111, 323, 111, 565, 264, 264, 214, 584, 666, 141, 208, 664, 210, 565, 666, 638, 3751, 215, 664, 341, 218, 666, 544, 210, 99, 657, 658, 659, 660, 661, 662, 665, 665, 584, 3769, 664, 3771, 3772, 666, 3675, 385, 212, 564, 241, 4484, 567, 244, 379, 235, 379, 517, 3786, 13, 14, 241, 130, 277, 664, 402, 267, 268, 77, 664, 500, 4504, 664, 247, 265, 247, 144, 3805, 3806, 3807, 665, 396, 133, 665, 93, 665, 665, 48, 496, 664, 405, 282, 3725, 56, 295, 286, 4529, 666, 666, 167, 665, 665, 170, 66, 886, 665, 286, 158, 665, 665, 672, 162, 664, 76, 672, 183, 655, 656, 657, 658, 659, 660, 661, 662, 379, 134, 3759, 90, 91, 92, 231, 584, 584, 665, 584, 565, 666, 160, 161, 278, 570, 3774, 210, 106, 402, 99, 666, 3875, 665, 3960, 3783, 202, 386, 505, 506, 666, 672, 197, 588, 197, 3888, 197, 279, 364, 258, 258, 125, 235, 120, 484, 125, 222, 3983, 241, 415, 567, 130, 672, 201, 417, 664, 379, 664, 613, 664, 664, 379, 77, 21, 665, 144, 214, 383, 517, 672, 3923, 3924, 4630, 489, 629, 3928, 3929, 494, 374, 56, 664, 638, 4560, 665, 400, 274, 402, 476, 167, 66, 286, 170, 418, 286, 666, 664, 346, 665, 4656, 76, 416, 541, 542, 543, 183, 664, 254, 3960, 548, 665, 664, 427, 288, 90, 91, 92, 665, 422, 665, 12, 268, 426, 434, 659, 147, 565, 270, 665, 568, 106, 3983, 210, 266, 449, 665, 197, 452, 442, 454, 666, 48, 457, 48, 153, 48, 450, 665, 295, 616, 616, 4003, 467, 468, 458, 194, 664, 235, 664, 4011, 4012, 664, 477, 241, 479, 604, 665, 557, 320, 664, 4022, 664, 35, 488, 35, 627, 627, 664, 610, 494, 656, 657, 658, 659, 660, 661, 662, 502, 125, 264, 494, 203, 507, 508, 509, 264, 373, 35, 374, 81, 590, 143, 666, 507, 508, 4676, 664, 597, 286, 384, 512, 344, 665, 360, 194, 665, 116, 117, 118, 119, 120, 666, 665, 21, 3071, 540, 666, 666, 343, 266, 422, 665, 547, 429, 367, 368, 4088, 370, 4090, 665, 665, 665, 665, 4095, 4096, 420, 665, 665, 335, 4101, 442, 665, 175, 666, 429, 559, 505, 506, 450, 286, 210, 4113, 264, 4132, 246, 352, 458, 664, 672, 444, 48, 48, 48, 421, 246, 664, 591, 664, 664, 664, 664, 379, 622, 369, 588, 15, 21, 474, 603, 149, 374, 666, 607, 343, 469, 610, 173, 665, 386, 432, 615, 638, 494, 610, 664, 567, 610, 621, 612, 16, 246, 48, 48, 664, 374, 507, 508, 4169, 4170, 664, 539, 4173, 664, 223, 224, 225, 226, 485, 555, 638, 665, 646, 666, 665, 665, 665, 664, 442, 513, 665, 155, 665, 635, 32, 422, 665, 4215, 4216, 426, 664, 673, 399, 494, 743, 386, 575, 136, 665, 748, 335, 4212, 136, 158, 664, 442, 4217, 374, 559, 4364, 544, 6, 665, 450, 379, 379, 635, 352, 197, 32, 665, 458, 64, 386, 64, 665, 143, 473, 134, 664, 779, 556, 665, 130, 666, 610, 246, 588, 4249, 154, 670, 386, 534, 386, 490, 635, 795, 655, 656, 657, 658, 659, 660, 661, 662, 664, 154, 494, 4170, 610, 230, 612, 293, 670, 124, 264, 264, 4422, 673, 373, 507, 508, 54, 4367, 4190, 143, 576, 336, 670, 338, 339, 340, 4437, 483, 666, 154, 576, 215, 347, 670, 228, 840, 841, 665, 843, 844, 666, 666, 4453, 54, 154, 194, 194, 194, 48, 576, 552, 856, 456, 637, 125, 231, 664, 374, 4342, 4343, 196, 502, 666, 2637, 4222, 2445, 559, 569, 4335, 2439, 2441, 3771, 3774, 3335, 3336, 2443, 2436, 3767, 2842, 3778, 4364, 3343, 726, 3784, 3346, 3347, 4141, 4250, 4448, 2809, 4449, 3795, 3786, 4656, 4021, 588, 4620, 48, 638, 490, 4367, 2102, 3364, 2041, 3171, 4132, 4132, 1094, 4132, 4132, 4132, 4132, 4132, 428, 4626, 4132, 3378, 610, 4132, 612, 4387, 4534, 3384, 3385, 3386, 3387, 4537, 4477, 4132, 4396, 4534, 4132, 4415, 4500, 4132, 4132, 4547, 4441, 4422, 4440, 1723, 4552, 1664, 4150, 3198, 3874, 2936, 952, 3596, 4387, 3203, 1136, 4069, 4437, 4461, 1423, 3877, 4590, 4460, 964, 4560, 552, 4520, 4298, 1802, 548, 3799, 3043, 4518, 4453, 3029, 3331, 1719, 2396, 1730, 3308, 491, 492, 569, 3320, 4529, 3355, 3355, 988, 3389, 3734, 4597, 3952, 4599, 2819, 4460, 3125, 4208, 3534, 3537, 3529, 4188, 11, 11, 4199, 4193, 4612, 1815, 4487, 4200, 4262, 2479, 4101, 4266, 3028, 4477, 3966, 2237, 2232, 2392, 4499, 4500, 2468, 4390, 3938, 648, 2392, 2391, 1577, 1573, 643, 3682, 2714, 3309, 4640, 4641, 1798, 2095, 3187, 4645, 3591, 1742, 2679, 940, 1464, 2004, 2598, 2512, 659, 1282, 2624, 953, 2625, 1214, 2213, 1582, 4518, 3655, 4537, 2597, 3266, 4095, 3404, 4096, 1189, 3851, 2620, 3540, 4547, 3322, 3632, 3652, 4272, 4552, 4479, 2113, 4086, 4539, 4086, 735, 1081, 1333, 898, 2673, 4546, 2673, 3617, 3584, 1081, 3258, 1081, 54, 556, 2183, 637, 1532, 4575, 1081, 4577, 1558, 1572, 4468, 4469, 2184, 2030, 3328, 1439, 3594, 3628, 4607, 3899, 4588, 4673, 4678, 3726, 3610, 4595, 1117, 4597, 4664, 4599, 3904, 984, 633, 2150, 1170, 45, 1278, 1509, 45, 982, 1496, 1494, 4612, 4596, 2077, 2106, 930, 1455, 4601, 650, 651, 2063, 1066, 2227, 4624, 4625, 3577, 4278, 616, 932, 545, 3144, 545, 4242, 726, 726, 4244, 4525, -1, 726, 4640, 4641, -1, -1, -1, 4645, -1, 4630, -1, -1, -1, -1, 1173, 1174, -1, -1, -1, -1, -1, -1, -1, 1182, 1183, 1184, 1185, 1186, 1187, 1188, -1, -1, -1, 4654, -1, 4656, 1195, 1196, -1, 1198, 1199, -1, -1, 4664, 1203, 1204, -1, 4668, 1207, 1208, 1209, 1210, 4673, 1212, 1213, -1, -1, 4678, -1, -1, -1, 1220, 1221, -1, 1223, 1224, 1225, 1226, 1227, -1, -1, 1230, 1231, 1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, -1, 1241, -1, -1, 1244, 1245, -1, -1, -1, 1249, -1, -1, -1, 1253, 1254, 1255, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1266, 1267, 1268, -1, 232, -1, -1, -1, -1, -1, -1, 1277, -1, -1, -1, -1, 1282, -1, -1, -1, -1, -1, 1288, -1, 1290, 1291, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1302, 1303, 1304, -1, 1306, 1307, 1308, 1309, 1310, -1, 1312, 1313, 1314, 1315, 1316, 1317, 1318, 1319, -1, -1, 14, 1323, -1, 17, -1, 1327, -1, 27, 28, -1, -1, -1, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 36, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, -1, 318, 319, 50, 51, -1, -1, -1, 61, 62, 63, 58, -1, -1, -1, -1, 63, 64, 71, -1, -1, -1, -1, -1, 77, -1, -1, -1, -1, -1, 83, 84, 79, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 99, -1, -1, -1, -1, -1, 111, -1, -1, -1, -1, -1, 35, 36, -1, -1, -1, -1, -1, -1, 125, -1, 121, -1, 129, -1, -1, -1, -1, -1, -1, 130, 131, 132, -1, -1, -1, -1, 61, 62, -1, -1, -1, -1, 143, 144, -1, -1, -1, 72, -1, -1, -1, 158, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1472, -1, -1, -1, -1, -1, 170, -1, -1, 97, -1, 99, 446, 447, -1, -1, -1, -1, -1, -1, -1, 109, -1, -1, -1, -1, 190, -1, -1, -1, 1502, -1, -1, -1, 1506, 27, 28, -1, -1, -1, 1512, -1, -1, -1, 208, -1, 210, 1519, -1, -1, -1, 215, -1, -1, 218, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 235, -1, -1, -1, 157, 158, 63, 242, -1, -1, 163, -1, 241, 166, -1, 244, -1, -1, -1, -1, 77, -1, -1, -1, -1, -1, 83, 84, 263, -1, 87, -1, -1, -1, -1, -1, 265, -1, -1, -1, -1, 276, -1, -1, -1, 198, -1, 200, -1, -1, -1, -1, -1, 282, 111, -1, 209, 286, 211, -1, -1, -1, -1, -1, -1, -1, -1, -1, 125, -1, -1, -1, 129, -1, -1, -1, -1, -1, -1, -1, -1, 234, 235, -1, -1, -1, -1, -1, 323, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 158, -1, -1, -1, -1, 341, -1, -1, 262, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 283, -1, -1, -1, -1, 557, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 383, -1, -1, -1, -1, -1, -1, 396, -1, -1, 317, -1, -1, -1, 590, -1, 405, 400, -1, 402, -1, 597, -1, -1, 235, -1, -1, -1, -1, -1, -1, 242, -1, 416, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 427, -1, -1, 27, 28, -1, -1, -1, 263, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 449, -1, -1, 452, -1, 454, -1, -1, 457, 382, -1, -1, -1, -1, -1, 61, 62, 63, 467, 468, -1, -1, -1, -1, -1, 71, -1, -1, 477, 484, 479, 77, -1, -1, -1, -1, 409, 83, 84, 488, -1, 87, -1, -1, -1, 494, 323, 420, 421, -1, -1, 424, 425, 502, -1, -1, -1, -1, 507, 508, 509, -1, -1, -1, 341, 111, -1, -1, -1, -1, -1, -1, 445, -1, -1, -1, 1833, -1, -1, 125, 1837, -1, -1, 129, -1, -1, 541, 542, 543, -1, 1847, 540, 1849, 548, -1, -1, -1, -1, 547, -1, -1, -1, -1, -1, -1, -1, 748, -1, -1, -1, 565, -1, 158, 568, -1, -1, -1, -1, -1, 396, -1, -1, -1, -1, -1, -1, 499, -1, 405, -1, -1, -1, -1, 1890, -1, -1, -1, 779, -1, 512, -1, -1, 591, -1, -1, -1, -1, -1, -1, 604, -1, -1, -1, 795, 603, -1, -1, -1, 607, -1, -1, 610, -1, -1, -1, -1, 615, -1, -1, -1, -1, 544, -1, -1, -1, 548, -1, -1, 1935, 1936, 1937, -1, -1, -1, -1, -1, -1, -1, -1, 235, -1, -1, -1, -1, 567, 1952, 242, 646, -1, -1, -1, -1, 844, 1960, -1, -1, -1, 484, -1, 664, -1, -1, -1, -1, -1, 664, -1, 263, -1, -1, -1, -1, 1979, -1, -1, -1, -1, -1, 1985, -1, -1, 1988, -1, 1990, -1, -1, -1, -1, -1, 1996, -1, 1998, 1999, -1, -1, -1, -1, -1, -1, -1, -1, -1, 625, -1, -1, -1, -1, -1, -1, 632, -1, -1, -1, -1, 541, 542, 543, -1, -1, -1, -1, 548, -1, -1, -1, -1, -1, 323, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 565, -1, -1, 568, -1, -1, -1, 341, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 952, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 964, 2080, -1, -1, -1, 604, -1, -1, -1, -1, -1, 2090, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 988, -1, 7, -1, 396, -1, -1, 12, -1, 14, -1, -1, -1, 405, -1, -1, -1, -1, -1, -1, -1, -1, 27, 28, -1, 2128, -1, -1, -1, -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, -1, -1, -1, -1, 63, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 77, -1, -1, -1, -1, -1, 83, 84, -1, -1, 87, -1, -1, -1, -1, -1, -1, 2192, -1, 96, 484, -1, -1, -1, 2199, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 125, -1, -1, -1, 129, -1, -1, -1, -1, 1117, -1, -1, 137, -1, -1, -1, -1, -1, -1, 144, -1, -1, -1, -1, -1, -1, -1, 152, -1, 541, 542, 543, -1, 158, -1, -1, 548, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 565, -1, -1, 568, -1, -1, -1, -1, -1, -1, -1, -1, 1173, 1174, 192, -1, -1, -1, -1, -1, -1, 1182, 1183, -1, -1, 1186, 1187, 1188, -1, -1, -1, -1, -1, -1, 1195, 1196, -1, 1198, 1199, 604, -1, -1, 1203, -1, -1, -1, 1207, 1208, 1209, 1210, -1, 1212, -1, -1, -1, -1, -1, 235, -1, 1220, 1221, -1, 1223, 1224, 242, -1, -1, -1, -1, 1230, 1231, -1, -1, 1234, 1235, 1236, 1237, 1238, 1239, -1, 1241, -1, -1, 1244, 1245, 263, -1, -1, 1249, -1, -1, -1, 1253, 1254, 1255, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1266, 1267, 1268, 286, -1, -1, -1, -1, -1, -1, -1, 1277, -1, -1, -1, -1, 1282, -1, -1, -1, -1, -1, 1288, -1, 1290, 1291, -1, -1, -1, -1, -1, -1, -1, 2414, -1, -1, -1, -1, -1, -1, 323, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 341, -1, -1, 1327, 345, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7, -1, -1, -1, -1, 12, -1, 14, -1, -1, 17, -1, -1, -1, -1, -1, -1, -1, -1, -1, 27, 28, -1, -1, -1, -1, -1, -1, -1, 389, -1, -1, -1, 2491, -1, -1, 396, -1, -1, -1, -1, -1, 2500, 2501, -1, 405, -1, -1, -1, 2507, -1, 58, 2510, -1, 61, 62, 63, 64, -1, -1, -1, -1, 69, -1, 71, 2523, 2524, -1, 2526, -1, 77, 2529, 2530, 2531, 2532, 2533, 83, 84, 2536, -1, 87, -1, -1, -1, -1, -1, -1, 2545, -1, 96, -1, -1, 452, 2551, -1, 2553, -1, 2555, 2556, -1, 2558, 2559, -1, -1, 111, 2563, 2564, 2565, -1, -1, -1, 2569, 2570, 2571, -1, 2573, -1, 2575, 125, 2577, -1, 2579, 129, 2581, 484, -1, -1, -1, 2586, 1472, 137, 138, -1, -1, -1, -1, -1, 144, -1, -1, -1, -1, -1, -1, -1, 152, -1, -1, -1, -1, -1, 158, 2610, -1, -1, 2613, -1, -1, -1, 1502, -1, 2619, 169, 1506, -1, -1, 2624, 2625, -1, -1, -1, -1, -1, -1, -1, -1, 1519, -1, -1, -1, -1, 541, 542, 543, -1, 192, -1, -1, 548, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 565, 34, 35, 568, -1, -1, -1, 40, -1, 42, -1, 44, 45, -1, -1, -1, -1, -1, -1, -1, -1, 233, -1, 235, -1, -1, -1, -1, -1, 62, 242, -1, -1, -1, -1, -1, -1, -1, -1, 604, -1, -1, -1, -1, -1, -1, 611, -1, -1, -1, -1, 263, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 638, 286, -1, 641, -1, 2741, 112, -1, -1, 115, -1, -1, -1, -1, -1, -1, -1, 123, 2754, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 142, -1, 323, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 159, -1, -1, 341, -1, -1, -1, 345, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 187, -1, 189, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2831, -1, -1, 383, 205, 206, -1, -1, -1, 389, -1, -1, 2843, 2844, -1, -1, 396, -1, -1, -1, -1, -1, -1, -1, -1, 405, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 247, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 437, -1, -1, 261, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 452, 453, 454, -1, -1, -1, -1, 280, -1, -1, -1, -1, -1, -1, -1, -1, 289, 290, -1, 292, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 484, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 1833, -1, -1, -1, 1837, -1, -1, -1, -1, -1, -1, 329, 330, 331, -1, -1, 1849, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 348, 349, 350, -1, -1, -1, -1, 355, -1, -1, 358, -1, -1, -1, 541, 542, 543, -1, -1, -1, -1, 548, -1, -1, -1, -1, -1, -1, 376, 377, 3008, 3009, -1, -1, -1, -1, -1, -1, 565, -1, -1, 568, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 410, 411, 591, -1, -1, -1, -1, -1, -1, -1, 1935, 1936, 1937, -1, -1, 604, -1, -1, -1, -1, 3060, -1, 611, 3063, -1, -1, 436, -1, -1, -1, -1, -1, -1, -1, -1, 1960, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3085, 3086, -1, -1, 638, -1, -1, 641, -1, 1979, -1, -1, -1, -1, -1, -1, -1, -1, 1988, -1, 1990, -1, 3107, -1, -1, -1, -1, -1, -1, -1, -1, 3116, -1, 3118, -1, 3120, -1, -1, -1, -1, -1, -1, -1, 498, -1, -1, -1, 502, -1, -1, -1, -1, -1, -1, 3139, -1, -1, -1, -1, 514, -1, -1, -1, -1, -1, -1, 3151, -1, -1, -1, -1, 3156, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 7, -1, -1, -1, -1, 12, -1, 14, -1, -1, 17, -1, -1, -1, -1, -1, 574, 2090, 3206, 577, 27, 28, 580, 581, 582, 583, -1, -1, 3216, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3231, 3232, -1, -1, -1, -1, -1, -1, 58, -1, -1, -1, 2128, 63, 64, -1, -1, -1, -1, 69, -1, -1, 623, 624, 3255, 3256, -1, 77, -1, 3260, -1, -1, -1, 83, 84, -1, -1, 87, -1, -1, -1, -1, -1, -1, -1, -1, 96, -1, -1, -1, 651, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 111, -1, -1, -1, -1, 3297, -1, -1, -1, -1, -1, -1, -1, -1, 125, 2192, -1, -1, 129, -1, -1, -1, 2199, -1, -1, -1, 137, 138, -1, -1, -1, -1, -1, 144, -1, -1, -1, -1, -1, -1, -1, 152, -1, -1, -1, -1, -1, 158, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 169, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 192, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3393, 3394, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 233, -1, 235, -1, -1, -1, -1, -1, -1, 242, -1, -1, -1, -1, -1, -1, -1, 3431, 3432, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 263, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3465, -1, 286, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3489, -1, 3491, -1, -1, 3494, 3495, -1, 3497, -1, -1, -1, -1, -1, -1, 323, -1, 3506, -1, -1, -1, -1, 3511, -1, -1, 3514, -1, 3516, 3517, -1, -1, -1, -1, 341, -1, -1, -1, 345, -1, -1, 2414, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3552, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 383, -1, -1, -1, -1, -1, 389, -1, -1, -1, -1, -1, -1, 396, -1, -1, -1, -1, -1, -1, 3584, -1, 405, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2491, -1, -1, -1, -1, -1, -1, -1, -1, 2500, 2501, -1, 437, -1, -1, -1, 2507, -1, -1, 2510, -1, -1, -1, -1, -1, -1, -1, 452, 453, 454, -1, -1, 2523, 2524, -1, 2526, -1, -1, 2529, 2530, 2531, 2532, 2533, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2545, -1, -1, -1, -1, 484, 2551, -1, 2553, -1, 2555, 2556, -1, 2558, -1, -1, -1, -1, 2563, 2564, 2565, -1, -1, -1, 2569, 2570, 2571, -1, 2573, -1, 2575, -1, 2577, -1, 2579, -1, 2581, -1, -1, -1, -1, 2586, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 541, 542, 543, -1, -1, -1, -1, 548, -1, -1, -1, -1, 2619, -1, -1, -1, -1, 2624, -1, -1, -1, -1, -1, -1, 565, -1, -1, 568, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 591, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 604, -1, -1, -1, -1, -1, -1, 611, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 638, -1, -1, 641, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2741, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 2754, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3886, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3904, -1, -1, -1, -1, 3909, -1, -1, -1, 3913, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4042, -1, 4044, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4069, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4132, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3060, -1, -1, 3063, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3085, 3086, -1, -1, -1, -1, -1, -1, 4208, 4209, -1, -1, -1, -1, -1, 4215, 4216, -1, -1, -1, -1, -1, 3107, -1, -1, -1, -1, -1, -1, -1, -1, 3116, -1, 3118, -1, 3120, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3139, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3206, -1, -1, -1, -1, -1, -1, 4328, -1, 4330, 3216, -1, -1, -1, -1, -1, -1, -1, -1, 4340, -1, 4342, 4343, -1, -1, 3231, 3232, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4364, -1, -1, -1, -1, -1, 3255, 3256, 4372, -1, -1, 3260, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3297, -1, -1, -1, -1, -1, -1, -1, 4420, -1, 4422, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4437, 4438, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4453, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4486, 4487, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4499, 4500, -1, -1, -1, -1, -1, -1, -1, 3393, 3394, -1, -1, 4512, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4537, -1, -1, -1, -1, -1, -1, 4544, -1, -1, 4547, -1, -1, -1, -1, 4552, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4568, -1, -1, -1, -1, -1, -1, 4575, -1, 4577, -1, -1, 3465, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4590, -1, -1, -1, -1, 4595, -1, 4597, -1, 4599, -1, -1, -1, -1, 3489, -1, 3491, -1, -1, 3494, 3495, -1, 4612, -1, -1, -1, -1, -1, -1, -1, -1, 3506, -1, -1, 4624, 4625, 3511, -1, -1, 3514, -1, 3516, 3517, -1, -1, -1, -1, -1, -1, -1, 4640, 4641, -1, -1, -1, 4645, -1, -1, -1, -1, -1, 4651, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4679, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3584, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3886, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 3904, -1, -1, -1, -1, 3909, -1, -1, -1, 3913, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4042, -1, 4044, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4208, 4209, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4328, -1, 4330, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4340, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4420, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4438, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4486, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 4544, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, 4568, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, 46, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, 4651, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, 4679, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, 269, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, 585, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, 13, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, 379, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, 659, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, 659, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, 197, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, 197, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, 197, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, 13, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, -1, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, -1, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, -1, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, -1, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, 37, 38, 39, 40, 41, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, 54, 55, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, 96, 97, 98, -1, -1, 101, 102, 103, 104, -1, 106, 107, 108, -1, 110, 111, 112, 113, 114, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, 171, -1, 173, 174, 175, 176, 177, 178, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, 213, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, 241, 242, 243, 244, 245, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, 272, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, 342, 343, -1, 345, 346, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, -1, 369, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, 478, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, 617, 618, 619, 620, 621, 622, -1, -1, 625, 626, -1, 628, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 653, 654, -1, -1, 657, 658, -1, -1, -1, -1, 663, 664, -1, -1, 667, 668, -1, -1, 671, 672, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, 37, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, 179, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, 357, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, 373, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, 671, 672, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, 89, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, 199, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, 235, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, 264, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, 276, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, 494, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, 520, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 672, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, 89, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, 199, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, 235, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, 264, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, 520, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 672, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, 145, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, 494, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, 664, 15, 16, -1, 668, -1, 20, -1, 672, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, 494, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, 664, 15, 16, -1, 668, -1, 20, -1, 672, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, 494, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, 664, 15, 16, -1, -1, -1, 20, -1, 672, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, 494, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, 665, -1, -1, 20, -1, -1, 23, 672, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 5, 6, 665, 8, 9, 10, 11, 12, 671, 672, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, 664, 15, 16, -1, -1, -1, 20, -1, 672, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, 664, 15, 16, -1, -1, -1, 20, -1, 672, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, -1, -1, -1, -1, 659, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, 672, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, 671, 672, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 672, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 672, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 672, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 672, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, 393, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 671, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 671, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 671, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 671, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, 62, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 671, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 671, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 671, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, 671, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, 665, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, 665, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, -1, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, 182, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, 257, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, 271, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, 293, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, 475, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, 637, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, 666, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, -1, -1, 5, 6, 659, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, -1, -1, 5, 6, 659, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, -1, -1, 5, 6, 659, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, -1, 651, -1, -1, -1, -1, -1, 5, 6, 659, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, 122, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, 188, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, 367, 368, -1, 370, 371, -1, -1, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, 522, 523, 524, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, 595, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, 18, 19, 20, 21, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, 388, -1, -1, 391, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 649, -1, 651, 5, 6, -1, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, 160, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, 503, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, 291, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, 374, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, 398, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, 595, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, 104, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, 104, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, 13, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, 37, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, 219, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, 35, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, 275, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, 95, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, 172, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, 523, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, 197, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, 573, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, 13, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, 125, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, 419, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, 5, 6, 651, 8, 9, 10, 11, 12, -1, -1, 15, 16, -1, -1, -1, 20, -1, -1, 23, -1, 25, 26, 27, 28, 29, 30, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, 49, 50, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, 61, -1, 63, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, 93, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, 121, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, 143, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, 170, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, 190, 191, -1, -1, -1, 195, 196, -1, 198, -1, 200, -1, 202, -1, 204, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, 215, 216, -1, 218, -1, -1, 221, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, 244, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, 266, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, 370, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, 385, -1, -1, -1, -1, -1, -1, -1, -1, -1, 395, 396, 397, -1, 399, 400, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, -1, 414, -1, 416, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, 451, -1, 453, 454, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, 467, -1, 469, 470, -1, 472, 473, 474, -1, 476, -1, -1, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, -1, 492, 493, -1, -1, -1, 497, 498, 499, 500, -1, -1, -1, 504, -1, -1, -1, 508, -1, 510, 511, 512, 513, -1, 515, 516, 517, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, 540, 541, 542, 543, 544, -1, -1, 547, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, 591, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, 602, 603, -1, -1, 606, -1, -1, 609, -1, 611, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, 643, -1, 645, 646, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, 150, 151, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, 182, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, 257, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, 271, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, 293, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, 475, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, 637, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, 150, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, 182, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, 257, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, 271, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, 293, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, 475, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, 635, -1, 637, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, 150, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, 182, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, 257, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, 271, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, 293, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, 475, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, 635, -1, 637, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, 182, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, 257, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, 271, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, 293, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, 475, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, 637, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, 182, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, 257, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, 271, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, 293, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, 475, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, 637, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, 182, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, 257, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, 271, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, 293, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, 475, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, 637, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, 182, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, 257, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, 271, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, 293, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, 475, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, 637, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, 154, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, 182, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, 257, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, 271, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, 293, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, 475, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, 637, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, -1, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, 182, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, 257, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, 271, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, 293, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, 475, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, 637, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, 32, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, 54, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, 68, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, -1, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, 182, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, 230, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, 257, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, 271, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, 293, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, 382, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, 456, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, 475, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, 637, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, -1, 6, 651, 8, 9, 10, 11, 12, -1, -1, -1, 16, -1, -1, -1, 20, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, -1, -1, -1, -1, -1, 36, -1, -1, -1, 40, -1, -1, 43, 44, 45, -1, 47, -1, -1, -1, -1, -1, 53, -1, -1, 56, 57, -1, 59, 60, -1, -1, -1, -1, 65, 66, 67, -1, 69, 70, -1, 72, 73, -1, 75, 76, -1, 78, -1, 80, 81, 82, 83, 84, 85, -1, 87, 88, -1, 90, 91, 92, -1, 94, -1, -1, -1, 98, -1, -1, 101, -1, 103, -1, -1, 106, -1, -1, -1, 110, 111, 112, -1, -1, 115, -1, -1, -1, -1, 120, -1, -1, -1, -1, -1, 126, 127, -1, 129, -1, -1, -1, 133, -1, 135, 136, 137, 138, 139, -1, -1, -1, -1, -1, -1, 146, 147, 148, -1, -1, -1, 152, -1, -1, 155, -1, 157, 158, 159, -1, -1, 162, 163, -1, 165, 166, 167, 168, 169, -1, -1, -1, 173, 174, 175, 176, 177, -1, -1, 180, 181, -1, 183, 184, 185, 186, 187, -1, -1, -1, -1, -1, -1, -1, -1, 196, -1, 198, -1, 200, -1, 202, -1, -1, 205, 206, 207, -1, 209, -1, 211, -1, -1, -1, -1, 216, -1, -1, -1, -1, -1, 222, -1, -1, -1, 226, 227, 228, 229, -1, -1, 232, 233, 234, -1, -1, 237, -1, -1, -1, -1, 242, 243, -1, -1, -1, -1, 248, -1, -1, -1, 252, 253, -1, 255, 256, -1, -1, -1, -1, 261, -1, 263, -1, -1, -1, 267, -1, -1, 270, -1, -1, 273, 274, -1, -1, -1, -1, -1, 280, 281, -1, 283, -1, 285, -1, 287, 288, -1, -1, -1, -1, -1, -1, -1, 296, -1, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, -1, 317, 318, 319, -1, 321, 322, 323, 324, -1, 326, 327, -1, -1, -1, -1, 332, 333, 334, 335, 336, 337, -1, -1, 340, 341, -1, 343, -1, 345, -1, 347, 348, 349, 350, 351, 352, 353, 354, 355, -1, -1, 358, 359, -1, -1, 362, 363, 364, 365, 366, -1, -1, -1, -1, 371, -1, -1, -1, 375, -1, 377, 378, -1, 380, 381, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 396, 397, -1, -1, -1, 401, -1, 403, 404, 405, 406, 407, 408, 409, 410, 411, -1, -1, -1, -1, -1, 417, 418, -1, 420, -1, 422, 423, 424, 425, 426, -1, 428, 429, 430, -1, -1, 433, -1, -1, -1, 437, 438, 439, 440, 441, -1, -1, 444, 445, 446, 447, 448, -1, 450, -1, -1, 453, -1, 455, -1, -1, 458, 459, 460, 461, 462, 463, 464, 465, -1, -1, -1, 469, -1, -1, 472, 473, 474, -1, 476, -1, -1, -1, 480, 481, 482, 483, 484, 485, 486, 487, -1, 489, 490, -1, 492, -1, -1, -1, -1, 497, 498, 499, -1, -1, -1, -1, 504, -1, -1, -1, -1, -1, -1, 511, -1, 513, -1, 515, -1, -1, 518, 519, -1, -1, -1, -1, -1, 525, 526, 527, -1, 529, 530, -1, 532, -1, -1, 535, -1, 537, -1, 539, -1, 541, 542, 543, 544, -1, -1, -1, 548, -1, -1, 551, 552, 553, 554, 555, 556, -1, -1, 559, 560, 561, 562, -1, 564, 565, -1, -1, 568, 569, 570, 571, -1, -1, 574, 575, -1, 577, 578, 579, 580, -1, -1, -1, -1, -1, 586, 587, -1, -1, -1, -1, 592, 593, 594, -1, 596, 597, -1, 599, 600, -1, -1, -1, -1, -1, 606, -1, -1, 609, -1, -1, -1, 613, 614, -1, -1, -1, -1, -1, 620, -1, 622, -1, -1, 625, -1, -1, -1, 629, -1, 631, 632, 633, 634, -1, -1, -1, -1, -1, -1, 641, 642, -1, -1, 645, -1, 647, 648, -1, -1, 651 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ static const yytype_uint16 yystos[] = { 0, 14, 17, 32, 36, 50, 51, 58, 63, 64, 79, 99, 121, 130, 131, 132, 143, 144, 156, 170, 190, 208, 210, 215, 218, 241, 244, 265, 282, 286, 383, 400, 402, 416, 427, 449, 452, 454, 457, 467, 468, 477, 479, 488, 494, 502, 507, 508, 509, 540, 547, 591, 603, 607, 610, 615, 646, 664, 675, 678, 679, 680, 681, 682, 684, 689, 691, 713, 746, 773, 780, 781, 900, 983, 1071, 1079, 1127, 1128, 1129, 1132, 1146, 1149, 1154, 1156, 1157, 1162, 1165, 1170, 1177, 1188, 1189, 1308, 1310, 1323, 1324, 1342, 1346, 1350, 1357, 1372, 1376, 1379, 1389, 1395, 1399, 1401, 1402, 1456, 1477, 1483, 1485, 1486, 1488, 1495, 1498, 1525, 1531, 1532, 1533, 1534, 1588, 1595, 1596, 12, 108, 127, 200, 243, 287, 421, 500, 565, 567, 613, 1552, 1553, 1554, 1557, 283, 372, 1164, 1526, 573, 1447, 235, 5, 6, 8, 9, 10, 11, 12, 15, 16, 20, 23, 25, 26, 27, 28, 29, 30, 32, 36, 40, 43, 44, 45, 47, 49, 50, 53, 56, 57, 59, 60, 61, 63, 65, 66, 67, 68, 69, 70, 72, 73, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 87, 88, 90, 91, 92, 93, 94, 98, 101, 103, 106, 110, 111, 112, 115, 120, 121, 126, 127, 129, 133, 135, 136, 137, 138, 139, 143, 146, 147, 148, 152, 154, 155, 157, 158, 159, 162, 163, 165, 166, 167, 168, 169, 170, 173, 174, 175, 176, 177, 180, 181, 183, 184, 185, 186, 187, 190, 191, 195, 196, 198, 200, 202, 204, 205, 206, 207, 209, 211, 215, 216, 218, 221, 222, 226, 227, 228, 229, 232, 233, 234, 237, 242, 243, 244, 248, 252, 253, 255, 256, 261, 263, 266, 267, 270, 273, 274, 280, 281, 283, 285, 287, 288, 296, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 317, 318, 319, 321, 322, 323, 324, 326, 327, 332, 333, 334, 335, 336, 337, 340, 341, 343, 345, 347, 348, 349, 350, 351, 352, 353, 354, 355, 358, 359, 362, 363, 364, 365, 366, 370, 371, 375, 377, 378, 380, 381, 382, 385, 395, 396, 397, 399, 400, 401, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 414, 416, 417, 418, 420, 422, 423, 424, 425, 426, 428, 429, 430, 433, 437, 438, 439, 440, 441, 444, 445, 446, 447, 448, 450, 451, 453, 454, 455, 458, 459, 460, 461, 462, 463, 464, 465, 467, 469, 470, 472, 473, 474, 476, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 492, 493, 497, 498, 499, 500, 504, 508, 510, 511, 512, 513, 515, 516, 517, 518, 519, 525, 526, 527, 529, 530, 532, 535, 537, 539, 540, 541, 542, 543, 544, 547, 548, 551, 552, 553, 554, 555, 556, 559, 560, 561, 562, 564, 565, 568, 569, 570, 571, 574, 575, 577, 578, 579, 580, 586, 587, 591, 592, 593, 594, 596, 597, 599, 600, 602, 603, 606, 609, 611, 613, 614, 620, 622, 625, 629, 631, 632, 633, 634, 641, 642, 643, 645, 646, 647, 648, 651, 740, 1444, 1450, 1454, 1455, 317, 458, 564, 567, 1479, 1479, 642, 1527, 108, 199, 287, 500, 520, 565, 570, 605, 613, 722, 950, 951, 952, 1049, 1050, 1051, 231, 294, 430, 1348, 1349, 1309, 108, 167, 200, 235, 287, 421, 500, 565, 570, 588, 613, 629, 1319, 1450, 1164, 103, 537, 782, 738, 739, 672, 1441, 1443, 1450, 690, 128, 220, 294, 1325, 408, 87, 429, 1400, 111, 235, 648, 1407, 1479, 1164, 664, 901, 1450, 1396, 488, 613, 1479, 1164, 128, 294, 1326, 1345, 1390, 523, 770, 774, 775, 1450, 738, 1527, 1450, 1192, 1193, 1194, 61, 62, 125, 209, 283, 353, 405, 499, 586, 671, 1011, 1450, 1457, 1462, 1466, 1467, 1358, 774, 204, 512, 586, 204, 512, 567, 1352, 408, 1484, 1345, 1450, 32, 79, 154, 416, 438, 479, 540, 1591, 494, 664, 1190, 0, 156, 676, 416, 104, 275, 613, 1087, 1447, 1450, 1452, 1453, 1515, 1516, 609, 1130, 1144, 176, 195, 403, 1377, 1441, 1450, 160, 1091, 1450, 160, 740, 481, 1487, 212, 740, 1452, 848, 849, 852, 875, 1450, 1441, 230, 1318, 167, 1077, 1552, 1479, 1527, 1171, 747, 672, 584, 185, 1147, 1158, 19, 1528, 230, 953, 212, 1452, 850, 875, 953, 391, 1549, 1553, 1554, 1555, 1556, 1557, 567, 951, 235, 235, 235, 197, 1317, 1442, 1450, 1348, 8, 23, 29, 35, 37, 38, 39, 41, 54, 55, 61, 62, 69, 72, 93, 96, 97, 102, 104, 107, 108, 113, 114, 115, 120, 122, 125, 171, 178, 179, 188, 195, 205, 207, 213, 219, 226, 230, 241, 245, 272, 280, 291, 320, 325, 336, 340, 342, 346, 347, 348, 349, 350, 357, 367, 368, 369, 373, 374, 398, 405, 410, 411, 413, 428, 456, 457, 476, 478, 485, 486, 492, 545, 546, 553, 557, 558, 563, 573, 577, 578, 579, 580, 589, 590, 591, 595, 598, 613, 617, 618, 619, 621, 626, 628, 633, 634, 651, 653, 654, 657, 658, 659, 663, 664, 667, 668, 671, 672, 1009, 1203, 1204, 1207, 1208, 1209, 1210, 1214, 1217, 1218, 1219, 1220, 1221, 1222, 1229, 1230, 1426, 1428, 1430, 1431, 1432, 1434, 1437, 1439, 1444, 1450, 1318, 1318, 1318, 1450, 212, 1318, 1318, 875, 1318, 1318, 1318, 1479, 685, 1380, 135, 1499, 1450, 382, 68, 434, 672, 1452, 231, 1123, 1450, 1207, 1450, 246, 1403, 1478, 1479, 984, 1207, 48, 902, 197, 35, 317, 1363, 1397, 1450, 738, 1166, 1479, 246, 1327, 317, 429, 512, 1391, 1392, 622, 771, 502, 776, 1496, 584, 1528, 604, 1535, 1536, 246, 389, 1284, 1285, 1305, 1306, 13, 140, 220, 528, 529, 530, 531, 532, 533, 550, 1199, 1200, 1201, 1548, 502, 672, 35, 125, 160, 503, 1012, 1013, 1335, 1452, 194, 1335, 255, 434, 1468, 1469, 1471, 1473, 671, 1452, 35, 125, 1015, 1016, 1452, 672, 586, 1458, 1465, 1467, 666, 1459, 1335, 36, 61, 72, 97, 99, 109, 158, 163, 166, 198, 200, 209, 211, 234, 235, 262, 283, 317, 382, 409, 420, 421, 424, 425, 445, 499, 512, 548, 567, 632, 1011, 1048, 1359, 1363, 1364, 1366, 1463, 776, 448, 535, 1141, 1142, 1143, 434, 638, 1133, 1134, 1135, 1141, 1351, 1450, 1479, 1123, 37, 219, 573, 1427, 1448, 1590, 1590, 1590, 96, 1589, 1590, 1590, 1192, 1190, 665, 670, 1450, 664, 1206, 664, 228, 671, 228, 466, 666, 1520, 301, 302, 446, 447, 525, 526, 527, 711, 1145, 613, 1136, 1137, 160, 1374, 1373, 334, 571, 597, 1073, 611, 1453, 1075, 1452, 854, 876, 1450, 1074, 385, 7, 58, 144, 368, 433, 435, 877, 1072, 171, 738, 740, 534, 1558, 1559, 1076, 1155, 1172, 1173, 1174, 1175, 1441, 664, 748, 1450, 692, 693, 1315, 1316, 1441, 1315, 57, 370, 370, 449, 1529, 367, 368, 1213, 1450, 853, 876, 193, 7, 738, 457, 11, 167, 200, 421, 588, 725, 1551, 1559, 1574, 1576, 1577, 1583, 200, 725, 1550, 1559, 1574, 1577, 1583, 1552, 1557, 953, 1450, 1450, 1450, 1317, 1441, 1450, 197, 666, 672, 1347, 664, 664, 664, 1217, 664, 664, 664, 1207, 1242, 664, 664, 664, 664, 664, 664, 664, 664, 1206, 1206, 664, 998, 664, 664, 664, 573, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 1207, 664, 664, 664, 1240, 1241, 1437, 1450, 664, 664, 664, 664, 664, 664, 664, 664, 664, 1207, 998, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 664, 998, 573, 664, 664, 664, 573, 664, 664, 664, 37, 219, 573, 664, 1206, 998, 998, 664, 664, 664, 664, 664, 664, 664, 664, 1217, 1217, 1217, 1207, 1544, 1545, 1450, 671, 1231, 1452, 1450, 666, 18, 19, 21, 388, 391, 649, 1205, 1211, 1212, 1447, 1450, 160, 161, 201, 214, 254, 268, 295, 360, 1215, 33, 141, 249, 276, 346, 443, 505, 506, 518, 655, 656, 657, 658, 659, 660, 661, 662, 1213, 1217, 71, 390, 1448, 259, 260, 664, 672, 1450, 740, 1450, 379, 876, 740, 1452, 371, 631, 886, 888, 1320, 1321, 1322, 1364, 740, 738, 1314, 1318, 616, 686, 35, 133, 158, 162, 202, 222, 288, 384, 420, 429, 444, 469, 513, 544, 1381, 1386, 1387, 1479, 86, 671, 783, 784, 785, 786, 1450, 13, 14, 99, 130, 144, 167, 170, 183, 210, 235, 241, 286, 422, 426, 442, 450, 458, 494, 507, 508, 559, 588, 610, 612, 1500, 1502, 1504, 1505, 21, 160, 1272, 1273, 1489, 1450, 1327, 517, 672, 50, 85, 294, 1409, 1441, 1480, 1481, 1163, 665, 278, 281, 431, 903, 905, 671, 683, 1447, 288, 1167, 1453, 1168, 1169, 1441, 1150, 1441, 50, 1393, 666, 1448, 56, 66, 76, 90, 91, 92, 106, 335, 352, 490, 552, 569, 777, 779, 13, 426, 1497, 1502, 488, 1530, 1529, 13, 140, 1541, 146, 393, 671, 1303, 1304, 1307, 1452, 48, 277, 1289, 1290, 197, 1196, 194, 286, 1202, 1203, 1201, 1450, 71, 1018, 1207, 1453, 405, 573, 1475, 274, 381, 644, 666, 1472, 666, 1470, 209, 283, 499, 1464, 1335, 1450, 1468, 1459, 1335, 1460, 1461, 1462, 1466, 13, 35, 125, 379, 1207, 1476, 166, 276, 636, 1370, 664, 108, 167, 200, 421, 567, 588, 613, 629, 1370, 13, 962, 1452, 1289, 197, 249, 1365, 1367, 70, 544, 194, 544, 564, 70, 544, 13, 43, 94, 98, 253, 333, 397, 519, 561, 1353, 1354, 1355, 166, 222, 544, 544, 1289, 1370, 1367, 288, 157, 73, 423, 564, 587, 544, 625, 666, 381, 644, 88, 666, 194, 712, 1316, 494, 664, 668, 1245, 1246, 1247, 1248, 1249, 1253, 1441, 666, 380, 1593, 560, 1594, 647, 258, 472, 1592, 665, 1285, 1290, 1536, 1537, 1539, 1540, 156, 677, 665, 665, 48, 1452, 48, 638, 65, 256, 366, 536, 554, 645, 1511, 1512, 1516, 638, 1084, 160, 160, 160, 160, 160, 160, 666, 160, 1131, 405, 1138, 1452, 194, 1188, 1323, 1324, 1342, 1346, 1375, 1378, 1427, 1450, 125, 948, 949, 959, 960, 1021, 111, 741, 317, 7, 855, 741, 664, 110, 872, 872, 872, 4, 7, 12, 14, 17, 27, 28, 58, 63, 64, 69, 77, 83, 84, 87, 96, 111, 129, 137, 138, 144, 152, 158, 169, 192, 233, 235, 242, 263, 286, 323, 341, 345, 383, 389, 396, 405, 437, 452, 453, 454, 484, 541, 542, 543, 548, 565, 568, 591, 604, 611, 638, 641, 955, 957, 959, 960, 1092, 1093, 1094, 1099, 1102, 1105, 1111, 1112, 1113, 1114, 1118, 1120, 1121, 1281, 1078, 493, 629, 1559, 1315, 249, 666, 235, 264, 402, 1046, 1183, 1185, 1186, 749, 750, 1207, 232, 296, 297, 298, 299, 300, 303, 304, 305, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 318, 319, 707, 708, 711, 459, 460, 461, 462, 463, 464, 465, 694, 695, 176, 430, 666, 1148, 59, 176, 180, 194, 332, 430, 1159, 1160, 1161, 57, 449, 171, 721, 855, 111, 872, 1515, 200, 953, 740, 1450, 740, 740, 1559, 1441, 1052, 1053, 1052, 1052, 616, 402, 1251, 1252, 672, 1246, 1442, 659, 1450, 1207, 1207, 13, 140, 1236, 1274, 1236, 1236, 1236, 635, 1244, 1207, 1207, 1207, 1239, 1239, 1207, 1207, 1207, 140, 1236, 1274, 374, 665, 665, 1207, 1207, 1207, 1207, 1437, 1544, 116, 117, 118, 119, 120, 223, 224, 225, 226, 336, 338, 339, 340, 347, 428, 491, 492, 633, 650, 651, 1269, 1270, 1207, 1238, 1239, 112, 115, 577, 580, 1271, 140, 1232, 1207, 1207, 1207, 1207, 1269, 1207, 1239, 1241, 10, 666, 672, 140, 1236, 1207, 1207, 140, 1236, 1207, 1207, 1239, 1239, 1239, 1207, 1207, 1239, 1210, 1207, 1207, 1207, 1207, 1207, 1207, 665, 1207, 1236, 1236, 1207, 1207, 140, 1236, 1207, 1270, 1270, 1207, 46, 269, 585, 1207, 1207, 665, 1438, 1439, 1450, 1236, 1236, 1207, 1207, 1207, 1236, 1236, 665, 666, 665, 494, 664, 1542, 1543, 1207, 1464, 503, 672, 1204, 1447, 1450, 1207, 1207, 1207, 179, 373, 590, 606, 1213, 13, 20, 1209, 1216, 1210, 1210, 664, 1217, 1210, 1210, 1210, 1210, 276, 1210, 1210, 245, 1210, 245, 1210, 1210, 1210, 1210, 1210, 33, 249, 276, 443, 1452, 1217, 1448, 1448, 1207, 1226, 1227, 1228, 659, 1450, 672, 1441, 1320, 666, 1322, 158, 1453, 1514, 1315, 1311, 671, 687, 688, 288, 288, 288, 288, 50, 288, 288, 666, 1382, 115, 577, 580, 778, 788, 1230, 1430, 1437, 1452, 666, 160, 420, 1503, 482, 482, 565, 570, 613, 629, 386, 1507, 564, 379, 1509, 67, 512, 1506, 109, 629, 1508, 379, 666, 1450, 186, 364, 1450, 1490, 1491, 1441, 1447, 1450, 1178, 283, 1408, 1273, 666, 1315, 73, 664, 910, 911, 910, 911, 403, 913, 216, 264, 1452, 31, 584, 1398, 666, 584, 666, 584, 1315, 1251, 13, 1394, 1392, 666, 160, 1503, 379, 379, 1450, 1189, 573, 1449, 1449, 1452, 666, 1207, 1286, 1435, 291, 374, 595, 1291, 1292, 1428, 1450, 1202, 145, 1198, 1246, 636, 1275, 610, 249, 125, 1017, 1020, 1452, 1335, 664, 434, 455, 497, 1474, 1471, 1469, 672, 672, 672, 1467, 1207, 1476, 666, 1465, 249, 1368, 1447, 1207, 659, 953, 740, 740, 740, 1441, 740, 738, 1441, 288, 351, 544, 1362, 1362, 1370, 1450, 740, 1370, 1453, 1365, 740, 1370, 252, 562, 181, 194, 1356, 666, 1368, 712, 1365, 1441, 1367, 1365, 1365, 276, 636, 1371, 1371, 1143, 515, 1135, 60, 1199, 1248, 1254, 1257, 1450, 100, 238, 258, 272, 356, 478, 550, 1250, 502, 666, 1251, 1427, 406, 194, 1289, 573, 405, 573, 1452, 573, 573, 573, 19, 1510, 321, 322, 326, 327, 1085, 1086, 5, 405, 1080, 1081, 1082, 1083, 1445, 1447, 122, 188, 291, 374, 595, 1296, 1445, 122, 188, 219, 291, 374, 595, 1294, 1447, 1447, 711, 1447, 712, 160, 126, 1139, 87, 949, 71, 1011, 136, 77, 93, 266, 344, 370, 432, 534, 743, 745, 264, 439, 599, 873, 874, 237, 869, 870, 871, 878, 886, 888, 108, 221, 395, 405, 412, 516, 613, 723, 724, 1447, 26, 324, 863, 864, 865, 878, 879, 880, 886, 888, 856, 857, 863, 74, 89, 402, 970, 973, 974, 1044, 1046, 1050, 1051, 1122, 1335, 1336, 1122, 402, 1336, 1336, 1122, 1336, 402, 402, 1336, 1336, 1336, 1336, 584, 136, 1336, 262, 402, 565, 193, 402, 419, 1046, 1122, 262, 1336, 402, 402, 565, 136, 1336, 1336, 1336, 1336, 1336, 1122, 402, 48, 1336, 1336, 402, 21, 160, 584, 1046, 1126, 402, 402, 1336, 1336, 1336, 1336, 139, 333, 1336, 1336, 402, 1336, 404, 620, 620, 955, 402, 451, 898, 1100, 666, 666, 664, 672, 969, 975, 1440, 1450, 379, 733, 1088, 127, 248, 1441, 125, 1176, 1450, 1174, 1441, 1184, 664, 1185, 665, 666, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 666, 712, 160, 160, 160, 160, 160, 160, 160, 666, 1316, 611, 1160, 947, 948, 77, 365, 440, 600, 866, 867, 868, 878, 882, 883, 884, 885, 886, 888, 643, 615, 851, 1520, 1450, 740, 664, 474, 1584, 9, 31, 846, 714, 593, 616, 1060, 379, 379, 379, 1246, 664, 1275, 1450, 1275, 672, 1347, 666, 665, 1236, 665, 1207, 665, 665, 665, 1207, 150, 635, 1243, 21, 665, 616, 665, 666, 665, 665, 666, 616, 666, 1239, 665, 659, 665, 666, 666, 665, 665, 665, 665, 197, 666, 665, 666, 1239, 665, 666, 666, 666, 658, 666, 665, 665, 664, 1437, 1450, 1236, 665, 665, 665, 1236, 665, 666, 665, 665, 665, 665, 665, 666, 665, 249, 665, 666, 666, 665, 666, 666, 665, 665, 665, 666, 197, 666, 1236, 665, 665, 666, 666, 666, 665, 197, 1207, 197, 1207, 197, 1207, 197, 665, 666, 665, 665, 665, 665, 666, 21, 274, 666, 1036, 665, 666, 665, 1239, 1255, 1256, 494, 664, 1191, 604, 669, 1452, 1207, 1450, 179, 373, 590, 606, 664, 19, 1207, 1544, 165, 1277, 1210, 1207, 1207, 1210, 664, 1217, 1210, 1205, 665, 666, 664, 672, 1450, 1312, 1322, 1336, 666, 52, 471, 1124, 1315, 1452, 666, 712, 1387, 1315, 1388, 786, 789, 790, 785, 375, 486, 787, 564, 664, 1517, 1453, 1517, 1517, 1517, 200, 421, 567, 1501, 1505, 160, 186, 201, 214, 267, 268, 295, 364, 418, 1492, 1494, 1275, 1251, 672, 1179, 1180, 1181, 1182, 1441, 236, 294, 434, 644, 1482, 1481, 664, 919, 1210, 122, 188, 219, 291, 374, 595, 1295, 1298, 1299, 556, 914, 904, 12, 906, 1207, 1447, 1453, 1453, 1169, 1441, 176, 430, 614, 1151, 1152, 1153, 494, 502, 621, 622, 664, 945, 1328, 1329, 1331, 1332, 1333, 712, 779, 778, 666, 1453, 200, 421, 1501, 1011, 1014, 1304, 22, 131, 1287, 1288, 666, 378, 666, 1207, 212, 1278, 504, 405, 1475, 1475, 78, 596, 434, 1335, 1461, 1447, 197, 1369, 665, 1450, 1453, 1370, 429, 1289, 1355, 1369, 1370, 1365, 1441, 1370, 1370, 1447, 1207, 1445, 1203, 604, 665, 1538, 1539, 1245, 258, 258, 392, 1258, 258, 272, 478, 1258, 1253, 1245, 1343, 1344, 1438, 1247, 1273, 666, 337, 573, 21, 48, 1511, 1294, 1294, 1294, 1294, 1086, 286, 607, 174, 1082, 125, 245, 362, 1447, 160, 407, 1140, 1295, 1336, 1336, 354, 1447, 534, 534, 534, 534, 534, 493, 1447, 1447, 1336, 666, 871, 1447, 1447, 1447, 1447, 1294, 1447, 1447, 665, 666, 1336, 1336, 666, 865, 858, 859, 878, 879, 880, 1068, 1440, 1164, 64, 193, 419, 605, 972, 1045, 1068, 1046, 1047, 1047, 125, 1450, 1440, 1164, 1296, 1294, 1440, 1294, 13, 1101, 1109, 1110, 1450, 1164, 1447, 1447, 1447, 1447, 1011, 1336, 1294, 1101, 264, 1109, 264, 1440, 1440, 961, 1452, 1110, 1101, 1336, 186, 267, 370, 964, 1294, 125, 1450, 1296, 1296, 1440, 1164, 1282, 1283, 1438, 125, 1294, 1447, 1164, 1440, 1441, 1164, 1164, 80, 82, 125, 148, 187, 441, 963, 125, 1294, 125, 1294, 125, 1294, 1450, 1294, 1101, 958, 899, 404, 7, 144, 1114, 1118, 1094, 1111, 1118, 966, 967, 968, 969, 970, 1450, 9, 186, 1125, 442, 971, 972, 1038, 976, 672, 81, 489, 452, 1089, 1560, 664, 419, 1265, 1266, 1267, 1450, 1207, 664, 1294, 1445, 1294, 1294, 1445, 1445, 1294, 1294, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1445, 1294, 1294, 1445, 1431, 708, 664, 696, 696, 664, 701, 701, 664, 704, 704, 664, 699, 695, 1336, 1336, 1336, 1336, 666, 868, 1452, 287, 177, 184, 860, 861, 862, 878, 879, 880, 881, 884, 885, 886, 887, 888, 1084, 474, 726, 1578, 123, 247, 436, 551, 965, 664, 130, 241, 610, 847, 276, 664, 890, 954, 956, 957, 47, 216, 487, 1065, 1065, 1441, 1441, 1441, 1275, 1268, 1450, 1284, 245, 1207, 665, 576, 1207, 1207, 154, 35, 62, 112, 115, 123, 261, 358, 510, 580, 608, 1237, 1012, 1207, 1207, 1012, 1237, 665, 665, 245, 245, 1207, 1207, 1207, 389, 1234, 1207, 1207, 1207, 1207, 1207, 1210, 665, 665, 1207, 1207, 1207, 1207, 1207, 1207, 1239, 245, 1207, 1207, 1207, 665, 1207, 1207, 1207, 1207, 197, 1207, 197, 1207, 197, 1207, 1207, 1207, 35, 62, 1031, 1032, 1033, 1034, 1035, 1295, 1294, 665, 1236, 665, 1195, 1196, 1197, 1546, 1547, 1548, 1255, 1191, 665, 1541, 672, 1069, 1544, 1209, 665, 666, 665, 1217, 1269, 1269, 19, 1207, 1544, 1277, 1228, 1238, 659, 1450, 1313, 961, 1453, 1124, 688, 1383, 160, 666, 1450, 1518, 1519, 584, 659, 1441, 1450, 1513, 1513, 1513, 1493, 1289, 502, 1328, 1329, 666, 1183, 1185, 1449, 644, 283, 907, 908, 909, 1450, 665, 48, 664, 921, 911, 160, 664, 584, 1152, 1199, 1343, 665, 945, 1330, 1433, 1434, 1438, 1450, 1535, 664, 1334, 1337, 160, 210, 197, 1513, 1513, 1513, 1013, 73, 1411, 1435, 1292, 1292, 48, 217, 1276, 343, 664, 665, 1476, 1296, 1360, 163, 632, 374, 1361, 1275, 1365, 1195, 1541, 1273, 669, 258, 1253, 1258, 1258, 258, 379, 379, 616, 666, 1275, 1335, 192, 231, 615, 1260, 1261, 1262, 1263, 1264, 1294, 1447, 1447, 739, 1295, 1447, 160, 1020, 1013, 111, 111, 127, 248, 291, 374, 595, 889, 1297, 1298, 1444, 871, 724, 889, 889, 865, 666, 859, 1103, 664, 264, 264, 1047, 1068, 1053, 1068, 1068, 144, 502, 1101, 1115, 1096, 666, 1295, 1013, 1447, 565, 1440, 1124, 638, 565, 1447, 1116, 1101, 666, 1287, 1101, 584, 1106, 1101, 664, 902, 665, 666, 1450, 1441, 34, 35, 40, 42, 44, 45, 62, 112, 115, 123, 142, 159, 187, 189, 205, 206, 247, 261, 280, 289, 290, 292, 329, 330, 331, 348, 349, 350, 355, 358, 376, 377, 410, 411, 436, 498, 502, 514, 574, 577, 580, 581, 582, 583, 623, 624, 651, 977, 985, 988, 989, 990, 991, 992, 993, 994, 1450, 368, 417, 25, 168, 727, 584, 137, 152, 729, 664, 1561, 1101, 665, 666, 709, 710, 1294, 665, 697, 698, 1450, 665, 702, 703, 1450, 665, 705, 706, 1445, 1446, 664, 665, 700, 1447, 1295, 889, 889, 868, 385, 212, 1336, 1336, 666, 862, 1080, 965, 379, 751, 752, 754, 1450, 517, 1585, 379, 1441, 276, 891, 896, 897, 898, 966, 896, 666, 956, 715, 717, 719, 665, 666, 277, 1293, 1207, 665, 1207, 576, 664, 1002, 1003, 1003, 664, 997, 664, 995, 996, 1002, 1003, 247, 997, 247, 665, 665, 665, 665, 665, 1207, 1207, 665, 665, 666, 665, 48, 496, 1233, 666, 666, 665, 666, 665, 249, 1223, 1224, 665, 665, 665, 665, 666, 665, 665, 1207, 665, 194, 665, 665, 666, 665, 666, 666, 665, 1207, 665, 1207, 665, 1207, 665, 665, 665, 664, 1026, 1026, 22, 131, 476, 657, 1028, 1029, 1030, 666, 666, 665, 1275, 1203, 1548, 1195, 665, 1538, 1542, 1450, 665, 1239, 1209, 665, 666, 665, 665, 1119, 1120, 1121, 194, 638, 1384, 56, 66, 76, 90, 91, 92, 106, 335, 352, 473, 490, 552, 569, 791, 790, 665, 666, 1515, 672, 672, 584, 584, 584, 664, 1343, 379, 1341, 1341, 1181, 1441, 1185, 231, 1187, 1404, 665, 666, 905, 402, 922, 923, 1295, 907, 1453, 1203, 664, 1331, 1332, 665, 665, 666, 672, 125, 1207, 1338, 1339, 1340, 666, 778, 386, 1514, 197, 197, 197, 153, 164, 387, 572, 1412, 1413, 279, 1414, 1207, 1279, 1436, 1207, 1284, 1475, 1289, 1289, 1370, 1542, 1245, 1253, 258, 258, 1245, 1253, 1207, 1207, 664, 1344, 1284, 1340, 1046, 1046, 1261, 120, 1447, 859, 403, 664, 1104, 1207, 1068, 1053, 664, 1052, 1052, 125, 125, 975, 1159, 1110, 1018, 567, 977, 1095, 1283, 1440, 1107, 1109, 1097, 1388, 968, 664, 1039, 1002, 1002, 1003, 997, 995, 415, 986, 995, 995, 23, 35, 49, 602, 1011, 1022, 1023, 1024, 62, 623, 989, 991, 1024, 1024, 62, 624, 624, 627, 995, 987, 1003, 997, 997, 1024, 1002, 1003, 27, 71, 75, 77, 125, 373, 379, 419, 498, 548, 605, 1005, 1006, 1007, 1019, 1037, 1213, 627, 1002, 1024, 35, 1002, 1025, 1002, 1002, 1003, 664, 996, 1004, 672, 417, 1207, 1207, 379, 733, 740, 379, 77, 734, 1450, 1562, 21, 665, 1266, 665, 666, 665, 666, 665, 666, 672, 665, 666, 698, 665, 666, 664, 1450, 889, 889, 862, 517, 489, 665, 666, 753, 1447, 239, 249, 394, 755, 756, 757, 758, 1441, 1441, 945, 665, 231, 457, 893, 1410, 956, 664, 664, 664, 1450, 1292, 1269, 1207, 122, 291, 374, 595, 1024, 374, 374, 1269, 1269, 1207, 1235, 1435, 1427, 665, 1207, 1207, 1239, 44, 356, 665, 638, 1225, 1207, 1269, 1207, 1207, 1207, 1207, 665, 665, 665, 1295, 665, 1036, 1031, 1029, 1031, 1032, 1294, 1278, 665, 1239, 1121, 1120, 1385, 434, 1519, 638, 1522, 659, 659, 1515, 1515, 1515, 1339, 1341, 147, 1187, 270, 1410, 909, 216, 264, 924, 665, 666, 665, 1195, 1537, 1331, 1332, 1433, 1450, 665, 666, 1337, 197, 1514, 1514, 1514, 48, 48, 153, 48, 1413, 538, 572, 1415, 1416, 1288, 639, 640, 666, 1280, 1289, 665, 712, 379, 616, 1253, 1253, 379, 616, 1268, 1293, 194, 1259, 1259, 1295, 922, 665, 664, 664, 1066, 1067, 1450, 664, 664, 115, 577, 580, 657, 658, 1429, 1430, 1125, 1441, 1117, 1164, 1108, 1151, 665, 1040, 1450, 320, 1041, 510, 608, 652, 999, 1000, 1001, 664, 999, 999, 35, 23, 602, 1011, 35, 1012, 1024, 627, 999, 664, 1024, 999, 1017, 125, 148, 187, 1447, 1009, 1010, 1429, 610, 125, 125, 139, 333, 264, 71, 1007, 203, 978, 264, 373, 1024, 1025, 1024, 1025, 999, 374, 999, 1450, 1269, 512, 1447, 143, 1090, 665, 666, 1563, 1564, 710, 698, 703, 1450, 706, 666, 664, 723, 1447, 727, 1579, 754, 985, 1008, 665, 666, 753, 194, 665, 665, 954, 21, 946, 1066, 1066, 1066, 665, 665, 665, 665, 665, 665, 666, 665, 665, 665, 666, 665, 666, 665, 343, 266, 429, 665, 665, 665, 665, 665, 665, 1027, 665, 666, 1276, 665, 175, 286, 210, 1520, 1520, 1520, 665, 264, 246, 664, 912, 906, 925, 1450, 923, 1340, 1514, 1427, 1427, 48, 1427, 48, 48, 1416, 1436, 421, 1300, 1207, 664, 1207, 664, 665, 212, 258, 389, 664, 664, 665, 1066, 1066, 665, 666, 1287, 664, 1066, 1066, 1431, 1431, 1098, 1099, 1125, 246, 665, 666, 198, 401, 511, 379, 1042, 1001, 1070, 1427, 1012, 1025, 1070, 1009, 622, 1017, 15, 21, 728, 735, 736, 1450, 494, 664, 1565, 1569, 698, 698, 665, 732, 733, 474, 1018, 1586, 757, 1450, 149, 892, 896, 664, 945, 665, 665, 665, 374, 1435, 1207, 343, 173, 665, 1294, 1284, 386, 638, 1521, 1521, 1521, 610, 567, 919, 915, 664, 621, 926, 1427, 1427, 1427, 16, 1305, 1306, 1268, 1268, 48, 48, 1265, 1267, 665, 665, 77, 263, 1054, 1057, 1060, 1061, 1062, 1067, 374, 665, 665, 664, 1450, 130, 610, 665, 666, 665, 664, 539, 730, 54, 68, 182, 230, 257, 271, 382, 475, 737, 796, 798, 799, 800, 802, 803, 804, 805, 806, 807, 809, 817, 818, 821, 832, 835, 837, 838, 1444, 1451, 1455, 1570, 664, 1567, 1568, 638, 1571, 1566, 665, 666, 729, 1580, 742, 1008, 485, 1537, 893, 945, 894, 1054, 638, 1055, 1059, 1061, 1064, 1056, 1058, 1061, 1063, 665, 665, 665, 1289, 210, 321, 322, 326, 327, 1523, 1524, 1343, 1441, 665, 555, 920, 917, 918, 1450, 249, 273, 77, 111, 235, 323, 341, 365, 565, 942, 943, 944, 1364, 664, 1202, 665, 665, 665, 665, 1038, 1054, 1447, 1336, 1062, 1287, 665, 1055, 1056, 922, 52, 370, 471, 502, 1043, 1043, 1024, 1427, 1024, 984, 1207, 155, 731, 819, 822, 1450, 197, 364, 810, 797, 1451, 1451, 1450, 801, 679, 293, 456, 637, 841, 32, 839, 673, 1192, 1567, 665, 1569, 53, 64, 283, 1535, 698, 734, 1008, 134, 743, 744, 1213, 1587, 191, 414, 1572, 1573, 665, 1535, 716, 399, 718, 1064, 720, 1063, 1300, 386, 1294, 1294, 1294, 1294, 1524, 1251, 1295, 665, 666, 928, 575, 1336, 136, 136, 1336, 1336, 1336, 1336, 664, 937, 944, 158, 374, 1301, 1302, 1294, 665, 6, 125, 373, 379, 379, 665, 1207, 1207, 635, 824, 828, 197, 1450, 812, 813, 1207, 760, 795, 796, 798, 800, 802, 804, 805, 806, 807, 809, 817, 832, 835, 837, 760, 842, 840, 833, 836, 665, 1537, 64, 386, 64, 665, 143, 1581, 134, 795, 1452, 1575, 895, 1119, 1444, 1119, 1119, 1202, 1405, 916, 918, 664, 930, 932, 927, 1447, 1336, 1336, 1297, 1297, 1295, 1450, 556, 938, 939, 1336, 665, 666, 610, 130, 549, 630, 982, 820, 829, 150, 828, 831, 246, 154, 1207, 154, 795, 670, 609, 1207, 761, 841, 839, 386, 386, 735, 742, 795, 1537, 1014, 920, 664, 931, 932, 933, 328, 929, 932, 1447, 1447, 940, 665, 666, 961, 1302, 1043, 1043, 77, 373, 605, 979, 980, 981, 1037, 1213, 635, 823, 825, 1207, 760, 154, 808, 230, 814, 293, 670, 844, 843, 124, 759, 762, 834, 1451, 834, 1582, 1406, 665, 666, 328, 935, 936, 1210, 941, 1452, 939, 1447, 264, 981, 264, 373, 826, 825, 831, 830, 54, 811, 1450, 576, 1207, 143, 95, 172, 766, 792, 1450, 154, 795, 670, 795, 483, 1417, 932, 666, 934, 942, 1207, 154, 576, 666, 760, 845, 760, 215, 666, 763, 86, 105, 670, 228, 1411, 936, 665, 827, 54, 760, 1450, 815, 154, 154, 194, 1450, 1008, 194, 194, 48, 1414, 576, 150, 151, 816, 456, 637, 764, 125, 793, 769, 770, 1294, 765, 1427, 231, 1418, 760, 760, 812, 522, 524, 767, 768, 769, 772, 1213, 1450, 794, 1188, 374, 664, 1420, 666, 795, 196, 1207, 279, 483, 1419, 665, 671, 1421, 1422, 1438, 502, 1423, 768, 1452, 665, 666, 1424, 1425, 1438, 1422, 666, 1335, 1425, 1340 }; /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ static const yytype_uint16 yyr1[] = { 0, 674, 675, 676, 675, 675, 677, 677, 678, 678, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 679, 680, 681, 681, 682, 683, 683, 685, 684, 686, 686, 687, 687, 688, 690, 689, 692, 691, 693, 691, 694, 694, 695, 695, 695, 695, 695, 695, 695, 696, 696, 697, 697, 698, 699, 699, 700, 700, 701, 701, 702, 702, 703, 704, 704, 705, 705, 706, 707, 707, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 708, 709, 709, 709, 710, 711, 711, 711, 711, 712, 712, 714, 713, 715, 716, 713, 717, 718, 713, 719, 720, 713, 721, 713, 722, 713, 713, 713, 713, 713, 723, 723, 724, 724, 724, 724, 724, 724, 724, 726, 725, 728, 727, 727, 729, 729, 729, 729, 730, 730, 731, 731, 732, 732, 733, 733, 734, 734, 736, 735, 737, 737, 737, 737, 737, 737, 737, 737, 737, 737, 737, 737, 737, 738, 739, 740, 740, 741, 741, 742, 742, 743, 743, 743, 743, 743, 743, 743, 744, 744, 744, 745, 745, 747, 746, 748, 748, 749, 749, 750, 750, 751, 751, 752, 752, 753, 754, 755, 755, 756, 756, 757, 758, 758, 758, 758, 759, 759, 760, 760, 761, 761, 763, 762, 762, 764, 762, 765, 762, 766, 766, 767, 767, 768, 769, 769, 770, 771, 771, 772, 772, 772, 772, 772, 773, 774, 774, 775, 775, 776, 776, 777, 777, 778, 778, 778, 779, 779, 779, 779, 779, 779, 779, 779, 779, 779, 779, 779, 780, 781, 782, 782, 782, 783, 783, 784, 784, 785, 786, 786, 787, 787, 788, 789, 789, 790, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 791, 792, 792, 793, 794, 793, 795, 795, 795, 795, 795, 795, 795, 795, 795, 795, 795, 795, 795, 797, 796, 799, 798, 801, 800, 803, 802, 804, 805, 806, 808, 807, 809, 810, 810, 810, 811, 811, 813, 814, 815, 812, 816, 816, 816, 817, 817, 819, 820, 818, 822, 821, 823, 823, 824, 824, 826, 827, 825, 829, 830, 828, 831, 831, 833, 832, 834, 834, 836, 835, 838, 837, 840, 839, 841, 842, 843, 841, 844, 845, 841, 846, 846, 847, 847, 847, 848, 849, 850, 851, 851, 852, 852, 853, 854, 855, 855, 857, 856, 858, 858, 858, 859, 859, 859, 860, 860, 861, 861, 861, 862, 862, 862, 862, 862, 862, 862, 862, 862, 863, 863, 864, 864, 864, 865, 865, 865, 865, 865, 866, 866, 867, 867, 867, 868, 868, 868, 868, 868, 868, 868, 869, 869, 870, 870, 870, 871, 871, 871, 872, 873, 874, 875, 876, 877, 877, 877, 878, 879, 880, 881, 882, 883, 884, 885, 886, 887, 888, 888, 889, 889, 890, 890, 890, 890, 891, 892, 891, 893, 894, 893, 895, 893, 896, 897, 897, 899, 898, 901, 900, 902, 903, 904, 903, 903, 903, 903, 903, 905, 905, 906, 906, 907, 907, 908, 908, 909, 910, 911, 912, 913, 913, 914, 915, 914, 916, 914, 917, 917, 918, 919, 920, 920, 921, 921, 922, 922, 924, 923, 925, 926, 927, 926, 928, 926, 929, 929, 930, 930, 931, 931, 933, 934, 932, 935, 935, 936, 936, 937, 937, 938, 938, 940, 939, 941, 942, 942, 943, 943, 944, 944, 944, 944, 944, 944, 944, 944, 945, 946, 946, 947, 947, 948, 948, 949, 949, 950, 950, 951, 951, 952, 953, 953, 954, 954, 955, 955, 956, 956, 956, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 958, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 957, 959, 960, 961, 962, 963, 963, 963, 963, 963, 963, 964, 964, 964, 965, 965, 965, 965, 966, 967, 967, 968, 968, 969, 969, 970, 970, 970, 970, 970, 970, 971, 971, 972, 973, 973, 974, 976, 975, 977, 977, 978, 978, 979, 979, 980, 980, 981, 981, 981, 981, 981, 981, 982, 982, 982, 983, 984, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 985, 986, 985, 987, 985, 985, 985, 985, 988, 988, 988, 988, 988, 988, 988, 988, 989, 990, 990, 991, 991, 992, 992, 992, 992, 992, 993, 993, 993, 993, 993, 994, 994, 994, 995, 995, 995, 996, 997, 997, 998, 998, 998, 999, 999, 1000, 1000, 1001, 1001, 1001, 1002, 1002, 1002, 1002, 1003, 1003, 1004, 1004, 1005, 1005, 1006, 1006, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1007, 1008, 1009, 1010, 1010, 1011, 1011, 1012, 1012, 1013, 1013, 1014, 1014, 1015, 1015, 1016, 1016, 1017, 1018, 1018, 1019, 1019, 1020, 1020, 1021, 1021, 1022, 1022, 1022, 1023, 1023, 1023, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1025, 1025, 1027, 1026, 1028, 1028, 1029, 1030, 1030, 1030, 1030, 1031, 1032, 1033, 1033, 1034, 1035, 1035, 1036, 1036, 1037, 1037, 1038, 1039, 1039, 1040, 1040, 1041, 1041, 1041, 1041, 1042, 1042, 1042, 1042, 1042, 1043, 1043, 1043, 1043, 1043, 1044, 1045, 1045, 1046, 1046, 1047, 1047, 1048, 1048, 1048, 1049, 1049, 1050, 1051, 1052, 1053, 1053, 1054, 1054, 1055, 1055, 1056, 1056, 1057, 1057, 1058, 1058, 1059, 1059, 1060, 1060, 1061, 1061, 1062, 1062, 1063, 1064, 1064, 1065, 1065, 1065, 1066, 1066, 1067, 1067, 1068, 1068, 1069, 1069, 1070, 1070, 1072, 1071, 1073, 1071, 1071, 1074, 1071, 1075, 1071, 1076, 1071, 1077, 1071, 1078, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1071, 1079, 1080, 1080, 1081, 1081, 1082, 1082, 1082, 1082, 1082, 1082, 1083, 1084, 1084, 1085, 1085, 1086, 1086, 1086, 1086, 1087, 1088, 1088, 1088, 1088, 1089, 1089, 1090, 1090, 1091, 1091, 1092, 1092, 1092, 1092, 1092, 1093, 1093, 1093, 1093, 1094, 1094, 1094, 1094, 1094, 1095, 1094, 1094, 1096, 1094, 1097, 1094, 1094, 1094, 1094, 1094, 1094, 1094, 1098, 1098, 1099, 1099, 1100, 1101, 1101, 1103, 1102, 1104, 1104, 1104, 1106, 1105, 1107, 1108, 1107, 1109, 1109, 1110, 1111, 1111, 1111, 1112, 1112, 1113, 1114, 1114, 1114, 1115, 1114, 1116, 1117, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1118, 1118, 1118, 1119, 1119, 1119, 1119, 1119, 1120, 1120, 1121, 1121, 1122, 1122, 1123, 1123, 1124, 1124, 1124, 1125, 1125, 1125, 1126, 1126, 1126, 1126, 1127, 1127, 1128, 1128, 1129, 1131, 1130, 1132, 1133, 1133, 1134, 1134, 1135, 1135, 1135, 1136, 1137, 1137, 1138, 1138, 1139, 1139, 1140, 1140, 1141, 1141, 1142, 1142, 1143, 1143, 1144, 1144, 1145, 1145, 1145, 1145, 1145, 1147, 1146, 1148, 1148, 1148, 1150, 1149, 1151, 1151, 1152, 1152, 1153, 1153, 1153, 1155, 1154, 1156, 1158, 1157, 1159, 1159, 1160, 1160, 1161, 1161, 1161, 1161, 1161, 1161, 1163, 1162, 1164, 1164, 1164, 1166, 1165, 1165, 1167, 1167, 1168, 1168, 1169, 1171, 1170, 1172, 1172, 1173, 1173, 1174, 1175, 1176, 1176, 1178, 1177, 1179, 1179, 1180, 1180, 1181, 1182, 1184, 1183, 1185, 1186, 1186, 1187, 1187, 1188, 1189, 1189, 1190, 1190, 1191, 1191, 1192, 1192, 1192, 1194, 1193, 1195, 1196, 1197, 1197, 1198, 1198, 1199, 1199, 1200, 1200, 1201, 1201, 1201, 1202, 1202, 1202, 1203, 1203, 1203, 1204, 1204, 1205, 1205, 1205, 1205, 1205, 1206, 1206, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1207, 1208, 1208, 1208, 1208, 1208, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1211, 1211, 1212, 1212, 1213, 1213, 1214, 1214, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1216, 1216, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1221, 1222, 1222, 1223, 1223, 1224, 1224, 1225, 1225, 1226, 1226, 1227, 1227, 1228, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1229, 1230, 1231, 1231, 1231, 1232, 1232, 1233, 1233, 1234, 1234, 1235, 1235, 1236, 1237, 1237, 1237, 1237, 1237, 1237, 1237, 1237, 1237, 1237, 1237, 1237, 1238, 1238, 1239, 1239, 1240, 1240, 1241, 1241, 1242, 1242, 1243, 1243, 1244, 1244, 1245, 1245, 1246, 1247, 1247, 1248, 1248, 1249, 1249, 1249, 1249, 1249, 1249, 1249, 1249, 1249, 1249, 1249, 1249, 1250, 1250, 1250, 1251, 1251, 1252, 1253, 1253, 1253, 1254, 1254, 1256, 1255, 1257, 1258, 1258, 1259, 1259, 1259, 1259, 1260, 1260, 1261, 1261, 1262, 1262, 1263, 1263, 1264, 1265, 1265, 1266, 1266, 1267, 1267, 1268, 1268, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1269, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1270, 1271, 1271, 1271, 1271, 1272, 1272, 1272, 1273, 1273, 1274, 1274, 1275, 1275, 1276, 1276, 1277, 1277, 1278, 1278, 1279, 1279, 1280, 1280, 1280, 1281, 1282, 1282, 1283, 1284, 1284, 1285, 1286, 1286, 1287, 1287, 1288, 1288, 1289, 1289, 1290, 1291, 1291, 1291, 1292, 1292, 1292, 1292, 1292, 1293, 1293, 1294, 1294, 1294, 1294, 1294, 1294, 1295, 1295, 1295, 1295, 1295, 1296, 1296, 1296, 1296, 1296, 1297, 1297, 1297, 1297, 1298, 1299, 1299, 1300, 1300, 1301, 1301, 1301, 1302, 1303, 1303, 1304, 1304, 1305, 1305, 1306, 1307, 1307, 1307, 1308, 1309, 1311, 1310, 1312, 1313, 1310, 1310, 1310, 1310, 1310, 1310, 1314, 1310, 1310, 1310, 1310, 1310, 1310, 1315, 1315, 1316, 1317, 1317, 1318, 1318, 1319, 1319, 1320, 1320, 1321, 1321, 1321, 1322, 1322, 1323, 1323, 1323, 1324, 1324, 1324, 1325, 1325, 1325, 1325, 1326, 1326, 1327, 1327, 1328, 1328, 1328, 1329, 1329, 1329, 1330, 1330, 1331, 1332, 1332, 1333, 1333, 1334, 1334, 1335, 1335, 1336, 1336, 1337, 1338, 1338, 1339, 1339, 1340, 1340, 1341, 1341, 1342, 1343, 1343, 1344, 1345, 1345, 1346, 1346, 1346, 1347, 1347, 1348, 1348, 1349, 1349, 1349, 1351, 1350, 1352, 1352, 1353, 1353, 1354, 1354, 1355, 1355, 1355, 1355, 1355, 1355, 1355, 1355, 1355, 1356, 1356, 1358, 1357, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1360, 1359, 1361, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1359, 1362, 1362, 1362, 1363, 1363, 1364, 1364, 1365, 1365, 1366, 1366, 1367, 1367, 1368, 1368, 1369, 1369, 1370, 1370, 1370, 1371, 1371, 1371, 1373, 1372, 1374, 1372, 1375, 1375, 1375, 1375, 1375, 1375, 1376, 1376, 1377, 1377, 1377, 1377, 1378, 1378, 1378, 1380, 1379, 1382, 1383, 1381, 1381, 1384, 1384, 1385, 1384, 1386, 1386, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1387, 1388, 1388, 1390, 1389, 1391, 1391, 1393, 1392, 1392, 1392, 1394, 1394, 1396, 1395, 1397, 1398, 1398, 1399, 1400, 1400, 1400, 1401, 1403, 1404, 1405, 1406, 1402, 1407, 1407, 1408, 1408, 1409, 1409, 1409, 1410, 1410, 1410, 1411, 1411, 1412, 1412, 1413, 1413, 1413, 1413, 1414, 1414, 1415, 1415, 1416, 1416, 1417, 1417, 1418, 1418, 1419, 1419, 1420, 1420, 1420, 1421, 1421, 1422, 1422, 1423, 1423, 1424, 1424, 1425, 1426, 1426, 1426, 1426, 1427, 1427, 1427, 1428, 1429, 1429, 1429, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1430, 1431, 1431, 1431, 1431, 1431, 1432, 1432, 1432, 1433, 1433, 1434, 1434, 1435, 1436, 1436, 1437, 1437, 1438, 1438, 1439, 1439, 1439, 1440, 1440, 1440, 1440, 1441, 1441, 1441, 1442, 1442, 1443, 1444, 1444, 1445, 1446, 1447, 1448, 1449, 1450, 1450, 1451, 1451, 1452, 1452, 1452, 1453, 1453, 1453, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1454, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1455, 1456, 1457, 1457, 1457, 1457, 1457, 1457, 1457, 1458, 1458, 1459, 1459, 1460, 1460, 1461, 1461, 1462, 1462, 1462, 1463, 1463, 1463, 1463, 1464, 1464, 1464, 1464, 1465, 1466, 1466, 1466, 1466, 1466, 1466, 1467, 1467, 1467, 1468, 1468, 1469, 1470, 1470, 1471, 1472, 1472, 1473, 1473, 1474, 1474, 1474, 1474, 1475, 1476, 1476, 1476, 1476, 1476, 1478, 1477, 1479, 1479, 1480, 1480, 1481, 1482, 1482, 1482, 1482, 1484, 1483, 1485, 1486, 1487, 1488, 1488, 1489, 1488, 1490, 1490, 1491, 1491, 1492, 1492, 1492, 1492, 1493, 1492, 1494, 1494, 1494, 1494, 1494, 1496, 1495, 1497, 1497, 1497, 1497, 1497, 1499, 1498, 1500, 1500, 1500, 1500, 1501, 1501, 1502, 1502, 1503, 1503, 1504, 1504, 1506, 1505, 1507, 1505, 1508, 1505, 1509, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1505, 1510, 1510, 1511, 1511, 1512, 1512, 1512, 1513, 1513, 1513, 1513, 1514, 1514, 1515, 1515, 1516, 1516, 1516, 1516, 1516, 1516, 1517, 1517, 1518, 1518, 1519, 1520, 1520, 1520, 1520, 1520, 1521, 1521, 1522, 1522, 1523, 1523, 1524, 1524, 1524, 1524, 1524, 1526, 1525, 1527, 1527, 1528, 1528, 1528, 1529, 1529, 1529, 1530, 1530, 1531, 1532, 1532, 1533, 1534, 1535, 1535, 1536, 1537, 1537, 1537, 1538, 1538, 1539, 1540, 1540, 1541, 1541, 1541, 1542, 1542, 1543, 1543, 1545, 1544, 1546, 1546, 1547, 1547, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1548, 1549, 1549, 1549, 1550, 1550, 1550, 1550, 1550, 1551, 1551, 1551, 1551, 1551, 1551, 1552, 1552, 1553, 1554, 1555, 1555, 1555, 1556, 1557, 1557, 1557, 1558, 1558, 1558, 1560, 1559, 1561, 1561, 1562, 1562, 1564, 1563, 1566, 1565, 1565, 1568, 1567, 1567, 1570, 1569, 1571, 1571, 1571, 1571, 1572, 1572, 1573, 1573, 1575, 1574, 1576, 1576, 1578, 1579, 1580, 1581, 1582, 1577, 1584, 1585, 1586, 1587, 1583, 1588, 1588, 1588, 1588, 1588, 1588, 1589, 1589, 1590, 1590, 1590, 1591, 1591, 1592, 1592, 1592, 1593, 1593, 1594, 1594, 1594, 1595, 1596 }; /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN. */ static const yytype_uint8 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, 3, 1, 1, 4, 1, 2, 0, 4, 0, 2, 3, 1, 2, 0, 3, 0, 6, 0, 5, 1, 3, 3, 3, 3, 3, 3, 3, 3, 2, 3, 1, 3, 1, 2, 3, 5, 7, 2, 3, 1, 3, 3, 2, 3, 1, 3, 1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 3, 1, 0, 1, 3, 1, 3, 3, 3, 3, 0, 3, 0, 7, 0, 0, 14, 0, 0, 14, 0, 0, 14, 0, 6, 0, 3, 8, 4, 3, 11, 1, 3, 2, 2, 2, 2, 2, 2, 2, 0, 12, 0, 6, 2, 0, 1, 3, 1, 0, 2, 0, 2, 0, 1, 3, 4, 0, 2, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 3, 1, 0, 2, 0, 2, 2, 2, 2, 2, 3, 3, 1, 1, 1, 2, 3, 3, 0, 4, 0, 3, 0, 1, 3, 1, 0, 1, 3, 1, 0, 3, 0, 1, 3, 1, 4, 0, 1, 1, 1, 0, 3, 2, 3, 0, 3, 0, 5, 5, 0, 7, 0, 6, 1, 1, 1, 3, 1, 1, 1, 3, 0, 1, 1, 1, 1, 2, 1, 3, 1, 1, 0, 1, 0, 2, 3, 5, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 4, 0, 1, 1, 1, 3, 1, 3, 3, 1, 2, 1, 1, 1, 1, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 0, 0, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 5, 0, 2, 0, 3, 0, 2, 2, 2, 2, 0, 6, 2, 0, 2, 1, 1, 3, 0, 0, 0, 7, 0, 2, 2, 1, 1, 0, 0, 8, 0, 6, 1, 2, 1, 2, 0, 0, 6, 0, 0, 6, 0, 2, 0, 5, 0, 1, 0, 5, 0, 2, 0, 5, 4, 0, 0, 8, 0, 0, 8, 1, 1, 1, 1, 1, 2, 4, 5, 0, 4, 4, 4, 3, 3, 2, 2, 0, 2, 1, 2, 3, 1, 1, 1, 0, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 2, 3, 1, 1, 1, 1, 1, 0, 1, 1, 2, 3, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 2, 3, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 2, 3, 3, 3, 3, 3, 3, 3, 3, 4, 3, 1, 1, 1, 1, 2, 3, 2, 4, 5, 0, 5, 0, 0, 5, 0, 7, 1, 0, 1, 0, 3, 0, 3, 5, 6, 0, 4, 2, 2, 2, 2, 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, 6, 1, 0, 0, 5, 0, 4, 1, 1, 1, 3, 1, 3, 0, 0, 5, 1, 3, 1, 1, 0, 3, 1, 3, 0, 4, 1, 0, 1, 2, 1, 3, 4, 3, 3, 3, 4, 4, 3, 4, 0, 1, 0, 1, 1, 2, 1, 1, 0, 1, 1, 2, 1, 0, 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, 3, 0, 6, 1, 1, 3, 4, 4, 3, 2, 2, 3, 3, 4, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 2, 2, 7, 8, 8, 8, 8, 2, 0, 1, 4, 0, 1, 2, 0, 3, 2, 9, 0, 2, 0, 1, 2, 1, 1, 2, 2, 2, 1, 2, 0, 1, 1, 4, 1, 3, 3, 3, 1, 2, 1, 1, 3, 2, 3, 2, 2, 1, 3, 3, 2, 3, 1, 2, 2, 2, 1, 2, 1, 1, 1, 2, 3, 2, 3, 2, 2, 3, 3, 3, 0, 6, 0, 6, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 2, 1, 2, 3, 2, 1, 1, 1, 1, 1, 1, 1, 2, 0, 1, 1, 5, 0, 3, 0, 2, 3, 0, 1, 2, 1, 1, 1, 1, 3, 3, 3, 3, 0, 1, 0, 1, 0, 1, 2, 1, 1, 2, 2, 3, 1, 3, 2, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 2, 1, 1, 1, 1, 1, 0, 2, 1, 1, 1, 1, 1, 0, 2, 0, 2, 1, 1, 0, 1, 1, 2, 2, 1, 2, 2, 0, 1, 1, 1, 3, 1, 3, 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, 1, 2, 2, 1, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 1, 2, 0, 1, 0, 1, 0, 1, 1, 2, 1, 2, 1, 2, 2, 2, 3, 2, 1, 1, 1, 1, 3, 1, 1, 1, 4, 2, 1, 4, 0, 1, 0, 2, 1, 3, 0, 5, 0, 5, 7, 0, 5, 0, 5, 0, 5, 0, 4, 0, 10, 3, 4, 3, 3, 7, 5, 5, 1, 4, 0, 1, 1, 2, 2, 2, 1, 4, 2, 2, 3, 0, 2, 2, 1, 2, 2, 2, 2, 3, 0, 3, 1, 4, 0, 3, 0, 2, 0, 1, 1, 2, 2, 1, 3, 0, 1, 1, 3, 2, 2, 1, 3, 4, 0, 6, 4, 0, 5, 0, 6, 4, 3, 1, 7, 4, 4, 0, 1, 2, 2, 2, 1, 1, 0, 5, 0, 3, 2, 0, 5, 0, 0, 6, 1, 3, 1, 1, 3, 3, 1, 3, 2, 3, 2, 4, 0, 6, 0, 0, 7, 4, 4, 3, 3, 2, 2, 6, 5, 3, 5, 5, 1, 1, 1, 2, 1, 1, 1, 0, 1, 1, 2, 2, 3, 3, 3, 3, 0, 1, 0, 1, 0, 1, 1, 0, 2, 1, 0, 1, 1, 1, 2, 2, 2, 4, 3, 0, 4, 3, 0, 1, 1, 3, 3, 2, 2, 4, 0, 3, 0, 3, 0, 3, 0, 3, 0, 1, 1, 3, 1, 1, 0, 2, 1, 3, 3, 3, 1, 0, 5, 0, 1, 1, 0, 6, 0, 1, 1, 2, 1, 1, 1, 0, 5, 2, 0, 5, 0, 1, 1, 2, 1, 1, 1, 1, 1, 2, 0, 5, 0, 1, 1, 0, 4, 4, 3, 5, 1, 3, 3, 0, 6, 1, 1, 1, 3, 2, 3, 1, 1, 0, 6, 1, 1, 1, 3, 3, 4, 0, 5, 1, 0, 4, 0, 2, 1, 3, 4, 2, 3, 3, 3, 4, 3, 11, 0, 3, 8, 2, 0, 1, 1, 1, 0, 1, 2, 1, 1, 1, 1, 0, 2, 4, 3, 1, 1, 1, 2, 0, 2, 2, 1, 1, 0, 2, 3, 3, 3, 2, 3, 4, 3, 4, 3, 4, 1, 3, 4, 3, 6, 1, 5, 6, 5, 7, 6, 8, 5, 6, 4, 4, 5, 3, 4, 1, 3, 3, 3, 3, 3, 3, 5, 5, 3, 3, 3, 3, 3, 3, 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, 3, 2, 2, 2, 2, 3, 3, 5, 6, 4, 4, 7, 2, 6, 5, 6, 6, 4, 4, 5, 3, 3, 4, 6, 2, 4, 4, 4, 10, 6, 8, 6, 4, 4, 6, 4, 4, 4, 6, 4, 7, 7, 7, 6, 6, 6, 6, 3, 4, 6, 8, 2, 2, 8, 8, 6, 6, 1, 6, 6, 8, 8, 6, 8, 6, 2, 8, 8, 2, 2, 2, 4, 4, 4, 4, 3, 8, 6, 8, 4, 6, 4, 4, 6, 8, 4, 3, 6, 4, 6, 5, 8, 7, 10, 1, 6, 4, 4, 4, 4, 4, 6, 4, 4, 6, 2, 3, 0, 4, 0, 3, 0, 1, 1, 3, 2, 4, 5, 4, 4, 4, 6, 4, 5, 4, 5, 4, 5, 4, 5, 4, 4, 4, 4, 4, 5, 7, 2, 3, 1, 4, 0, 1, 0, 2, 0, 3, 3, 1, 2, 2, 3, 2, 1, 2, 1, 2, 1, 2, 2, 2, 1, 0, 1, 1, 3, 1, 3, 1, 3, 0, 1, 0, 2, 4, 5, 1, 1, 1, 1, 4, 1, 3, 3, 3, 5, 5, 7, 4, 7, 9, 6, 7, 9, 6, 1, 2, 2, 0, 1, 4, 4, 4, 4, 2, 4, 0, 3, 1, 0, 1, 0, 2, 3, 3, 1, 1, 6, 6, 1, 2, 0, 1, 1, 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, 2, 0, 1, 0, 2, 0, 2, 2, 0, 0, 4, 3, 1, 0, 1, 1, 3, 3, 1, 2, 0, 1, 3, 3, 1, 0, 1, 1, 1, 0, 1, 2, 1, 3, 3, 1, 1, 1, 1, 1, 0, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 5, 0, 1, 3, 1, 3, 1, 2, 1, 0, 1, 2, 5, 2, 1, 3, 0, 0, 7, 0, 0, 8, 4, 6, 4, 4, 5, 0, 6, 4, 4, 4, 5, 4, 1, 3, 1, 1, 3, 0, 2, 0, 1, 0, 1, 1, 2, 3, 1, 1, 8, 9, 8, 6, 7, 6, 0, 1, 1, 1, 1, 1, 0, 1, 1, 3, 4, 1, 3, 4, 3, 1, 2, 2, 4, 1, 1, 3, 1, 1, 1, 0, 1, 3, 0, 1, 3, 1, 1, 1, 0, 5, 9, 3, 1, 3, 0, 1, 8, 6, 7, 0, 2, 0, 2, 1, 1, 1, 0, 4, 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, 6, 2, 2, 0, 6, 0, 7, 5, 2, 1, 5, 5, 2, 2, 1, 4, 3, 2, 3, 2, 2, 1, 3, 4, 3, 3, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 1, 1, 1, 1, 1, 0, 1, 0, 2, 0, 1, 1, 1, 0, 2, 0, 2, 0, 2, 2, 0, 2, 2, 0, 4, 0, 4, 1, 1, 1, 1, 1, 3, 1, 1, 0, 1, 1, 3, 0, 1, 1, 0, 4, 0, 0, 5, 1, 0, 3, 0, 3, 3, 1, 2, 2, 2, 2, 2, 3, 2, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 3, 3, 1, 0, 4, 1, 2, 0, 1, 0, 3, 3, 2, 2, 3, 0, 1, 1, 2, 0, 0, 0, 0, 22, 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, 3, 1, 1, 2, 2, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, 1, 1, 1, 1, 2, 2, 2, 1, 1, 3, 5, 2, 1, 2, 1, 1, 1, 1, 3, 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, 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, 2, 2, 2, 2, 3, 6, 5, 8, 2, 2, 0, 2, 1, 3, 2, 1, 1, 1, 1, 0, 1, 1, 1, 0, 2, 2, 2, 3, 3, 4, 6, 2, 3, 3, 1, 3, 3, 2, 2, 1, 0, 2, 3, 0, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 0, 4, 1, 1, 1, 3, 3, 1, 1, 2, 2, 0, 3, 1, 3, 4, 4, 3, 0, 7, 1, 2, 1, 1, 1, 1, 1, 1, 0, 5, 1, 1, 1, 1, 1, 0, 4, 6, 6, 6, 7, 5, 0, 4, 8, 8, 8, 6, 0, 1, 1, 2, 0, 1, 1, 3, 0, 3, 0, 3, 0, 3, 0, 3, 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, 0, 1, 3, 1, 2, 2, 2, 1, 3, 3, 1, 1, 3, 1, 3, 4, 5, 4, 6, 6, 1, 0, 3, 3, 1, 1, 0, 2, 2, 2, 2, 0, 2, 0, 3, 2, 1, 2, 2, 2, 2, 2, 0, 3, 0, 1, 0, 3, 2, 0, 1, 2, 0, 1, 4, 4, 5, 2, 3, 0, 1, 3, 0, 1, 1, 0, 1, 1, 2, 1, 0, 1, 1, 3, 4, 1, 4, 0, 2, 0, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 3, 1, 2, 1, 2, 3, 3, 3, 0, 3, 3, 0, 7, 0, 3, 1, 3, 0, 3, 0, 3, 4, 0, 2, 3, 0, 3, 0, 3, 4, 4, 1, 1, 0, 2, 0, 12, 7, 6, 0, 0, 0, 0, 0, 14, 0, 0, 0, 0, 11, 4, 4, 3, 4, 3, 3, 0, 2, 1, 3, 5, 1, 1, 0, 1, 1, 0, 2, 0, 1, 3, 5, 3 }; #define yyerrok (yyerrstatus = 0) #define yyclearin (yychar = YYEMPTY) #define YYEMPTY (-2) #define YYEOF 0 #define YYACCEPT goto yyacceptlab #define YYABORT goto yyabortlab #define YYERROR goto yyerrorlab #define YYRECOVERING() (!!yyerrstatus) #define YYBACKUP(Token, Value) \ do \ if (yychar == YYEMPTY) \ { \ yychar = (Token); \ yylval = (Value); \ YYPOPSTACK (yylen); \ yystate = *yyssp; \ goto yybackup; \ } \ else \ { \ yyerror (&yylloc, YYTHD, YY_("syntax error: cannot back up")); \ YYERROR; \ } \ while (0) /* Error token number */ #define YYTERROR 1 #define YYERRCODE 256 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. If N is 0, then set CURRENT to the empty location which ends the previous symbol: RHS[0] (always defined). */ #ifndef YYLLOC_DEFAULT # define YYLLOC_DEFAULT(Current, Rhs, N) \ do \ if (N) \ { \ (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ } \ else \ { \ (Current).first_line = (Current).last_line = \ YYRHSLOC (Rhs, 0).last_line; \ (Current).first_column = (Current).last_column = \ YYRHSLOC (Rhs, 0).last_column; \ } \ while (0) #endif #define YYRHSLOC(Rhs, K) ((Rhs)[K]) /* 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) /* YY_LOCATION_PRINT -- Print the location on the stream. This macro was not mandated originally: define only if we know we won't break user code: when these are the locations we know. */ #ifndef YY_LOCATION_PRINT # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL /* Print *YYLOCP on YYO. Private, do not rely on its existence. */ YY_ATTRIBUTE_UNUSED static unsigned yy_location_print_ (FILE *yyo, YYLTYPE const * const yylocp) { unsigned res = 0; int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0; if (0 <= yylocp->first_line) { res += YYFPRINTF (yyo, "%d", yylocp->first_line); if (0 <= yylocp->first_column) res += YYFPRINTF (yyo, ".%d", yylocp->first_column); } if (0 <= yylocp->last_line) { if (yylocp->first_line < yylocp->last_line) { res += YYFPRINTF (yyo, "-%d", yylocp->last_line); if (0 <= end_col) res += YYFPRINTF (yyo, ".%d", end_col); } else if (0 <= end_col && yylocp->first_column < end_col) res += YYFPRINTF (yyo, "-%d", end_col); } return res; } # define YY_LOCATION_PRINT(File, Loc) \ yy_location_print_ (File, &(Loc)) # else # define YY_LOCATION_PRINT(File, Loc) ((void) 0) # endif #endif # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ do { \ if (yydebug) \ { \ YYFPRINTF (stderr, "%s ", Title); \ yy_symbol_print (stderr, \ Type, Value, Location, YYTHD); \ YYFPRINTF (stderr, "\n"); \ } \ } while (0) /*----------------------------------------. | Print this symbol's value on YYOUTPUT. | `----------------------------------------*/ static void yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, class THD *YYTHD) { FILE *yyo = yyoutput; YYUSE (yyo); YYUSE (yylocationp); YYUSE (YYTHD); if (!yyvaluep) return; # ifdef YYPRINT if (yytype < YYNTOKENS) YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); # endif YYUSE (yytype); } /*--------------------------------. | Print this symbol on YYOUTPUT. | `--------------------------------*/ static void yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, class THD *YYTHD) { YYFPRINTF (yyoutput, "%s %s (", yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]); YY_LOCATION_PRINT (yyoutput, *yylocationp); YYFPRINTF (yyoutput, ": "); yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, YYTHD); YYFPRINTF (yyoutput, ")"); } /*------------------------------------------------------------------. | yy_stack_print -- Print the state stack from its BOTTOM up to its | | TOP (included). | `------------------------------------------------------------------*/ static void yy_stack_print (yytype_int16 *yybottom, yytype_int16 *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 (yytype_int16 *yyssp, YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule, class THD *YYTHD) { unsigned long int yylno = yyrline[yyrule]; int yynrhs = yyr2[yyrule]; int yyi; YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", yyrule - 1, yylno); /* The symbols being reduced. */ for (yyi = 0; yyi < yynrhs; yyi++) { YYFPRINTF (stderr, " $%d = ", yyi + 1); yy_symbol_print (stderr, yystos[yyssp[yyi + 1 - yynrhs]], &(yyvsp[(yyi + 1) - (yynrhs)]) , &(yylsp[(yyi + 1) - (yynrhs)]) , YYTHD); YYFPRINTF (stderr, "\n"); } } # define YY_REDUCE_PRINT(Rule) \ do { \ if (yydebug) \ yy_reduce_print (yyssp, yyvsp, yylsp, Rule, YYTHD); \ } while (0) /* Nonzero means print parse trace. It is left uninitialized so that multiple parsers can coexist. */ int yydebug; #else /* !YYDEBUG */ # define YYDPRINTF(Args) # define YY_SYMBOL_PRINT(Title, Type, 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 #if YYERROR_VERBOSE # ifndef yystrlen # if defined __GLIBC__ && defined _STRING_H # define yystrlen strlen # else /* Return the length of YYSTR. */ static YYSIZE_T yystrlen (const char *yystr) { YYSIZE_T yylen; for (yylen = 0; yystr[yylen]; yylen++) continue; return yylen; } # endif # endif # ifndef yystpcpy # if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE # define yystpcpy stpcpy # else /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in YYDEST. */ static char * yystpcpy (char *yydest, const char *yysrc) { char *yyd = yydest; const char *yys = yysrc; while ((*yyd++ = *yys++) != '\0') continue; return yyd - 1; } # endif # endif # ifndef yytnamerr /* Copy to YYRES the contents of YYSTR after stripping away unnecessary quotes and backslashes, so that it's suitable for yyerror. The heuristic is that double-quoting is unnecessary unless the string contains an apostrophe, a comma, or backslash (other than backslash-backslash). YYSTR is taken from yytname. If YYRES is null, do not copy; instead, return the length of what the result would have been. */ static YYSIZE_T yytnamerr (char *yyres, const char *yystr) { if (*yystr == '"') { YYSIZE_T yyn = 0; char const *yyp = yystr; for (;;) switch (*++yyp) { case '\'': case ',': goto do_not_strip_quotes; case '\\': if (*++yyp != '\\') goto do_not_strip_quotes; /* Fall through. */ default: if (yyres) yyres[yyn] = *yyp; yyn++; break; case '"': if (yyres) yyres[yyn] = '\0'; return yyn; } do_not_strip_quotes: ; } if (! yyres) return yystrlen (yystr); return yystpcpy (yyres, yystr) - yyres; } # endif /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message about the unexpected token YYTOKEN for the state stack whose top is YYSSP. Return 0 if *YYMSG was successfully written. Return 1 if *YYMSG is not large enough to hold the message. In that case, also set *YYMSG_ALLOC to the required number of bytes. Return 2 if the required number of bytes is too large to store. */ static int yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg, yytype_int16 *yyssp, int yytoken) { YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]); YYSIZE_T yysize = yysize0; enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; /* Internationalized format string. */ const char *yyformat = YY_NULLPTR; /* Arguments of yyformat. */ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; /* Number of reported tokens (one for the "unexpected", one per "expected"). */ int yycount = 0; /* There are many possibilities here to consider: - If this state is a consistent state with a default action, then the only way this function was invoked is if the default action is an error action. In that case, don't check for expected tokens because there are none. - The only way there can be no lookahead present (in yychar) is if this state is a consistent state with a default action. Thus, detecting the absence of a lookahead is sufficient to determine that there is no unexpected or expected token to report. In that case, just report a simple "syntax error". - Don't assume there isn't a lookahead just because this state is a consistent state with a default action. There might have been a previous inconsistent state, consistent state with a non-default action, or user semantic action that manipulated yychar. - Of course, the expected token list depends on states to have correct lookahead information, and it depends on the parser not to perform extra reductions after fetching a lookahead from the scanner and before detecting a syntax error. Thus, state merging (from LALR or IELR) and default reductions corrupt the expected token list. However, the list is correct for canonical LR with one exception: it will still contain any token that will not be accepted due to an error action in a later state. */ if (yytoken != YYEMPTY) { int yyn = yypact[*yyssp]; yyarg[yycount++] = yytname[yytoken]; if (!yypact_value_is_default (yyn)) { /* Start YYX at -YYN if negative to avoid negative indexes in YYCHECK. In other words, skip the first -YYN actions for this state because they are default actions. */ int yyxbegin = yyn < 0 ? -yyn : 0; /* Stay within bounds of both yycheck and yytname. */ int yychecklim = YYLAST - yyn + 1; int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; int yyx; for (yyx = yyxbegin; yyx < yyxend; ++yyx) if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR && !yytable_value_is_error (yytable[yyx + yyn])) { if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) { yycount = 1; yysize = yysize0; break; } yyarg[yycount++] = yytname[yyx]; { YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]); if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) return 2; yysize = yysize1; } } } } switch (yycount) { # define YYCASE_(N, S) \ case N: \ yyformat = S; \ break YYCASE_(0, YY_("syntax error")); YYCASE_(1, YY_("syntax error, unexpected %s")); YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s")); YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s")); YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s")); YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s")); # undef YYCASE_ } { YYSIZE_T yysize1 = yysize + yystrlen (yyformat); if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM)) return 2; yysize = yysize1; } if (*yymsg_alloc < yysize) { *yymsg_alloc = 2 * yysize; if (! (yysize <= *yymsg_alloc && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM)) *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM; return 1; } /* Avoid sprintf, as that infringes on the user's name space. Don't have undefined behavior even if the translation produced a string with the wrong number of "%s"s. */ { char *yyp = *yymsg; int yyi = 0; while ((*yyp = *yyformat) != '\0') if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount) { yyp += yytnamerr (yyp, yyarg[yyi++]); yyformat += 2; } else { yyp++; yyformat++; } } return 0; } #endif /* YYERROR_VERBOSE */ /*-----------------------------------------------. | Release the memory associated to this symbol. | `-----------------------------------------------*/ static void yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp, class THD *YYTHD) { YYUSE (yyvaluep); YYUSE (yylocationp); YYUSE (YYTHD); if (!yymsg) yymsg = "Deleting"; YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN YYUSE (yytype); YY_IGNORE_MAYBE_UNINITIALIZED_END } /*----------. | yyparse. | `----------*/ int yyparse (class THD *YYTHD) { /* The lookahead symbol. */ 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); /* Location data for the lookahead symbol. */ static YYLTYPE yyloc_default # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL = { 1, 1, 1, 1 } # endif ; YYLTYPE yylloc = yyloc_default; /* Number of syntax errors so far. */ int yynerrs; int yystate; /* Number of tokens to shift before error messages enabled. */ int yyerrstatus; /* The stacks and their tools: 'yyss': related to states. 'yyvs': related to semantic values. 'yyls': related to locations. Refer to the stacks through separate pointers, to allow yyoverflow to reallocate them elsewhere. */ /* The state stack. */ yytype_int16 yyssa[YYINITDEPTH]; yytype_int16 *yyss; yytype_int16 *yyssp; /* The semantic value stack. */ YYSTYPE yyvsa[YYINITDEPTH]; YYSTYPE *yyvs; YYSTYPE *yyvsp; /* The location stack. */ YYLTYPE yylsa[YYINITDEPTH]; YYLTYPE *yyls; YYLTYPE *yylsp; /* The locations where the error started and ended. */ YYLTYPE yyerror_range[3]; YYSIZE_T yystacksize; int yyn; int yyresult; /* Lookahead token as an internal (translated) token number. */ int yytoken = 0; /* The variables used to return semantic value and location from the action routines. */ YYSTYPE yyval; YYLTYPE yyloc; #if YYERROR_VERBOSE /* Buffer for error messages, and its allocated size. */ char yymsgbuf[128]; char *yymsg = yymsgbuf; YYSIZE_T yymsg_alloc = sizeof yymsgbuf; #endif #define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N)) /* The number of symbols on the RHS of the reduced rule. Keep to zero when no symbol should be popped. */ int yylen = 0; yyssp = yyss = yyssa; yyvsp = yyvs = yyvsa; yylsp = yyls = yylsa; yystacksize = YYINITDEPTH; YYDPRINTF ((stderr, "Starting parse\n")); yystate = 0; yyerrstatus = 0; yynerrs = 0; yychar = YYEMPTY; /* Cause a token to be read. */ yylsp[0] = yylloc; 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: *yyssp = yystate; if (yyss + yystacksize - 1 <= yyssp) { /* Get the current used size of the three stacks, in elements. */ YYSIZE_T yysize = yyssp - yyss + 1; #ifdef 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. */ YYSTYPE *yyvs1 = yyvs; yytype_int16 *yyss1 = yyss; YYLTYPE *yyls1 = yyls; /* 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 * sizeof (*yyssp), &yyvs1, yysize * sizeof (*yyvsp), &yyls1, yysize * sizeof (*yylsp), &yystacksize); yyls = yyls1; yyss = yyss1; yyvs = yyvs1; } #else /* no yyoverflow */ # ifndef YYSTACK_RELOCATE goto yyexhaustedlab; # else /* Extend the stack our own way. */ if (YYMAXDEPTH <= yystacksize) goto yyexhaustedlab; yystacksize *= 2; if (YYMAXDEPTH < yystacksize) yystacksize = YYMAXDEPTH; { yytype_int16 *yyss1 = yyss; union yyalloc *yyptr = (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); if (! yyptr) goto yyexhaustedlab; YYSTACK_RELOCATE (yyss_alloc, yyss); YYSTACK_RELOCATE (yyvs_alloc, yyvs); YYSTACK_RELOCATE (yyls_alloc, yyls); # undef YYSTACK_RELOCATE if (yyss1 != yyssa) YYSTACK_FREE (yyss1); } # endif #endif /* no yyoverflow */ yyssp = yyss + yysize - 1; yyvsp = yyvs + yysize - 1; yylsp = yyls + yysize - 1; YYDPRINTF ((stderr, "Stack size increased to %lu\n", (unsigned long int) yystacksize)); if (yyss + yystacksize - 1 <= yyssp) YYABORT; } YYDPRINTF ((stderr, "Entering state %d\n", yystate)); 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 YYEMPTY or YYEOF or a valid lookahead symbol. */ if (yychar == YYEMPTY) { YYDPRINTF ((stderr, "Reading a token: ")); yychar = yylex (&yylval, &yylloc, YYTHD); } if (yychar <= YYEOF) { yychar = yytoken = YYEOF; YYDPRINTF ((stderr, "Now at end of input.\n")); } 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); /* Discard the shifted token. */ yychar = YYEMPTY; yystate = yyn; YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN *++yyvsp = yylval; YY_IGNORE_MAYBE_UNINITIALIZED_END *++yylsp = yylloc; 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]; /* Default location. */ YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen); YY_REDUCE_PRINT (yyn); switch (yyn) { case 2: #line 1610 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; if (!thd->bootstrap && !thd->m_parser_state->has_comment()) { my_message(ER_EMPTY_QUERY, ER(ER_EMPTY_QUERY), MYF(0)); MYSQL_YYABORT; } thd->lex->sql_command= SQLCOM_EMPTY_QUERY; YYLIP->found_semicolon= NULL; } #line 18864 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 3: #line 1622 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex_input_stream *lip = YYLIP; if (YYTHD->get_protocol()->has_client_capability(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 18891 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 5: #line 1647 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* Single query, not terminated. */ YYLIP->found_semicolon= NULL; } #line 18900 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 20: #line 1675 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MAKE_CMD((yyvsp[0].statement)); } #line 18906 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 22: #line 1677 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { CONTEXTUALIZE((yyvsp[0].select)); } #line 18912 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 31: #line 1686 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MAKE_CMD((yyvsp[0].statement)); } #line 18918 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 46: #line 1701 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MAKE_CMD((yyvsp[0].statement)); } #line 18924 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 52: #line 1707 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { CONTEXTUALIZE((yyvsp[0].select)); } #line 18930 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 53: #line 1708 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { CONTEXTUALIZE((yyvsp[0].set)); } #line 18936 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 56: #line 1711 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MAKE_CMD((yyvsp[0].statement)); } #line 18942 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 62: #line 1717 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MAKE_CMD((yyvsp[0].statement)); } #line 18948 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 65: #line 1724 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->sql_command= SQLCOM_DEALLOCATE_PREPARE; lex->prepared_stmt_name= to_lex_cstring((yyvsp[0].lex_str)); } #line 18959 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 68: #line 1739 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->sql_command= SQLCOM_PREPARE; lex->prepared_stmt_name= to_lex_cstring((yyvsp[-2].lex_str)); /* We don't know know at this time whether there's a password in prepare_src, so we err on the side of caution. Setting the flag will force a rewrite which will obscure all of prepare_src in the "Query" log line. We'll see the actual query (with just the passwords obscured, if any) immediately afterwards in the "Prepare" log lines anyway, and then again in the "Execute" log line if and when prepare_src is executed. */ lex->contains_plaintext_password= true; } #line 18980 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 69: #line 1759 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->prepared_stmt_code= (yyvsp[0].lex_str); lex->prepared_stmt_code_is_varref= FALSE; } #line 18991 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 70: #line 1766 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->prepared_stmt_code= (yyvsp[0].lex_str); lex->prepared_stmt_code_is_varref= TRUE; } #line 19002 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 71: #line 1776 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->sql_command= SQLCOM_EXECUTE; lex->prepared_stmt_name= to_lex_cstring((yyvsp[0].lex_str)); } #line 19013 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 72: #line 1783 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 19019 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 77: #line 1798 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; LEX_STRING *lexstr= (LEX_STRING*)sql_memdup(&(yyvsp[0].lex_str), sizeof(LEX_STRING)); if (!lexstr || lex->prepared_stmt_params.push_back(lexstr)) MYSQL_YYABORT; } #line 19030 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 78: #line 1810 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->sphead) { my_error(ER_SP_BADSTATEMENT, MYF(0), "HELP"); MYSQL_YYABORT; } } #line 19042 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 79: #line 1818 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_HELP; lex->help_arg= (yyvsp[0].lex_str).str; } #line 19052 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 80: #line 1829 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex = Lex; lex->sql_command = SQLCOM_CHANGE_MASTER; /* Clear LEX_MASTER_INFO struct. repl_ignore_server_ids is cleared in THD::cleanup_after_query. So it is guaranteed to be empty here. */ assert(Lex->mi.repl_ignore_server_ids.empty()); lex->mi.set_unspecified(); } #line 19067 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 81: #line 1840 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 19073 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 82: #line 1842 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX* lex= thd->lex; assert(!lex->m_sql_cmd); lex->sql_command = SQLCOM_CHANGE_REPLICATION_FILTER; lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_change_repl_filter(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 19087 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 83: #line 1852 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 19093 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 86: #line 1861 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Sql_cmd_change_repl_filter * filter_sql_cmd= (Sql_cmd_change_repl_filter*) Lex->m_sql_cmd; assert(filter_sql_cmd); filter_sql_cmd->set_filter_value((yyvsp[0].item_list), OPT_REPLICATE_DO_DB); } #line 19104 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 87: #line 1868 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Sql_cmd_change_repl_filter * filter_sql_cmd= (Sql_cmd_change_repl_filter*) Lex->m_sql_cmd; assert(filter_sql_cmd); filter_sql_cmd->set_filter_value((yyvsp[0].item_list), OPT_REPLICATE_IGNORE_DB); } #line 19115 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 88: #line 1875 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Sql_cmd_change_repl_filter * filter_sql_cmd= (Sql_cmd_change_repl_filter*) Lex->m_sql_cmd; assert(filter_sql_cmd); filter_sql_cmd->set_filter_value((yyvsp[0].item_list), OPT_REPLICATE_DO_TABLE); } #line 19126 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 89: #line 1882 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Sql_cmd_change_repl_filter * filter_sql_cmd= (Sql_cmd_change_repl_filter*) Lex->m_sql_cmd; assert(filter_sql_cmd); filter_sql_cmd->set_filter_value((yyvsp[0].item_list), OPT_REPLICATE_IGNORE_TABLE); } #line 19137 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 90: #line 1889 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Sql_cmd_change_repl_filter * filter_sql_cmd= (Sql_cmd_change_repl_filter*) Lex->m_sql_cmd; assert(filter_sql_cmd); filter_sql_cmd->set_filter_value((yyvsp[0].item_list), OPT_REPLICATE_WILD_DO_TABLE); } #line 19148 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 91: #line 1896 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Sql_cmd_change_repl_filter * filter_sql_cmd= (Sql_cmd_change_repl_filter*) Lex->m_sql_cmd; assert(filter_sql_cmd); filter_sql_cmd->set_filter_value((yyvsp[0].item_list), OPT_REPLICATE_WILD_IGNORE_TABLE); } #line 19160 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 92: #line 1904 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Sql_cmd_change_repl_filter * filter_sql_cmd= (Sql_cmd_change_repl_filter*) Lex->m_sql_cmd; assert(filter_sql_cmd); filter_sql_cmd->set_filter_value((yyvsp[0].item_list), OPT_REPLICATE_REWRITE_DB); } #line 19171 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 93: #line 1913 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= new (YYTHD->mem_root) List<Item>; if ((yyval.item_list) == NULL) MYSQL_YYABORT; } #line 19181 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 94: #line 1919 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= (yyvsp[-1].item_list); } #line 19189 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 95: #line 1926 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= new (YYTHD->mem_root) List<Item>; if ((yyval.item_list) == NULL) MYSQL_YYABORT; (yyval.item_list)->push_back((yyvsp[0].item)); } #line 19200 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 96: #line 1933 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyvsp[-2].item_list)->push_back((yyvsp[0].item)); (yyval.item_list)= (yyvsp[-2].item_list); } #line 19209 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 97: #line 1941 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; Item *db_item= new (thd->mem_root) Item_string((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, thd->charset()); (yyval.item)= db_item; } #line 19221 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 98: #line 1951 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= new (YYTHD->mem_root) List<Item>; if ((yyval.item_list) == NULL) MYSQL_YYABORT; } #line 19231 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 99: #line 1957 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= (yyvsp[-1].item_list); } #line 19239 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 100: #line 1963 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= new (YYTHD->mem_root) List<Item>; if ((yyval.item_list) == NULL) MYSQL_YYABORT; (yyval.item_list)->push_back((yyvsp[-3].item)); (yyval.item_list)->push_back((yyvsp[-1].item)); } #line 19251 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 101: #line 1971 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyvsp[-6].item_list)->push_back((yyvsp[-3].item)); (yyvsp[-6].item_list)->push_back((yyvsp[-1].item)); (yyval.item_list)= (yyvsp[-6].item_list); } #line 19261 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 102: #line 1979 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= new (YYTHD->mem_root) List<Item>; if ((yyval.item_list) == NULL) MYSQL_YYABORT; } #line 19271 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 103: #line 1985 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= (yyvsp[-1].item_list); } #line 19279 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 104: #line 1992 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= new (YYTHD->mem_root) List<Item>; if ((yyval.item_list) == NULL) MYSQL_YYABORT; (yyval.item_list)->push_back((yyvsp[0].item)); } #line 19290 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 105: #line 1999 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyvsp[-2].item_list)->push_back((yyvsp[0].item)); (yyval.item_list)= (yyvsp[-2].item_list); } #line 19299 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 106: #line 2007 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; Item_string *table_item= new (thd->mem_root) Item_string((yyvsp[-2].lex_str).str, (yyvsp[-2].lex_str).length, thd->charset()); table_item->append(thd->strmake(".", 1), 1); table_item->append((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length); (yyval.item)= table_item; } #line 19313 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 107: #line 2020 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= new (YYTHD->mem_root) List<Item>; if ((yyval.item_list) == NULL) MYSQL_YYABORT; } #line 19323 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 108: #line 2026 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= (yyvsp[-1].item_list); } #line 19331 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 109: #line 2033 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= new (YYTHD->mem_root) List<Item>; if ((yyval.item_list) == NULL) MYSQL_YYABORT; (yyval.item_list)->push_back((yyvsp[0].item)); } #line 19342 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 110: #line 2040 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyvsp[-2].item_list)->push_back((yyvsp[0].item)); (yyval.item_list)= (yyvsp[-2].item_list); } #line 19351 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 111: #line 2048 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; Item *string_item= new (thd->mem_root) Item_string((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, thd->charset()); (yyval.item)= string_item; } #line 19363 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 114: #line 2064 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.host = (yyvsp[0].lex_str).str; } #line 19371 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 115: #line 2068 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.bind_addr = (yyvsp[0].lex_str).str; } #line 19379 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 116: #line 2072 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.user = (yyvsp[0].lex_str).str; } #line 19387 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 117: #line 2076 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.password = (yyvsp[0].lex_str).str; if (strlen((yyvsp[0].lex_str).str) > 32) { my_error(ER_CHANGE_MASTER_PASSWORD_LENGTH, MYF(0)); MYSQL_YYABORT; } Lex->contains_plaintext_password= true; } #line 19401 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 118: #line 2086 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.port = (yyvsp[0].ulong_num); } #line 19409 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 119: #line 2090 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.connect_retry = (yyvsp[0].ulong_num); } #line 19417 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 120: #line 2094 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.retry_count= (yyvsp[0].ulong_num); Lex->mi.retry_count_opt= LEX_MASTER_INFO::LEX_MI_ENABLE; } #line 19426 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 121: #line 2099 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].ulong_num) > MASTER_DELAY_MAX) { const char *msg= YYTHD->strmake((yylsp[0]).cpp.start, (yylsp[0]).cpp.end - (yylsp[0]).cpp.start); my_error(ER_MASTER_DELAY_VALUE_OUT_OF_RANGE, MYF(0), msg, MASTER_DELAY_MAX); } else Lex->mi.sql_delay = (yyvsp[0].ulong_num); } #line 19441 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 122: #line 2110 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.ssl= (yyvsp[0].ulong_num) ? LEX_MASTER_INFO::LEX_MI_ENABLE : LEX_MASTER_INFO::LEX_MI_DISABLE; } #line 19450 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 123: #line 2115 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.ssl_ca= (yyvsp[0].lex_str).str; } #line 19458 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 124: #line 2119 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.ssl_capath= (yyvsp[0].lex_str).str; } #line 19466 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 125: #line 2123 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.tls_version= (yyvsp[0].lex_str).str; } #line 19474 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 126: #line 2127 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.ssl_cert= (yyvsp[0].lex_str).str; } #line 19482 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 127: #line 2131 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.ssl_cipher= (yyvsp[0].lex_str).str; } #line 19490 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 128: #line 2135 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.ssl_key= (yyvsp[0].lex_str).str; } #line 19498 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 129: #line 2139 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.ssl_verify_server_cert= (yyvsp[0].ulong_num) ? LEX_MASTER_INFO::LEX_MI_ENABLE : LEX_MASTER_INFO::LEX_MI_DISABLE; } #line 19507 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 130: #line 2144 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.ssl_crl= (yyvsp[0].lex_str).str; } #line 19515 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 131: #line 2148 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.ssl_crlpath= (yyvsp[0].lex_str).str; } #line 19523 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 132: #line 2153 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); Lex->mi.heartbeat_period= (float) (yyvsp[0].item)->val_real(); if (Lex->mi.heartbeat_period > SLAVE_MAX_HEARTBEAT_PERIOD || Lex->mi.heartbeat_period < 0.0) { const char format[]= "%d"; char buf[4*sizeof(SLAVE_MAX_HEARTBEAT_PERIOD) + sizeof(format)]; sprintf(buf, format, SLAVE_MAX_HEARTBEAT_PERIOD); my_error(ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE, MYF(0), buf); MYSQL_YYABORT; } if (Lex->mi.heartbeat_period > slave_net_timeout) { push_warning(YYTHD, Sql_condition::SL_WARNING, ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX, ER(ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MAX)); } if (Lex->mi.heartbeat_period < 0.001) { if (Lex->mi.heartbeat_period != 0.0) { push_warning(YYTHD, Sql_condition::SL_WARNING, ER_SLAVE_HEARTBEAT_VALUE_OUT_OF_RANGE_MIN, ER(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 19560 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 133: #line 2186 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.repl_ignore_server_ids_opt= LEX_MASTER_INFO::LEX_MI_ENABLE; } #line 19568 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 134: #line 2191 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.auto_position= (yyvsp[0].ulong_num) ? LEX_MASTER_INFO::LEX_MI_ENABLE : LEX_MASTER_INFO::LEX_MI_DISABLE; } #line 19578 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 139: #line 2208 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.repl_ignore_server_ids.push_back((yyvsp[0].ulong_num)); } #line 19586 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 140: #line 2214 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.log_file_name = (yyvsp[0].lex_str).str; } #line 19594 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 141: #line 2218 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.pos = (yyvsp[0].ulonglong_number); /* 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 explicitely specified. On the contrary in change_master() (sql_repl.cc) we cannot distinguish between 0 (MASTER_LOG_POS explicitely 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 = max<ulonglong>(BIN_LOG_HEADER_SIZE, Lex->mi.pos); } #line 19614 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 142: #line 2234 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.relay_log_name = (yyvsp[0].lex_str).str; } #line 19622 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 143: #line 2238 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 = max<ulong>(BIN_LOG_HEADER_SIZE, Lex->mi.relay_log_pos); } #line 19633 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 144: #line 2248 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.channel= ""; Lex->mi.for_channel= false; } #line 19642 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 145: #line 2253 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* channel names are case insensitive. This means, even the results displayed to the user are converted to lower cases. system_charset_info is utf8_general_ci as required by channel name restrictions */ my_casedn_str(system_charset_info, (yyvsp[0].lex_str).str); Lex->mi.channel= (yyvsp[0].lex_str).str; Lex->mi.for_channel= true; } #line 19658 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 146: #line 2270 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->sql_command= SQLCOM_CREATE_TABLE; if (!lex->select_lex->add_table_to_list(thd, (yyvsp[0].table), NULL, TL_OPTION_UPDATING, TL_WRITE, MDL_SHARED)) MYSQL_YYABORT; /* Instruct open_table() to acquire SHARED lock to check the existance of table. If the table does not exist then it will be upgraded EXCLUSIVE MDL lock. If table exist then open_table() will return with an error or warning. */ lex->query_tables->open_strategy= TABLE_LIST::OPEN_FOR_CREATE; lex->alter_info.reset(); lex->col_list.empty(); lex->change=NullS; new (&lex->create_info) HA_CREATE_INFO; lex->create_info.options=(yyvsp[-3].num) | (yyvsp[-1].num); lex->create_info.default_table_charset= NULL; lex->name.str= 0; lex->name.length= 0; lex->create_last_non_select_table= lex->last_table(); } #line 19688 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 147: #line 2296 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->set_current_select(lex->select_lex); if ((lex->create_info.used_fields & HA_CREATE_USED_ENGINE) && !lex->create_info.db_type) { lex->create_info.db_type= lex->create_info.options & HA_LEX_CREATE_TMP_TABLE ? ha_default_temp_handlerton(thd) : ha_default_handlerton(thd); push_warning_printf(YYTHD, Sql_condition::SL_WARNING, ER_WARN_USING_OTHER_HANDLER, ER(ER_WARN_USING_OTHER_HANDLER), ha_resolve_storage_engine_name(lex->create_info.db_type), (yyvsp[-2].table)->table.str); } create_table_set_open_action_and_adjust_tables(lex); } #line 19711 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 148: #line 2315 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (add_create_index_prepare(Lex, (yyvsp[0].table))) MYSQL_YYABORT; } #line 19720 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 149: #line 2320 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (add_create_index(Lex, (yyvsp[-10].key_type), (yyvsp[-8].lex_str))) MYSQL_YYABORT; } #line 19729 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 150: #line 2324 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { } #line 19735 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 151: #line 2327 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (add_create_index_prepare(Lex, (yyvsp[0].table))) MYSQL_YYABORT; } #line 19744 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 152: #line 2332 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (add_create_index(Lex, (yyvsp[-10].key_type), (yyvsp[-8].lex_str))) MYSQL_YYABORT; } #line 19753 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 153: #line 2336 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { } #line 19759 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 154: #line 2339 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (add_create_index_prepare(Lex, (yyvsp[0].table))) MYSQL_YYABORT; } #line 19768 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 155: #line 2344 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (add_create_index(Lex, (yyvsp[-10].key_type), (yyvsp[-8].lex_str))) MYSQL_YYABORT; } #line 19777 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 156: #line 2348 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { } #line 19783 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 157: #line 2350 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.default_table_charset= NULL; Lex->create_info.used_fields= 0; } #line 19792 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 158: #line 2355 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command=SQLCOM_CREATE_DB; lex->name= (yyvsp[-2].lex_str); lex->create_info.options=(yyvsp[-3].num); } #line 19803 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 159: #line 2362 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_mode= VIEW_CREATE_NEW; Lex->create_view_algorithm= VIEW_ALGORITHM_UNDEFINED; Lex->create_view_suid= TRUE; } #line 19813 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 160: #line 2368 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 19819 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 161: #line 2371 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command = SQLCOM_CREATE_USER; lex->create_info.options=(yyvsp[-5].num); } #line 19829 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 162: #line 2377 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_tablespace_info->ts_cmd_type= CREATE_LOGFILE_GROUP; } #line 19837 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 163: #line 2381 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_tablespace_info->ts_cmd_type= CREATE_TABLESPACE; } #line 19845 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 164: #line 2386 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_CREATE_SERVER; if ((yyvsp[-8].lex_str).length == 0) { my_error(ER_WRONG_VALUE, MYF(0), "server name", ""); MYSQL_YYABORT; } Lex->server_options.m_server_name= (yyvsp[-8].lex_str); Lex->server_options.set_scheme((yyvsp[-4].lex_str)); Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_create_server(&Lex->server_options); } #line 19862 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 167: #line 2407 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->server_options.set_username((yyvsp[0].lex_str)); } #line 19870 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 168: #line 2411 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->server_options.set_host((yyvsp[0].lex_str)); } #line 19878 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 169: #line 2415 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->server_options.set_db((yyvsp[0].lex_str)); } #line 19886 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 170: #line 2419 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->server_options.set_owner((yyvsp[0].lex_str)); } #line 19894 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 171: #line 2423 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->server_options.set_password((yyvsp[0].lex_str)); Lex->contains_plaintext_password= true; } #line 19903 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 172: #line 2428 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->server_options.set_socket((yyvsp[0].lex_str)); } #line 19911 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 173: #line 2432 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->server_options.set_port((yyvsp[0].ulong_num)); } #line 19919 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 174: #line 2439 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex=Lex; lex->stmt_definition_begin= (yylsp[-2]).cpp.start; lex->create_info.options= (yyvsp[-1].num); if (!(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 19939 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 175: #line 2459 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* sql_command is set here because some rules in ev_sql_stmt can overwrite it */ Lex->sql_command= SQLCOM_CREATE_EVENT; } #line 19951 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 176: #line 2470 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[-1].item), &(yyvsp[-1].item)); Lex->event_parse_data->item_expression= (yyvsp[-1].item); Lex->event_parse_data->interval= (yyvsp[0].interval); } #line 19962 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 178: #line 2479 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); Lex->event_parse_data->item_execute_at= (yyvsp[0].item); } #line 19972 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 179: #line 2487 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 19978 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 180: #line 2489 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->event_parse_data->status= Event_parse_data::ENABLED; Lex->event_parse_data->status_changed= true; (yyval.num)= 1; } #line 19988 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 181: #line 2495 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->event_parse_data->status= Event_parse_data::SLAVESIDE_DISABLED; Lex->event_parse_data->status_changed= true; (yyval.num)= 1; } #line 19998 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 182: #line 2501 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->event_parse_data->status= Event_parse_data::DISABLED; Lex->event_parse_data->status_changed= true; (yyval.num)= 1; } #line 20008 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 183: #line 2510 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Item *item= new (YYTHD->mem_root) Item_func_now_local(0); if (item == NULL) MYSQL_YYABORT; Lex->event_parse_data->item_starts= item; } #line 20019 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 184: #line 2517 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); Lex->event_parse_data->item_starts= (yyvsp[0].item); } #line 20029 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 186: #line 2527 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); Lex->event_parse_data->item_ends= (yyvsp[0].item); } #line 20039 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 187: #line 2535 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 20045 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 189: #line 2541 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->event_parse_data->on_completion= Event_parse_data::ON_COMPLETION_PRESERVE; (yyval.num)= 1; } #line 20055 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 190: #line 2547 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->event_parse_data->on_completion= Event_parse_data::ON_COMPLETION_DROP; (yyval.num)= 1; } #line 20065 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 191: #line 2555 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 20071 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 192: #line 2557 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->comment= Lex->event_parse_data->comment= (yyvsp[0].lex_str); (yyval.num)= 1; } #line 20080 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 193: #line 2564 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; /* 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 (lex->sphead) { my_error(ER_EVENT_RECURSION_FORBIDDEN, MYF(0)); MYSQL_YYABORT; } sp_head *sp= sp_start_parsing(thd, SP_TYPE_EVENT, lex->event_parse_data->identifier); if (!sp) MYSQL_YYABORT; lex->sphead= sp; memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics)); sp->m_chistics= &lex->sp_chistics; /* Set a body start to the end of the last preprocessed token before ev_sql_stmt: */ sp->set_body_start(thd, (yylsp[0]).cpp.end); } #line 20130 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 194: #line 2610 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; sp_finish_parsing(thd); lex->sp_chistics.suid= SP_IS_SUID; //always the definer! lex->event_parse_data->body_changed= TRUE; } #line 20144 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 208: #line 2639 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->users_list.empty(); lex->columns.empty(); lex->grant= lex->grant_tot_col= 0; lex->all_privileges= 0; lex->select_lex->db= NULL; lex->ssl_type= SSL_TYPE_NOT_SPECIFIED; lex->ssl_cipher= lex->x509_subject= lex->x509_issuer= 0; lex->alter_password.update_account_locked_column= false; lex->alter_password.account_locked= false; memset(&(lex->mqh), 0, sizeof(lex->mqh)); } #line 20162 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 209: #line 2656 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->alter_password.update_password_expired_fields= false; lex->alter_password.update_password_expired_column= false; lex->alter_password.use_default_password_lifetime= true; lex->alter_password.expire_after_days= 0; } #line 20174 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 210: #line 2667 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!(yyvsp[-2].lex_str).str || (check_and_convert_db_name(&(yyvsp[-2].lex_str), FALSE) != IDENT_NAME_OK)) MYSQL_YYABORT; if (sp_check_name(&(yyvsp[0].lex_str))) { MYSQL_YYABORT; } (yyval.spname)= new sp_name(to_lex_cstring((yyvsp[-2].lex_str)), (yyvsp[0].lex_str), true); if ((yyval.spname) == NULL) MYSQL_YYABORT; (yyval.spname)->init_qname(YYTHD); } #line 20192 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 211: #line 2681 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; LEX_STRING db; if (sp_check_name(&(yyvsp[0].lex_str))) { MYSQL_YYABORT; } if (lex->copy_db_to(&db.str, &db.length)) MYSQL_YYABORT; (yyval.spname)= new sp_name(to_lex_cstring(db), (yyvsp[0].lex_str), false); if ((yyval.spname) == NULL) MYSQL_YYABORT; (yyval.spname)->init_qname(thd); } #line 20212 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 212: #line 2699 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 20218 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 213: #line 2700 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 20224 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 214: #line 2704 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 20230 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 215: #line 2705 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 20236 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 216: #line 2711 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sp_chistics.comment= (yyvsp[0].lex_str); } #line 20242 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 217: #line 2713 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* Just parse it, we only have one language for now. */ } #line 20248 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 218: #line 2715 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sp_chistics.daccess= SP_NO_SQL; } #line 20254 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 219: #line 2717 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sp_chistics.daccess= SP_CONTAINS_SQL; } #line 20260 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 220: #line 2719 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sp_chistics.daccess= SP_READS_SQL_DATA; } #line 20266 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 221: #line 2721 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sp_chistics.daccess= SP_MODIFIES_SQL_DATA; } #line 20272 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 222: #line 2723 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 20278 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 223: #line 2728 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { } #line 20284 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 224: #line 2729 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sp_chistics.detistic= TRUE; } #line 20290 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 225: #line 2730 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sp_chistics.detistic= FALSE; } #line 20296 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 226: #line 2735 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sp_chistics.suid= SP_IS_SUID; } #line 20304 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 227: #line 2739 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sp_chistics.suid= SP_IS_NOT_SUID; } #line 20312 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 228: #line 2746 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex = Lex; lex->sql_command= SQLCOM_CALL; lex->spname= (yyvsp[0].spname); lex->call_value_list.empty(); sp_add_used_routine(lex, YYTHD, (yyvsp[0].spname), SP_TYPE_PROCEDURE); } #line 20325 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 229: #line 2754 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 20331 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 234: #line 2770 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); Lex->call_value_list.push_back((yyvsp[0].item)); } #line 20341 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 235: #line 2776 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); Lex->call_value_list.push_back((yyvsp[0].item)); } #line 20351 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 240: #line 2796 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->length= 0; lex->dec= 0; lex->type= 0; lex->default_value= 0; lex->on_update_value= 0; lex->comment= null_lex_str; lex->charset= NULL; lex->interval_list.empty(); lex->uint_geom_type= 0; } #line 20372 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 241: #line 2816 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); if (pctx->find_variable((yyvsp[-2].lex_str), TRUE)) { my_error(ER_SP_DUP_PARAM, MYF(0), (yyvsp[-2].lex_str).str); MYSQL_YYABORT; } sp_variable *spvar= pctx->add_variable(thd, (yyvsp[-2].lex_str), (enum enum_field_types) (yyvsp[0].num), sp_variable::MODE_IN); if (fill_field_definition(thd, sp, (enum enum_field_types) (yyvsp[0].num), &spvar->field_def)) { MYSQL_YYABORT; } spvar->field_def.field_name= spvar->name.str; spvar->field_def.pack_flag |= FIELDFLAG_MAYBE_NULL; } #line 20403 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 246: #line 2857 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); if (pctx->find_variable((yyvsp[-1].lex_str), TRUE)) { my_error(ER_SP_DUP_PARAM, MYF(0), (yyvsp[-1].lex_str).str); MYSQL_YYABORT; } sp_variable *spvar= pctx->add_variable(thd, (yyvsp[-1].lex_str), (enum enum_field_types) (yyvsp[0].num), (sp_variable::enum_mode) (yyvsp[-3].num)); if (fill_field_definition(thd, sp, (enum enum_field_types) (yyvsp[0].num), &spvar->field_def)) { MYSQL_YYABORT; } spvar->field_def.field_name= spvar->name.str; spvar->field_def.pack_flag |= FIELDFLAG_MAYBE_NULL; } #line 20433 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 247: #line 2885 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= sp_variable::MODE_IN; } #line 20439 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 248: #line 2886 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= sp_variable::MODE_IN; } #line 20445 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 249: #line 2887 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= sp_variable::MODE_OUT; } #line 20451 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 250: #line 2888 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= sp_variable::MODE_INOUT; } #line 20457 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 251: #line 2892 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 20463 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 253: #line 2897 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 20469 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 255: #line 2903 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0; } #line 20477 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 256: #line 2907 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* 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 (((yyvsp[-1].spblock).vars || (yyvsp[-1].spblock).conds) && ((yyvsp[-2].spblock).curs || (yyvsp[-2].spblock).hndlrs)) { /* Variable or condition following cursor or handler */ my_message(ER_SP_VARCOND_AFTER_CURSHNDLR, ER(ER_SP_VARCOND_AFTER_CURSHNDLR), MYF(0)); MYSQL_YYABORT; } if ((yyvsp[-1].spblock).curs && (yyvsp[-2].spblock).hndlrs) { /* Cursor following handler */ my_message(ER_SP_CURSOR_AFTER_HANDLER, ER(ER_SP_CURSOR_AFTER_HANDLER), MYF(0)); MYSQL_YYABORT; } (yyval.spblock).vars= (yyvsp[-2].spblock).vars + (yyvsp[-1].spblock).vars; (yyval.spblock).conds= (yyvsp[-2].spblock).conds + (yyvsp[-1].spblock).conds; (yyval.spblock).hndlrs= (yyvsp[-2].spblock).hndlrs + (yyvsp[-1].spblock).hndlrs; (yyval.spblock).curs= (yyvsp[-2].spblock).curs + (yyvsp[-1].spblock).curs; } #line 20504 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 257: #line 2934 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$3*/ THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp->reset_lex(thd); pctx->declare_var_boundary((yyvsp[0].num)); } #line 20518 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 258: #line 2945 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$6*/ THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); uint num_vars= pctx->context_var_count(); enum enum_field_types var_type= (enum enum_field_types) (yyvsp[-1].num); Item *dflt_value_item= (yyvsp[0].item); const bool has_default_clause = (dflt_value_item != NULL); bool is_const_item = false; LEX_STRING dflt_value_query= EMPTY_STR; if (has_default_clause) { // Handling a NEG_FUNC wrapping a constant. if (dflt_value_item->type() == Item::FUNC_ITEM) { Item_func *func_item = down_cast<Item_func *>(dflt_value_item); if (func_item->functype() == Item_func::NEG_FUNC) { is_const_item = true; } } else if (dflt_value_item->const_item()) { is_const_item = true; } // sp_opt_default only pushes start ptr for DEFAULT clause. const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr(); if (lex->is_metadata_used()) { dflt_value_query= make_string(thd, expr_start_ptr, (yylsp[0]).raw.end); if (!dflt_value_query.str) MYSQL_YYABORT; } } else { dflt_value_item= new (thd->mem_root) Item_null(); if (dflt_value_item == NULL) MYSQL_YYABORT; } sp_variable *first_spvar = NULL; const uint first_var_num = num_vars - (yyvsp[-3].num); // We can have several variables in DECLARE statement. // We need to create an sp_instr_set instruction for each variable. for (uint i = first_var_num; i < num_vars; i++) { uint var_idx= pctx->var_context2runtime(i); sp_variable *spvar= pctx->find_variable(var_idx); if (!spvar) MYSQL_YYABORT; spvar->type= var_type; // Transforming the following declare statements having non-const // expressions: // DECLARE a, b, c type DEFAULT expr; // to // DECLARE a type DEFAULT expr, b type DEFAULT a, // c type DEFAULT a; if (i == first_var_num) { first_spvar = spvar; } else if (has_default_clause && !is_const_item) { Item_splocal *item = NEW_PTN Item_splocal(first_spvar->name, first_spvar->offset, first_spvar->type, 0, 0); if (item == NULL) MYSQL_YYABORT; // OOM #ifndef NDEBUG item->m_sp = lex->sphead; #endif dflt_value_item = item; } spvar->default_value= dflt_value_item; if (has_default_clause && !is_const_item && (i > first_var_num)) { dflt_value_query = first_spvar->name; } if (fill_field_definition(thd, sp, var_type, &spvar->field_def)) MYSQL_YYABORT; spvar->field_def.field_name= spvar->name.str; spvar->field_def.pack_flag |= FIELDFLAG_MAYBE_NULL; /* The last instruction is responsible for freeing LEX. */ sp_instr_set *is= new (thd->mem_root) sp_instr_set(sp->instructions(), lex, var_idx, dflt_value_item, dflt_value_query, (i == num_vars - 1)); if (!is || sp->add_instr(thd, is)) MYSQL_YYABORT; } pctx->declare_var_boundary(0); if (sp->restore_lex(thd)) MYSQL_YYABORT; (yyval.spblock).vars= (yyvsp[-3].num); (yyval.spblock).conds= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0; } #line 20635 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 259: #line 3058 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); if (pctx->find_condition((yyvsp[-3].lex_str), TRUE)) { my_error(ER_SP_DUP_COND, MYF(0), (yyvsp[-3].lex_str).str); MYSQL_YYABORT; } if(pctx->add_condition(thd, (yyvsp[-3].lex_str), (yyvsp[0].spcondvalue))) MYSQL_YYABORT; lex->keep_diagnostics= DA_KEEP_DIAGNOSTICS; // DECLARE COND FOR (yyval.spblock).vars= (yyval.spblock).hndlrs= (yyval.spblock).curs= 0; (yyval.spblock).conds= 1; } #line 20656 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 260: #line 3075 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp_pcontext *parent_pctx= lex->get_sp_current_parsing_ctx(); sp_pcontext *handler_pctx= parent_pctx->push_context(thd, sp_pcontext::HANDLER_SCOPE); sp_handler *h= parent_pctx->add_handler(thd, (sp_handler::enum_type) (yyvsp[-2].num)); lex->set_sp_current_parsing_ctx(handler_pctx); sp_instr_hpush_jump *i= new (thd->mem_root) sp_instr_hpush_jump(sp->instructions(), handler_pctx, h); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; if ((yyvsp[-2].num) == sp_handler::CONTINUE) { // Mark the end of CONTINUE handler scope. if (sp->m_parser_data.add_backpatch_entry( i, handler_pctx->last_label())) { MYSQL_YYABORT; } } if (sp->m_parser_data.add_backpatch_entry( i, handler_pctx->push_label(thd, EMPTY_STR, 0))) { MYSQL_YYABORT; } lex->keep_diagnostics= DA_KEEP_DIAGNOSTICS; // DECL HANDLER FOR } #line 20702 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 261: #line 3117 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_label *hlab= pctx->pop_label(); /* After this hdlr */ if ((yyvsp[-5].num) == sp_handler::CONTINUE) { sp_instr_hreturn *i= new (thd->mem_root) sp_instr_hreturn(sp->instructions(), pctx); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; } else { /* EXIT or UNDO handler, just jump to the end of the block */ sp_instr_hreturn *i= new (thd->mem_root) sp_instr_hreturn(sp->instructions(), pctx); if (i == NULL || sp->add_instr(thd, i) || sp->m_parser_data.add_backpatch_entry(i, pctx->last_label())) MYSQL_YYABORT; } sp->m_parser_data.do_backpatch(hlab, sp->instructions()); lex->set_sp_current_parsing_ctx(pctx->pop_context()); (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).curs= 0; (yyval.spblock).hndlrs= 1; } #line 20740 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 262: #line 3154 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$5*/ THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp->reset_lex(thd); sp->m_parser_data.set_current_stmt_start_ptr((yylsp[0]).raw.end); } #line 20753 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 263: #line 3163 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$7*/ CONTEXTUALIZE((yyvsp[0].select)); THD *thd= YYTHD; LEX *cursor_lex= Lex; sp_head *sp= cursor_lex->sphead; assert(cursor_lex->sql_command == SQLCOM_SELECT); if (cursor_lex->result) { my_message(ER_SP_BAD_CURSOR_SELECT, ER(ER_SP_BAD_CURSOR_SELECT), MYF(0)); MYSQL_YYABORT; } cursor_lex->sp_lex_in_use= true; if (sp->restore_lex(thd)) MYSQL_YYABORT; LEX *lex= Lex; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); uint offp; if (pctx->find_cursor((yyvsp[-4].lex_str), &offp, TRUE)) { my_error(ER_SP_DUP_CURS, MYF(0), (yyvsp[-4].lex_str).str); delete cursor_lex; MYSQL_YYABORT; } LEX_STRING cursor_query= EMPTY_STR; if (cursor_lex->is_metadata_used()) { cursor_query= make_string(thd, sp->m_parser_data.get_current_stmt_start_ptr(), (yylsp[0]).raw.end); if (!cursor_query.str) MYSQL_YYABORT; } sp_instr_cpush *i= new (thd->mem_root) sp_instr_cpush(sp->instructions(), pctx, cursor_lex, cursor_query, pctx->current_cursor_count()); if (i == NULL || sp->add_instr(thd, i) || pctx->add_cursor((yyvsp[-4].lex_str))) { MYSQL_YYABORT; } (yyval.spblock).vars= (yyval.spblock).conds= (yyval.spblock).hndlrs= 0; (yyval.spblock).curs= 1; } #line 20820 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 264: #line 3228 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= sp_handler::EXIT; } #line 20826 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 265: #line 3229 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= sp_handler::CONTINUE; } #line 20832 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 266: #line 3235 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 1; } #line 20838 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 267: #line 3237 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)+= 1; } #line 20844 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 268: #line 3242 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_pcontext *parent_pctx= pctx->parent_context(); if (parent_pctx->check_duplicate_handler((yyvsp[0].spcondvalue))) { my_message(ER_SP_DUP_HANDLER, ER(ER_SP_DUP_HANDLER), MYF(0)); MYSQL_YYABORT; } else { sp_instr_hpush_jump *i= (sp_instr_hpush_jump *)sp->last_instruction(); i->add_condition((yyvsp[0].spcondvalue)); } } #line 20868 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 269: #line 3265 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* mysql errno */ if ((yyvsp[0].ulong_num) == 0) { my_error(ER_WRONG_VALUE, MYF(0), "CONDITION", "0"); MYSQL_YYABORT; } (yyval.spcondvalue)= new (YYTHD->mem_root) sp_condition_value((yyvsp[0].ulong_num)); if ((yyval.spcondvalue) == NULL) MYSQL_YYABORT; } #line 20883 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 271: #line 3280 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* 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 (!is_sqlstate_valid(&(yyvsp[0].lex_str)) || is_sqlstate_completion((yyvsp[0].lex_str).str)) { my_error(ER_SP_BAD_SQLSTATE, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } (yyval.spcondvalue)= new (YYTHD->mem_root) sp_condition_value((yyvsp[0].lex_str).str); if ((yyval.spcondvalue) == NULL) MYSQL_YYABORT; } #line 20906 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 272: #line 3301 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 20912 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 273: #line 3302 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 20918 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 274: #line 3307 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.spcondvalue)= (yyvsp[0].spcondvalue); } #line 20926 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 275: #line 3311 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); (yyval.spcondvalue)= pctx->find_condition((yyvsp[0].lex_str), false); if ((yyval.spcondvalue) == NULL) { my_error(ER_SP_COND_MISMATCH, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } } #line 20943 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 276: #line 3324 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.spcondvalue)= new (YYTHD->mem_root) sp_condition_value(sp_condition_value::WARNING); if ((yyval.spcondvalue) == NULL) MYSQL_YYABORT; } #line 20953 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 277: #line 3330 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.spcondvalue)= new (YYTHD->mem_root) sp_condition_value(sp_condition_value::NOT_FOUND); if ((yyval.spcondvalue) == NULL) MYSQL_YYABORT; } #line 20963 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 278: #line 3336 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.spcondvalue)= new (YYTHD->mem_root) sp_condition_value(sp_condition_value::EXCEPTION); if ((yyval.spcondvalue) == NULL) MYSQL_YYABORT; } #line 20973 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 279: #line 3345 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->sql_command= SQLCOM_SIGNAL; lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_signal((yyvsp[-1].spcondvalue), (yyvsp[0].signal_item_list)); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 20987 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 280: #line 3358 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); if (!pctx) { /* SIGNAL foo cannot be used outside of stored programs */ my_error(ER_SP_COND_MISMATCH, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } sp_condition_value *cond= pctx->find_condition((yyvsp[0].lex_str), false); if (!cond) { my_error(ER_SP_COND_MISMATCH, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } if (cond->type != sp_condition_value::SQLSTATE) { my_error(ER_SIGNAL_BAD_CONDITION_TYPE, MYF(0)); MYSQL_YYABORT; } (yyval.spcondvalue)= cond; } #line 21017 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 281: #line 3384 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.spcondvalue)= (yyvsp[0].spcondvalue); } #line 21023 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 282: #line 3389 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.spcondvalue)= NULL; } #line 21029 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 283: #line 3391 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.spcondvalue)= (yyvsp[0].spcondvalue); } #line 21035 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 284: #line 3396 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.signal_item_list)= new (YYTHD->mem_root) Set_signal_information(); } #line 21041 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 285: #line 3398 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.signal_item_list)= (yyvsp[0].signal_item_list); } #line 21047 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 286: #line 3403 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.signal_item_list)= new (YYTHD->mem_root) Set_signal_information(); if ((yyval.signal_item_list)->set_item((yyvsp[-2].da_condition_item_name), (yyvsp[0].item))) MYSQL_YYABORT; } #line 21057 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 287: #line 3410 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.signal_item_list)= (yyvsp[-4].signal_item_list); if ((yyval.signal_item_list)->set_item((yyvsp[-2].da_condition_item_name), (yyvsp[0].item))) MYSQL_YYABORT; } #line 21067 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 288: #line 3422 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyval.item)); } #line 21073 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 289: #line 3424 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); if ((yyvsp[0].item)->type() == Item::FUNC_ITEM) { Item_func *item= (Item_func*) (yyvsp[0].item); if (item->functype() == Item_func::SUSERVAR_FUNC) { /* Don't allow the following syntax: SIGNAL/RESIGNAL ... SET <signal condition item name> = @foo := expr */ my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } } (yyval.item)= (yyvsp[0].item); } #line 21097 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 290: #line 3444 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyval.item)); } #line 21103 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 291: #line 3450 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_CLASS_ORIGIN; } #line 21109 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 292: #line 3452 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_SUBCLASS_ORIGIN; } #line 21115 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 293: #line 3454 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_CONSTRAINT_CATALOG; } #line 21121 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 294: #line 3456 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_CONSTRAINT_SCHEMA; } #line 21127 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 295: #line 3458 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_CONSTRAINT_NAME; } #line 21133 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 296: #line 3460 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_CATALOG_NAME; } #line 21139 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 297: #line 3462 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_SCHEMA_NAME; } #line 21145 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 298: #line 3464 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_TABLE_NAME; } #line 21151 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 299: #line 3466 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_COLUMN_NAME; } #line 21157 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 300: #line 3468 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_CURSOR_NAME; } #line 21163 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 301: #line 3470 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_MESSAGE_TEXT; } #line 21169 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 302: #line 3472 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.da_condition_item_name)= CIN_MYSQL_ERRNO; } #line 21175 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 303: #line 3477 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->sql_command= SQLCOM_RESIGNAL; lex->keep_diagnostics= DA_KEEP_DIAGNOSTICS; // RESIGNAL doesn't clear diagnostics lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_resignal((yyvsp[-1].spcondvalue), (yyvsp[0].signal_item_list)); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 21190 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 304: #line 3491 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Diagnostics_information *info= (yyvsp[0].diag_info); info->set_which_da((yyvsp[-2].diag_area)); Lex->keep_diagnostics= DA_KEEP_DIAGNOSTICS; // GET DIAGS doesn't clear them. Lex->sql_command= SQLCOM_GET_DIAGNOSTICS; Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_get_diagnostics(info); if (Lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 21207 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 305: #line 3507 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.diag_area)= Diagnostics_information::CURRENT_AREA; } #line 21213 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 306: #line 3509 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.diag_area)= Diagnostics_information::CURRENT_AREA; } #line 21219 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 307: #line 3511 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.diag_area)= Diagnostics_information::STACKED_AREA; } #line 21225 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 308: #line 3516 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.diag_info)= new (YYTHD->mem_root) Statement_information((yyvsp[0].stmt_info_list)); if ((yyval.diag_info) == NULL) MYSQL_YYABORT; } #line 21235 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 309: #line 3522 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.diag_info)= new (YYTHD->mem_root) Condition_information((yyvsp[-1].item), (yyvsp[0].cond_info_list)); if ((yyval.diag_info) == NULL) MYSQL_YYABORT; } #line 21245 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 310: #line 3531 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.stmt_info_list)= new (YYTHD->mem_root) List<Statement_information_item>; if ((yyval.stmt_info_list) == NULL || (yyval.stmt_info_list)->push_back((yyvsp[0].stmt_info_item))) MYSQL_YYABORT; } #line 21255 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 311: #line 3537 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-2].stmt_info_list)->push_back((yyvsp[0].stmt_info_item))) MYSQL_YYABORT; (yyval.stmt_info_list)= (yyvsp[-2].stmt_info_list); } #line 21265 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 312: #line 3546 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.stmt_info_item)= new (YYTHD->mem_root) Statement_information_item((yyvsp[0].stmt_info_item_name), (yyvsp[-2].item)); if ((yyval.stmt_info_item) == NULL) MYSQL_YYABORT; } #line 21275 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 313: #line 3554 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; /* NOTE: lex->sphead is NULL if we're parsing something like 'GET DIAGNOSTICS v' outside a stored program. We should throw ER_SP_UNDECLARED_VAR in such cases. */ if (!sp) { my_error(ER_SP_UNDECLARED_VAR, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } (yyval.item)= create_item_for_sp_var( thd, (yyvsp[0].lex_str), NULL, sp->m_parser_data.get_current_stmt_start_ptr(), (yylsp[0]).raw.start, (yylsp[0]).raw.end); if ((yyval.item) == NULL) MYSQL_YYABORT; } #line 21307 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 314: #line 3582 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_get_user_var((yyloc), (yyvsp[0].lex_str)); ITEMIZE((yyval.item), &(yyval.item)); } #line 21316 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 315: #line 3590 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.stmt_info_item_name)= Statement_information_item::NUMBER; } #line 21322 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 316: #line 3592 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.stmt_info_item_name)= Statement_information_item::ROW_COUNT; } #line 21328 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 317: #line 3601 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= (yyvsp[0].item); } #line 21334 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 318: #line 3606 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_list)= new (YYTHD->mem_root) List<Condition_information_item>; if ((yyval.cond_info_list) == NULL || (yyval.cond_info_list)->push_back((yyvsp[0].cond_info_item))) MYSQL_YYABORT; } #line 21344 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 319: #line 3612 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-2].cond_info_list)->push_back((yyvsp[0].cond_info_item))) MYSQL_YYABORT; (yyval.cond_info_list)= (yyvsp[-2].cond_info_list); } #line 21354 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 320: #line 3621 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item)= new (YYTHD->mem_root) Condition_information_item((yyvsp[0].cond_info_item_name), (yyvsp[-2].item)); if ((yyval.cond_info_item) == NULL) MYSQL_YYABORT; } #line 21364 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 321: #line 3629 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::CLASS_ORIGIN; } #line 21370 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 322: #line 3631 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::SUBCLASS_ORIGIN; } #line 21376 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 323: #line 3633 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_CATALOG; } #line 21382 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 324: #line 3635 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_SCHEMA; } #line 21388 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 325: #line 3637 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::CONSTRAINT_NAME; } #line 21394 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 326: #line 3639 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::CATALOG_NAME; } #line 21400 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 327: #line 3641 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::SCHEMA_NAME; } #line 21406 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 328: #line 3643 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::TABLE_NAME; } #line 21412 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 329: #line 3645 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::COLUMN_NAME; } #line 21418 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 330: #line 3647 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::CURSOR_NAME; } #line 21424 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 331: #line 3649 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::MESSAGE_TEXT; } #line 21430 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 332: #line 3651 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::MYSQL_ERRNO; } #line 21436 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 333: #line 3653 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cond_info_item_name)= Condition_information_item::RETURNED_SQLSTATE; } #line 21442 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 334: #line 3658 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* NOTE: field definition is filled in sp_decl section. */ THD *thd= YYTHD; LEX *lex= thd->lex; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); if (pctx->find_variable((yyvsp[0].lex_str), TRUE)) { my_error(ER_SP_DUP_VAR, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } pctx->add_variable(thd, (yyvsp[0].lex_str), MYSQL_TYPE_DECIMAL, sp_variable::MODE_IN); (yyval.num)= 1; } #line 21466 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 335: #line 3678 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* NOTE: field definition is filled in sp_decl section. */ THD *thd= YYTHD; LEX *lex= thd->lex; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); if (pctx->find_variable((yyvsp[0].lex_str), TRUE)) { my_error(ER_SP_DUP_VAR, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } pctx->add_variable(thd, (yyvsp[0].lex_str), MYSQL_TYPE_DECIMAL, sp_variable::MODE_IN); (yyval.num)= (yyvsp[-2].num) + 1; } #line 21490 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 336: #line 3701 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item) = NULL; } #line 21496 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 337: #line 3703 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sphead->m_parser_data.push_expr_start_ptr((yylsp[0]).raw.end); } #line 21502 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 338: #line 3705 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); (yyval.item) = (yyvsp[0].item); } #line 21512 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 352: #line 3730 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sphead->m_parser_data.new_cont_backpatch(); } #line 21518 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 353: #line 3732 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { sp_head *sp= Lex->sphead; sp->m_parser_data.do_cont_backpatch(sp->instructions()); } #line 21528 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 354: #line 3740 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp->reset_lex(thd); sp->m_parser_data.set_current_stmt_start_ptr(yylloc.raw.start); } #line 21541 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 355: #line 3749 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp->m_flags|= sp_get_flags_for_command(lex); if (lex->sql_command == SQLCOM_CHANGE_DB) { /* "USE db" doesn't work in a procedure */ my_error(ER_SP_BADSTATEMENT, MYF(0), "USE"); MYSQL_YYABORT; } /* Don't add an instruction for SET statements, since all instructions for them were already added during processing of "set" rule. */ assert(lex->sql_command != SQLCOM_SET_OPTION || lex->var_list.is_empty()); if (lex->sql_command != SQLCOM_SET_OPTION) { /* Extract the query statement from the tokenizer. */ LEX_STRING query= make_string(thd, sp->m_parser_data.get_current_stmt_start_ptr(), (yylsp[0]).raw.end); if (!query.str) MYSQL_YYABORT; /* Add instruction. */ sp_instr_stmt *i= new (thd->mem_root) sp_instr_stmt(sp->instructions(), lex, query); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; } if (sp->restore_lex(thd)) MYSQL_YYABORT; } #line 21589 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 356: #line 3796 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$2*/ THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp->reset_lex(thd); sp->m_parser_data.push_expr_start_ptr((yylsp[0]).raw.end); } #line 21603 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 357: #line 3806 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$4*/ ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; /* Extract expression string. */ LEX_STRING expr_query= EMPTY_STR; const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr(); if (lex->is_metadata_used()) { expr_query= make_string(thd, expr_start_ptr, (yylsp[0]).raw.end); if (!expr_query.str) MYSQL_YYABORT; } /* Check that this is a stored function. */ if (sp->m_type != SP_TYPE_FUNCTION) { my_message(ER_SP_BADRETURN, ER(ER_SP_BADRETURN), MYF(0)); MYSQL_YYABORT; } /* Indicate that we've reached RETURN statement. */ sp->m_flags|= sp_head::HAS_RETURN; /* Add instruction. */ sp_instr_freturn *i= new (thd->mem_root) sp_instr_freturn(sp->instructions(), lex, (yyvsp[0].item), expr_query, sp->m_return_field_def.sql_type); if (i == NULL || sp->add_instr(thd, i) || sp->restore_lex(thd)) { MYSQL_YYABORT; } } #line 21653 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 358: #line 3854 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* Unlabeled controls get a secret label. */ THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); pctx->push_label(thd, EMPTY_STR, sp->instructions()); } #line 21668 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 359: #line 3865 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp->m_parser_data.do_backpatch(pctx->pop_label(), sp->instructions()); } #line 21681 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 360: #line 3877 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp = lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_label *lab= pctx->find_label((yyvsp[0].lex_str)); if (! lab) { my_error(ER_SP_LILABEL_MISMATCH, MYF(0), "LEAVE", (yyvsp[0].lex_str).str); MYSQL_YYABORT; } uint ip= sp->instructions(); /* When jumping to a BEGIN-END block end, the target jump points to the block hpop/cpop cleanup instructions, so we should exclude the block context here. When jumping to something else (i.e., sp_label::ITERATION), there are no hpop/cpop at the jump destination, so we should include the block context here for cleanup. */ bool exclusive= (lab->type == sp_label::BEGIN); size_t n= pctx->diff_handlers(lab->ctx, exclusive); if (n) { sp_instr_hpop *hpop= new (thd->mem_root) sp_instr_hpop(ip++, pctx); if (!hpop || sp->add_instr(thd, hpop)) MYSQL_YYABORT; } n= pctx->diff_cursors(lab->ctx, exclusive); if (n) { sp_instr_cpop *cpop= new (thd->mem_root) sp_instr_cpop(ip++, pctx, n); if (!cpop || sp->add_instr(thd, cpop)) MYSQL_YYABORT; } sp_instr_jump *i= new (thd->mem_root) sp_instr_jump(ip, pctx); if (!i || /* Jumping forward */ sp->m_parser_data.add_backpatch_entry(i, lab) || sp->add_instr(thd, i)) MYSQL_YYABORT; } #line 21741 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 361: #line 3936 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_label *lab= pctx->find_label((yyvsp[0].lex_str)); if (! lab || lab->type != sp_label::ITERATION) { my_error(ER_SP_LILABEL_MISMATCH, MYF(0), "ITERATE", (yyvsp[0].lex_str).str); MYSQL_YYABORT; } uint ip= sp->instructions(); /* Inclusive the dest. */ size_t n= pctx->diff_handlers(lab->ctx, FALSE); if (n) { sp_instr_hpop *hpop= new (thd->mem_root) sp_instr_hpop(ip++, pctx); if (!hpop || sp->add_instr(thd, hpop)) MYSQL_YYABORT; } /* Inclusive the dest. */ n= pctx->diff_cursors(lab->ctx, FALSE); if (n) { sp_instr_cpop *cpop= new (thd->mem_root) sp_instr_cpop(ip++, pctx, n); if (!cpop || sp->add_instr(thd, cpop)) MYSQL_YYABORT; } /* Jump back */ sp_instr_jump *i= new (thd->mem_root) sp_instr_jump(ip, pctx, lab->ip); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; } #line 21792 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 362: #line 3986 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); uint offset; if (! pctx->find_cursor((yyvsp[0].lex_str), &offset, false)) { my_error(ER_SP_CURSOR_MISMATCH, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } sp_instr_copen *i= new (thd->mem_root) sp_instr_copen(sp->instructions(), pctx, offset); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; } #line 21817 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 363: #line 4010 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); uint offset; if (! pctx->find_cursor((yyvsp[-1].lex_str), &offset, false)) { my_error(ER_SP_CURSOR_MISMATCH, MYF(0), (yyvsp[-1].lex_str).str); MYSQL_YYABORT; } sp_instr_cfetch *i= new (thd->mem_root) sp_instr_cfetch(sp->instructions(), pctx, offset); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; } #line 21842 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 364: #line 4031 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 21848 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 365: #line 4036 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); uint offset; if (! pctx->find_cursor((yyvsp[0].lex_str), &offset, false)) { my_error(ER_SP_CURSOR_MISMATCH, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } sp_instr_cclose *i= new (thd->mem_root) sp_instr_cclose(sp->instructions(), pctx, offset); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; } #line 21873 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 369: #line 4066 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_variable *spv; if (!pctx || !(spv= pctx->find_variable((yyvsp[0].lex_str), false))) { my_error(ER_SP_UNDECLARED_VAR, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } /* An SP local variable */ sp_instr_cfetch *i= (sp_instr_cfetch *)sp->last_instruction(); i->add_to_varlist(spv); } #line 21895 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 370: #line 4084 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_variable *spv; if (!pctx || !(spv= pctx->find_variable((yyvsp[0].lex_str), false))) { my_error(ER_SP_UNDECLARED_VAR, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } /* An SP local variable */ sp_instr_cfetch *i= (sp_instr_cfetch *)sp->last_instruction(); i->add_to_varlist(spv); } #line 21917 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 371: #line 4104 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$1*/ THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp->reset_lex(thd); sp->m_parser_data.push_expr_start_ptr((yylsp[0]).raw.end); } #line 21930 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 372: #line 4113 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$3*/ ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); /* Extract expression string. */ LEX_STRING expr_query= EMPTY_STR; const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr(); if (lex->is_metadata_used()) { expr_query= make_string(thd, expr_start_ptr, (yylsp[0]).raw.end); if (!expr_query.str) MYSQL_YYABORT; } sp_instr_jump_if_not *i = new (thd->mem_root) sp_instr_jump_if_not(sp->instructions(), lex, (yyvsp[0].item), expr_query); /* Add jump instruction. */ if (i == NULL || sp->m_parser_data.add_backpatch_entry( i, pctx->push_label(thd, EMPTY_STR, 0)) || sp->m_parser_data.add_cont_backpatch_entry(i) || sp->add_instr(thd, i) || sp->restore_lex(thd)) { MYSQL_YYABORT; } } #line 21972 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 373: #line 4152 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$6*/ THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_instr_jump *i = new (thd->mem_root) sp_instr_jump(sp->instructions(), pctx); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; sp->m_parser_data.do_backpatch(pctx->pop_label(), sp->instructions()); sp->m_parser_data.add_backpatch_entry( i, pctx->push_label(thd, EMPTY_STR, 0)); } #line 21995 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 374: #line 4171 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$8*/ LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp->m_parser_data.do_backpatch(pctx->pop_label(), sp->instructions()); } #line 22008 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 380: #line 4194 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$2*/ THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; case_stmt_action_case(thd); sp->reset_lex(thd); /* For CASE-expr $3 */ sp->m_parser_data.push_expr_start_ptr((yylsp[0]).raw.end); } #line 22023 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 381: #line 4205 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$4*/ ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; /* Extract CASE-expression string. */ LEX_STRING case_expr_query= EMPTY_STR; const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr(); if (lex->is_metadata_used()) { case_expr_query= make_string(thd, expr_start_ptr, (yylsp[0]).raw.end); if (!case_expr_query.str) MYSQL_YYABORT; } /* Register new CASE-expression and get its id. */ sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); int case_expr_id= pctx->push_case_expr_id(); if (case_expr_id < 0) MYSQL_YYABORT; /* Add CASE-set instruction. */ sp_instr_set_case_expr *i= new (thd->mem_root) sp_instr_set_case_expr(sp->instructions(), lex, case_expr_id, (yyvsp[0].item), case_expr_query); if (i == NULL || sp->m_parser_data.add_cont_backpatch_entry(i) || sp->add_instr(thd, i) || sp->restore_lex(thd)) { MYSQL_YYABORT; } } #line 22070 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 382: #line 4251 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$9*/ case_stmt_action_end_case(Lex, true); } #line 22078 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 383: #line 4258 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { case_stmt_action_case(YYTHD); } #line 22086 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 384: #line 4265 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { case_stmt_action_end_case(Lex, false); } #line 22094 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 389: #line 4282 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$2*/ THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp->reset_lex(thd); sp->m_parser_data.push_expr_start_ptr((yylsp[0]).raw.end); } #line 22107 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 390: #line 4291 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$4*/ /* Simple case: <caseval> = <whenval> */ ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); /* Extract expression string. */ LEX_STRING when_expr_query= EMPTY_STR; const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr(); if (lex->is_metadata_used()) { when_expr_query= make_string(thd, expr_start_ptr, (yylsp[0]).raw.end); if (!when_expr_query.str) MYSQL_YYABORT; } /* Add CASE-when-jump instruction. */ sp_instr_jump_case_when *i = new (thd->mem_root) sp_instr_jump_case_when(sp->instructions(), lex, pctx->get_current_case_expr_id(), (yyvsp[0].item), when_expr_query); if (i == NULL || i->on_after_expr_parsing(thd) || sp->m_parser_data.add_backpatch_entry( i, pctx->push_label(thd, EMPTY_STR, 0)) || sp->m_parser_data.add_cont_backpatch_entry(i) || sp->add_instr(thd, i) || sp->restore_lex(thd)) { MYSQL_YYABORT; } } #line 22153 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 391: #line 4334 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$7*/ if (case_stmt_action_then(YYTHD, Lex)) MYSQL_YYABORT; } #line 22162 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 392: #line 4342 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$2*/ THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp->reset_lex(thd); sp->m_parser_data.push_expr_start_ptr((yylsp[0]).raw.end); } #line 22175 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 393: #line 4351 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$4*/ ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); /* Extract expression string. */ LEX_STRING when_query= EMPTY_STR; const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr(); if (lex->is_metadata_used()) { when_query= make_string(thd, expr_start_ptr, (yylsp[0]).raw.end); if (!when_query.str) MYSQL_YYABORT; } /* Add jump instruction. */ sp_instr_jump_if_not *i= new (thd->mem_root) sp_instr_jump_if_not(sp->instructions(), lex, (yyvsp[0].item), when_query); if (i == NULL || sp->m_parser_data.add_backpatch_entry( i, pctx->push_label(thd, EMPTY_STR, 0)) || sp->m_parser_data.add_cont_backpatch_entry(i) || sp->add_instr(thd, i) || sp->restore_lex(thd)) { MYSQL_YYABORT; } } #line 22216 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 394: #line 4389 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$8*/ if (case_stmt_action_then(YYTHD, Lex)) MYSQL_YYABORT; } #line 22225 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 395: #line 4397 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_instr_error *i= new (thd->mem_root) sp_instr_error(sp->instructions(), pctx, ER_SP_CASE_NOT_FOUND); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; } #line 22243 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 397: #line 4415 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_label *lab= pctx->find_label((yyvsp[-1].lex_str)); if (lab) { my_error(ER_SP_LABEL_REDEFINE, MYF(0), (yyvsp[-1].lex_str).str); MYSQL_YYABORT; } else { lab= pctx->push_label(YYTHD, (yyvsp[-1].lex_str), sp->instructions()); lab->type= sp_label::ITERATION; } } #line 22265 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 398: #line 4433 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_label *lab= pctx->pop_label(); if ((yyvsp[0].lex_str).str) { if (my_strcasecmp(system_charset_info, (yyvsp[0].lex_str).str, lab->name.str) != 0) { my_error(ER_SP_LABEL_MISMATCH, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } } sp->m_parser_data.do_backpatch(lab, sp->instructions()); } #line 22286 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 399: #line 4452 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)= null_lex_str; } #line 22292 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 400: #line 4453 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)= (yyvsp[0].lex_str); } #line 22298 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 401: #line 4458 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_label *lab= pctx->find_label((yyvsp[-1].lex_str)); if (lab) { my_error(ER_SP_LABEL_REDEFINE, MYF(0), (yyvsp[-1].lex_str).str); MYSQL_YYABORT; } lab= pctx->push_label(YYTHD, (yyvsp[-1].lex_str), sp->instructions()); lab->type= sp_label::BEGIN; } #line 22318 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 402: #line 4474 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_label *lab= pctx->pop_label(); if ((yyvsp[0].lex_str).str) { if (my_strcasecmp(system_charset_info, (yyvsp[0].lex_str).str, lab->name.str) != 0) { my_error(ER_SP_LABEL_MISMATCH, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } } } #line 22337 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 403: #line 4491 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* Unlabeled blocks get a secret label. */ LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_label *lab= pctx->push_label(YYTHD, EMPTY_STR, sp->instructions()); lab->type= sp_label::BEGIN; } #line 22352 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 404: #line 4502 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->get_sp_current_parsing_ctx()->pop_label(); } #line 22361 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 405: #line 4510 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* QQ This is just a dummy for grouping declarations and statements together. No [[NOT] ATOMIC] yet, and we need to figure out how make it coexist with the existing BEGIN COMMIT/ROLLBACK. */ THD *thd= YYTHD; LEX *lex= thd->lex; sp_pcontext *parent_pctx= lex->get_sp_current_parsing_ctx(); sp_pcontext *child_pctx= parent_pctx->push_context(thd, sp_pcontext::REGULAR_SCOPE); lex->set_sp_current_parsing_ctx(child_pctx); } #line 22378 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 406: #line 4525 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); // We always have a label. sp->m_parser_data.do_backpatch(pctx->last_label(), sp->instructions()); if ((yyvsp[-2].spblock).hndlrs) { sp_instr *i= new (thd->mem_root) sp_instr_hpop(sp->instructions(), pctx); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; } if ((yyvsp[-2].spblock).curs) { sp_instr *i= new (thd->mem_root) sp_instr_cpop(sp->instructions(), pctx, (yyvsp[-2].spblock).curs); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; } lex->set_sp_current_parsing_ctx(pctx->pop_context()); } #line 22414 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 407: #line 4561 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_instr_jump *i= new (thd->mem_root) sp_instr_jump(sp->instructions(), pctx, pctx->last_label()->ip); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; } #line 22433 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 408: #line 4576 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$2*/ THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp->reset_lex(thd); sp->m_parser_data.push_expr_start_ptr((yylsp[0]).raw.end); } #line 22446 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 409: #line 4585 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$4*/ ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); /* Extract expression string. */ LEX_STRING expr_query= EMPTY_STR; const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr(); if (lex->is_metadata_used()) { expr_query= make_string(thd, expr_start_ptr, (yylsp[0]).raw.end); if (!expr_query.str) MYSQL_YYABORT; } /* Add jump instruction. */ sp_instr_jump_if_not *i= new (thd->mem_root) sp_instr_jump_if_not(sp->instructions(), lex, (yyvsp[0].item), expr_query); if (i == NULL || /* Jumping forward */ sp->m_parser_data.add_backpatch_entry(i, pctx->last_label()) || sp->m_parser_data.new_cont_backpatch() || sp->m_parser_data.add_cont_backpatch_entry(i) || sp->add_instr(thd, i) || sp->restore_lex(thd)) { MYSQL_YYABORT; } } #line 22488 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 410: #line 4626 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$14*/ THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); sp_instr_jump *i= new (thd->mem_root) sp_instr_jump(sp->instructions(), pctx, pctx->last_label()->ip); if (!i || sp->add_instr(thd, i)) MYSQL_YYABORT; sp->m_parser_data.do_cont_backpatch(sp->instructions()); } #line 22508 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 411: #line 4644 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$4*/ THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp->reset_lex(thd); sp->m_parser_data.push_expr_start_ptr((yylsp[0]).raw.end); } #line 22521 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 412: #line 4653 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$6*/ ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; sp_pcontext *pctx= lex->get_sp_current_parsing_ctx(); uint ip= sp->instructions(); /* Extract expression string. */ LEX_STRING expr_query= EMPTY_STR; const char *expr_start_ptr= sp->m_parser_data.pop_expr_start_ptr(); if (lex->is_metadata_used()) { expr_query= make_string(thd, expr_start_ptr, (yylsp[0]).raw.end); if (!expr_query.str) MYSQL_YYABORT; } /* Add jump instruction. */ sp_instr_jump_if_not *i= new (thd->mem_root) sp_instr_jump_if_not(ip, lex, (yyvsp[0].item), expr_query, pctx->last_label()->ip); if (i == NULL || sp->add_instr(thd, i) || sp->restore_lex(thd)) { MYSQL_YYABORT; } /* We can shortcut the cont_backpatch here */ i->set_cont_dest(ip + 1); } #line 22564 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 414: #line 4697 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= TRG_ACTION_BEFORE; } #line 22570 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 415: #line 4699 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= TRG_ACTION_AFTER; } #line 22576 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 416: #line 4704 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= TRG_EVENT_INSERT; } #line 22582 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 417: #line 4706 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= TRG_EVENT_UPDATE; } #line 22588 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 418: #line 4708 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= TRG_EVENT_DELETE; } #line 22594 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 422: #line 4742 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 22600 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 423: #line 4744 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->logfile_group_name= (yyvsp[0].lex_str).str; } #line 22609 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 424: #line 4754 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_ADD_FILE; } #line 22617 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 425: #line 4760 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_tablespace_info->ts_alter_tablespace_type= ALTER_TABLESPACE_DROP_FILE; } #line 22625 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 430: #line 4783 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 22631 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 482: #line 4882 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->data_file_name= (yyvsp[0].lex_str).str; } #line 22640 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 483: #line 4890 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->undo_file_name= (yyvsp[0].lex_str).str; } #line 22649 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 484: #line 4898 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->redo_file_name= (yyvsp[0].lex_str).str; } #line 22658 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 485: #line 4906 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info= new st_alter_tablespace(); if (lex->alter_tablespace_info == NULL) MYSQL_YYABORT; lex->alter_tablespace_info->tablespace_name= (yyvsp[0].lex_str).str; lex->sql_command= SQLCOM_ALTER_TABLESPACE; } #line 22671 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 486: #line 4918 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info= new st_alter_tablespace(); if (lex->alter_tablespace_info == NULL) MYSQL_YYABORT; lex->alter_tablespace_info->logfile_group_name= (yyvsp[0].lex_str).str; lex->sql_command= SQLCOM_ALTER_TABLESPACE; } #line 22684 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 487: #line 4930 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->ts_access_mode= TS_READ_ONLY; } #line 22693 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 488: #line 4935 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->ts_access_mode= TS_READ_WRITE; } #line 22702 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 489: #line 4940 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->ts_access_mode= TS_NOT_ACCESSIBLE; } #line 22711 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 490: #line 4948 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->initial_size= (yyvsp[0].ulonglong_number); } #line 22720 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 491: #line 4956 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->autoextend_size= (yyvsp[0].ulonglong_number); } #line 22729 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 492: #line 4964 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->max_size= (yyvsp[0].ulonglong_number); } #line 22738 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 493: #line 4972 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->extent_size= (yyvsp[0].ulonglong_number); } #line 22747 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 494: #line 4980 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->undo_buffer_size= (yyvsp[0].ulonglong_number); } #line 22756 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 495: #line 4988 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->redo_buffer_size= (yyvsp[0].ulonglong_number); } #line 22765 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 496: #line 4996 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->alter_tablespace_info->nodegroup_id != UNDEF_NODEGROUP) { my_error(ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"NODEGROUP"); MYSQL_YYABORT; } lex->alter_tablespace_info->nodegroup_id= (yyvsp[0].ulong_num); } #line 22779 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 497: #line 5009 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->alter_tablespace_info->ts_comment != NULL) { my_error(ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"COMMENT"); MYSQL_YYABORT; } lex->alter_tablespace_info->ts_comment= (yyvsp[0].lex_str).str; } #line 22793 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 498: #line 5022 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->alter_tablespace_info->storage_engine != NULL) { my_error(ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0), "STORAGE ENGINE"); MYSQL_YYABORT; } lex->alter_tablespace_info->storage_engine= (yyvsp[0].db_type); } #line 22808 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 499: #line 5036 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->alter_tablespace_info->file_block_size != 0) { my_error(ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0), "FILE_BLOCK_SIZE"); MYSQL_YYABORT; } lex->alter_tablespace_info->file_block_size= (yyvsp[0].ulonglong_number); } #line 22823 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 500: #line 5050 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->wait_until_completed= TRUE; } #line 22832 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 501: #line 5055 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (!(lex->alter_tablespace_info->wait_until_completed)) { my_error(ER_FILEGROUP_OPTION_ONLY_ONCE,MYF(0),"NO_WAIT"); MYSQL_YYABORT; } lex->alter_tablespace_info->wait_until_completed= FALSE; } #line 22846 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 502: #line 5067 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulonglong_number)= (yyvsp[0].ulonglong_number);} #line 22852 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 503: #line 5069 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ulonglong number; uint text_shift_number= 0; longlong prefix_number; char *start_ptr= (yyvsp[0].lex_str).str; size_t str_len= (yyvsp[0].lex_str).length; char *end_ptr= start_ptr + str_len; int error; prefix_number= my_strtoll10(start_ptr, &end_ptr, &error); if ((start_ptr + str_len - 1) == end_ptr) { switch (end_ptr[0]) { case 'g': case 'G': text_shift_number+=10; // Fall through. case 'm': case 'M': text_shift_number+=10; // Fall through. case 'k': case 'K': text_shift_number+=10; break; default: { my_error(ER_WRONG_SIZE_NUMBER, MYF(0)); MYSQL_YYABORT; } } if (prefix_number >> 31) { my_error(ER_SIZE_OVERFLOW_ERROR, MYF(0)); MYSQL_YYABORT; } number= prefix_number << text_shift_number; } else { my_error(ER_WRONG_SIZE_NUMBER, MYF(0)); MYSQL_YYABORT; } (yyval.ulonglong_number)= number; } #line 22902 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 504: #line 5121 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 22908 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 505: #line 5124 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 22914 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 506: #line 5126 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; TABLE_LIST *src_table; LEX *lex= thd->lex; lex->create_info.options|= HA_LEX_CREATE_TABLE_LIKE; src_table= lex->select_lex->add_table_to_list(thd, (yyvsp[0].table), NULL, 0, TL_READ, MDL_SHARED_READ); if (! src_table) MYSQL_YYABORT; /* CREATE TABLE ... LIKE is not allowed for views. */ src_table->required_type= FRMTYPE_TABLE; } #line 22933 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 507: #line 5141 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; TABLE_LIST *src_table; LEX *lex= thd->lex; lex->create_info.options|= HA_LEX_CREATE_TABLE_LIKE; src_table= lex->select_lex->add_table_to_list(thd, (yyvsp[-1].table), NULL, 0, TL_READ, MDL_SHARED_READ); if (! src_table) MYSQL_YYABORT; /* CREATE TABLE ... LIKE is not allowed for views. */ src_table->required_type= FRMTYPE_TABLE; } #line 22952 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 508: #line 5160 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 22958 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 509: #line 5163 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { CONTEXTUALIZE((yyvsp[-1].create_select)); Select->set_braces(1); } #line 22967 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 510: #line 5168 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].node) != NULL) CONTEXTUALIZE((yyvsp[0].node)); } #line 22976 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 511: #line 5175 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 22982 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 512: #line 5177 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { CONTEXTUALIZE((yyvsp[0].create_select)); Select->set_braces(0); } #line 22991 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 513: #line 5182 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].union_list) != NULL) CONTEXTUALIZE((yyvsp[0].union_list)); } #line 23000 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 514: #line 5187 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { CONTEXTUALIZE((yyvsp[-1].create_select)); Select->set_braces(1); } #line 23009 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 515: #line 5192 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].node) != NULL) CONTEXTUALIZE((yyvsp[0].node)); } #line 23018 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 516: #line 5200 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* 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 23032 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 517: #line 5236 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23038 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 519: #line 5242 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->part_info= new partition_info(); if (!lex->part_info) { mem_alloc_error(sizeof(partition_info)); MYSQL_YYABORT; } if (lex->sql_command == SQLCOM_ALTER_TABLE) { lex->alter_info.flags|= Alter_info::ALTER_PARTITION; } } #line 23056 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 521: #line 5260 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (!lex->part_info) { my_syntax_error(ER(ER_PARTITION_ENTRY_ERROR)); MYSQL_YYABORT; } /* We enter here when opening the frm file to translate partition info string into part_info data structure. */ } #line 23073 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 522: #line 5272 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23079 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 524: #line 5281 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 23090 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 525: #line 5288 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->part_type= HASH_PARTITION; } #line 23096 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 526: #line 5289 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23102 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 527: #line 5291 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->part_type= RANGE_PARTITION; } #line 23108 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 528: #line 5293 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->part_type= RANGE_PARTITION; } #line 23114 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 529: #line 5295 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->part_type= LIST_PARTITION; } #line 23120 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 530: #line 5297 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->part_type= LIST_PARTITION; } #line 23126 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 531: #line 5301 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23132 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 532: #line 5303 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->linear_hash_ind= TRUE;} #line 23138 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 533: #line 5308 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->key_algorithm= partition_info::KEY_ALGORITHM_NONE;} #line 23144 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 534: #line 5310 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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: my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } } #line 23162 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 535: #line 5326 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23168 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 536: #line 5327 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23174 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 537: #line 5331 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23180 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 538: #line 5332 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23186 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 539: #line 5337 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; part_info->num_columns++; if (part_info->part_field_list.push_back((yyvsp[0].lex_str).str)) { mem_alloc_error(1); MYSQL_YYABORT; } if (part_info->num_columns > MAX_REF_PARTS) { my_error(ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR, MYF(0), "list of partition fields"); MYSQL_YYABORT; } } #line 23206 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 540: #line 5356 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; part_info->column_list= TRUE; part_info->list_of_part_fields= TRUE; } #line 23216 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 541: #line 5366 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; /* TODO: replace @1.cpp.end with @2.cpp.start: we don't need whitespaces at the beginning of the partition expression string: */ if (part_info->set_part_expr(const_cast<char *>((yylsp[-2]).cpp.end), (yyvsp[-1].item), const_cast<char *>((yylsp[-1]).cpp.end), FALSE)) { MYSQL_YYABORT; } part_info->num_columns= 1; part_info->column_list= FALSE; } #line 23233 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 542: #line 5382 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* TODO: replace @1.cpp.end with @2.cpp.start: we don't need whitespaces at the beginning of the partition expression string: */ if (Lex->part_info->set_part_expr(const_cast<char *>((yylsp[-2]).cpp.end), (yyvsp[-1].item), const_cast<char *>((yylsp[-1]).cpp.end), TRUE)) { MYSQL_YYABORT; } } #line 23247 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 543: #line 5395 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23253 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 544: #line 5397 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { uint num_parts= (yyvsp[0].ulong_num); partition_info *part_info= Lex->part_info; if (num_parts == 0) { my_error(ER_NO_PARTS_ERROR, MYF(0), "partitions"); MYSQL_YYABORT; } part_info->num_parts= num_parts; part_info->use_default_num_partitions= FALSE; } #line 23270 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 545: #line 5412 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23276 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 546: #line 5414 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->subpart_type= HASH_PARTITION; } #line 23282 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 547: #line 5415 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23288 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 548: #line 5418 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; part_info->subpart_type= HASH_PARTITION; part_info->list_of_subpart_fields= TRUE; } #line 23298 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 549: #line 5423 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23304 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 550: #line 5427 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23310 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 551: #line 5428 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23316 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 552: #line 5433 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; if (part_info->subpart_field_list.push_back((yyvsp[0].lex_str).str)) { mem_alloc_error(1); MYSQL_YYABORT; } if (part_info->subpart_field_list.elements > MAX_REF_PARTS) { my_error(ER_TOO_MANY_PARTITION_FUNC_FIELDS_ERROR, MYF(0), "list of subpartition fields"); MYSQL_YYABORT; } } #line 23335 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 553: #line 5451 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->safe_to_cache_query = true; ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); bool not_corr_func; not_corr_func= !lex->safe_to_cache_query; if (not_corr_func) { my_syntax_error(ER(ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR)); MYSQL_YYABORT; } (yyval.item)=(yyvsp[0].item); } #line 23354 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 554: #line 5468 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23360 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 555: #line 5470 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { uint num_parts= (yyvsp[0].ulong_num); LEX *lex= Lex; if (num_parts == 0) { my_error(ER_NO_PARTS_ERROR, MYF(0), "subpartitions"); MYSQL_YYABORT; } lex->part_info->num_subparts= num_parts; lex->part_info->use_default_num_subpartitions= FALSE; } #line 23376 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 556: #line 5485 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; if (part_info->part_type == RANGE_PARTITION) { my_error(ER_PARTITIONS_MUST_BE_DEFINED_ERROR, MYF(0), "RANGE"); MYSQL_YYABORT; } else if (part_info->part_type == LIST_PARTITION) { my_error(ER_PARTITIONS_MUST_BE_DEFINED_ERROR, MYF(0), "LIST"); MYSQL_YYABORT; } } #line 23396 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 557: #line 5501 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; uint count_curr_parts= part_info->partitions.elements; if (part_info->num_parts != 0) { if (part_info->num_parts != count_curr_parts) { my_syntax_error(ER(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 23419 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 558: #line 5522 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23425 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 559: #line 5523 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23431 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 560: #line 5528 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; partition_element *p_elem= new partition_element(); if (!p_elem || part_info->partitions.push_back(p_elem)) { mem_alloc_error(sizeof(partition_element)); MYSQL_YYABORT; } p_elem->part_state= PART_NORMAL; 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 23451 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 561: #line 5547 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23457 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 562: #line 5552 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; partition_element *p_elem= part_info->curr_part_elem; if (check_string_char_length(to_lex_cstring((yyvsp[0].lex_str)), "", NAME_CHAR_LEN, system_charset_info, true)) { my_error(ER_TOO_LONG_IDENT, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } p_elem->partition_name= (yyvsp[0].lex_str).str; } #line 23473 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 563: #line 5567 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; partition_info *part_info= lex->part_info; if (part_info->part_type == NOT_A_PARTITION) part_info->part_type= HASH_PARTITION; else if (part_info->part_type == RANGE_PARTITION) { my_error(ER_PARTITION_REQUIRES_VALUES_ERROR, MYF(0), "RANGE", "LESS THAN"); MYSQL_YYABORT; } else if (part_info->part_type == LIST_PARTITION) { my_error(ER_PARTITION_REQUIRES_VALUES_ERROR, MYF(0), "LIST", "IN"); MYSQL_YYABORT; } } #line 23496 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 564: #line 5586 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; partition_info *part_info= lex->part_info; if (part_info->part_type == NOT_A_PARTITION) part_info->part_type= RANGE_PARTITION; else if (part_info->part_type != RANGE_PARTITION) { my_error(ER_PARTITION_WRONG_VALUES_ERROR, MYF(0), "RANGE", "LESS THAN"); MYSQL_YYABORT; } } #line 23513 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 565: #line 5598 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23519 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 566: #line 5600 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; partition_info *part_info= lex->part_info; if (part_info->part_type == NOT_A_PARTITION) part_info->part_type= LIST_PARTITION; else if (part_info->part_type != LIST_PARTITION) { my_error(ER_PARTITION_WRONG_VALUES_ERROR, MYF(0), "LIST", "IN"); MYSQL_YYABORT; } } #line 23536 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 567: #line 5612 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23542 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 568: #line 5617 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; if (part_info->num_columns && part_info->num_columns != 1U) { part_info->print_debug("Kilroy II", NULL); my_syntax_error(ER(ER_PARTITION_COLUMN_LIST_ERROR)); MYSQL_YYABORT; } else part_info->num_columns= 1U; if (part_info->init_column_part()) { MYSQL_YYABORT; } if (part_info->add_max_value()) { MYSQL_YYABORT; } } #line 23568 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 569: #line 5638 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23574 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 570: #line 5643 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 (!lex->is_partition_management() || part_info->num_columns == 0 || part_info->num_columns > MAX_REF_PARTS) { part_info->print_debug("Kilroy III", NULL); my_syntax_error(ER(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 [COLUMNS] partitions. */ if (part_info->reorganize_into_single_field_col_val()) { MYSQL_YYABORT; } } } #line 23607 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 571: #line 5672 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; if (part_info->num_columns < 2U) { my_syntax_error(ER(ER_ROW_SINGLE_PARTITION_FIELD_ERROR)); MYSQL_YYABORT; } } #line 23620 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 572: #line 5683 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23626 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 573: #line 5684 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23632 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 574: #line 5689 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 (!(part_info->part_type == LIST_PARTITION && part_info->num_columns == 1U) && part_info->init_column_part()) { MYSQL_YYABORT; } } #line 23648 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 575: #line 5700 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23654 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 576: #line 5702 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 (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); my_syntax_error(ER(ER_PARTITION_COLUMN_LIST_ERROR)); MYSQL_YYABORT; } part_info->curr_list_object= 0; } #line 23679 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 577: #line 5725 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23685 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 578: #line 5726 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23691 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 579: #line 5731 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; if (part_info->part_type == LIST_PARTITION) { my_syntax_error(ER(ER_MAXVALUE_IN_VALUES_IN)); MYSQL_YYABORT; } if (part_info->add_max_value()) { MYSQL_YYABORT; } } #line 23708 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 580: #line 5744 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->safe_to_cache_query = true; ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); partition_info *part_info= lex->part_info; Item *part_expr= (yyvsp[0].item); if (!lex->safe_to_cache_query) { my_syntax_error(ER(ER_WRONG_EXPR_IN_PARTITION_FUNC_ERROR)); MYSQL_YYABORT; } if (part_info->add_column_list_value(YYTHD, part_expr)) { MYSQL_YYABORT; } } #line 23731 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 581: #line 5767 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; if (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. */ my_syntax_error(ER(ER_PARTITION_WRONG_NO_SUBPART_ERROR)); MYSQL_YYABORT; } } #line 23749 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 582: #line 5781 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; if (part_info->num_subparts != 0) { if (part_info->num_subparts != part_info->count_curr_subparts) { my_syntax_error(ER(ER_PARTITION_WRONG_NO_SUBPART_ERROR)); MYSQL_YYABORT; } } else if (part_info->count_curr_subparts > 0) { if (part_info->partitions.elements > 1) { my_syntax_error(ER(ER_PARTITION_WRONG_NO_SUBPART_ERROR)); MYSQL_YYABORT; } part_info->num_subparts= part_info->count_curr_subparts; } part_info->count_curr_subparts= 0; } #line 23776 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 583: #line 5806 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23782 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 584: #line 5807 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23788 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 585: #line 5812 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; partition_element *curr_part= part_info->current_partition; partition_element *sub_p_elem= new partition_element(curr_part); if (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. */ my_syntax_error(ER(ER_PARTITION_WRONG_NO_SUBPART_ERROR)); MYSQL_YYABORT; } if (!sub_p_elem || curr_part->subpartitions.push_back(sub_p_elem)) { mem_alloc_error(sizeof(partition_element)); MYSQL_YYABORT; } 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 23825 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 586: #line 5844 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23831 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 587: #line 5849 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (check_string_char_length(to_lex_cstring((yyvsp[0].lex_str)), "", NAME_CHAR_LEN, system_charset_info, true)) { my_error(ER_TOO_LONG_IDENT, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } Lex->part_info->curr_part_elem->partition_name= (yyvsp[0].lex_str).str; } #line 23845 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 588: #line 5861 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23851 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 589: #line 5862 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23857 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 590: #line 5866 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23863 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 591: #line 5867 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23869 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 592: #line 5872 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->curr_part_elem->tablespace_name= (yyvsp[0].lex_str).str; } #line 23875 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 593: #line 5874 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 23885 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 594: #line 5880 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->curr_part_elem->nodegroup_id= (uint16) (yyvsp[0].ulong_num); } #line 23891 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 595: #line 5882 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->curr_part_elem->part_max_rows= (ha_rows) (yyvsp[0].ulonglong_number); } #line 23897 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 596: #line 5884 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->curr_part_elem->part_min_rows= (ha_rows) (yyvsp[0].ulonglong_number); } #line 23903 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 597: #line 5886 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->curr_part_elem->data_file_name= (yyvsp[0].lex_str).str; } #line 23909 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 598: #line 5888 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->curr_part_elem->index_file_name= (yyvsp[0].lex_str).str; } #line 23915 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 599: #line 5890 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->curr_part_elem->part_comment= (yyvsp[0].lex_str).str; } #line 23921 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 600: #line 5899 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.create_select)= NEW_PTN PT_create_select((yyvsp[-3].optimizer_hints), (yyvsp[-2].select_options), (yyvsp[-1].item_list2), (yyvsp[0].table_expression)); } #line 23929 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 601: #line 5905 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23935 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 602: #line 5906 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23941 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 603: #line 5910 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23947 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 604: #line 5911 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23953 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 605: #line 5915 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23959 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 606: #line 5916 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23965 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 607: #line 5920 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23971 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 608: #line 5921 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 23977 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 609: #line 5925 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 23983 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 610: #line 5926 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[0].num);} #line 23989 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 611: #line 5930 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=(yyvsp[0].num); } #line 23995 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 612: #line 5931 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[-1].num) | (yyvsp[0].num); } #line 24001 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 613: #line 5935 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=HA_LEX_CREATE_TMP_TABLE; } #line 24007 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 614: #line 5939 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 24013 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 615: #line 5940 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=HA_LEX_CREATE_IF_NOT_EXISTS; } #line 24019 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 623: #line 5961 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.db_type= (yyvsp[0].db_type); Lex->create_info.used_fields|= HA_CREATE_USED_ENGINE; } #line 24028 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 624: #line 5966 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.max_rows= (yyvsp[0].ulonglong_number); Lex->create_info.used_fields|= HA_CREATE_USED_MAX_ROWS; } #line 24037 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 625: #line 5971 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.min_rows= (yyvsp[0].ulonglong_number); Lex->create_info.used_fields|= HA_CREATE_USED_MIN_ROWS; } #line 24046 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 626: #line 5976 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.avg_row_length=(yyvsp[0].ulong_num); Lex->create_info.used_fields|= HA_CREATE_USED_AVG_ROW_LENGTH; } #line 24055 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 627: #line 5981 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.password=(yyvsp[0].lex_str).str; Lex->create_info.used_fields|= HA_CREATE_USED_PASSWORD; } #line 24064 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 628: #line 5986 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.comment=(yyvsp[0].lex_str); Lex->create_info.used_fields|= HA_CREATE_USED_COMMENT; } #line 24073 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 629: #line 5991 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.used_fields|= HA_CREATE_USED_COMPRESS; Lex->create_info.compress= (yyvsp[0].lex_str); } #line 24082 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 630: #line 5996 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.used_fields|= HA_CREATE_USED_ENCRYPT; Lex->create_info.encrypt_type= (yyvsp[0].lex_str); } #line 24091 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 631: #line 6001 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.auto_increment_value=(yyvsp[0].ulonglong_number); Lex->create_info.used_fields|= HA_CREATE_USED_AUTO; } #line 24100 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 632: #line 6006 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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: my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } Lex->create_info.used_fields|= HA_CREATE_USED_PACK_KEYS; } #line 24119 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 633: #line 6021 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 24129 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 634: #line 6027 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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: my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } Lex->create_info.used_fields|= HA_CREATE_USED_STATS_AUTO_RECALC; } #line 24148 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 635: #line 6042 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.stats_auto_recalc= HA_STATS_AUTO_RECALC_DEFAULT; Lex->create_info.used_fields|= HA_CREATE_USED_STATS_AUTO_RECALC; } #line 24157 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 636: #line 6047 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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: my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } Lex->create_info.used_fields|= HA_CREATE_USED_STATS_PERSISTENT; } #line 24176 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 637: #line 6062 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 24186 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 638: #line 6068 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* 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 ((yyvsp[0].ulong_num) == 0 || (yyvsp[0].ulong_num) > 0xffff) { my_syntax_error(ER(ER_SYNTAX_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 24208 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 639: #line 6086 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.stats_sample_pages=0; Lex->create_info.used_fields|= HA_CREATE_USED_STATS_SAMPLE_PAGES; } #line 24217 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 640: #line 6091 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 24226 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 641: #line 6096 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 24235 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 642: #line 6101 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 24244 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 643: #line 6106 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.row_type= (yyvsp[0].row_type); Lex->create_info.used_fields|= HA_CREATE_USED_ROW_FORMAT; } #line 24253 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 644: #line 6111 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->select_lex->table_list.save_and_clear(&Lex->save_list); } #line 24261 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 645: #line 6115 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* 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->select_lex->table_list; lex->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; assert(last_non_sel_table->next_global == lex->create_info.merge_list.first); 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 24287 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 648: #line 6139 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.merge_insert_method= (yyvsp[0].ulong_num); Lex->create_info.used_fields|= HA_CREATE_USED_INSERT_METHOD; } #line 24296 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 649: #line 6144 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.data_file_name= (yyvsp[0].lex_str).str; Lex->create_info.used_fields|= HA_CREATE_USED_DATADIR; } #line 24305 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 650: #line 6149 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.index_file_name= (yyvsp[0].lex_str).str; Lex->create_info.used_fields|= HA_CREATE_USED_INDEXDIR; } #line 24314 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 651: #line 6154 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.tablespace= (yyvsp[0].lex_str).str; Lex->create_info.used_fields|= HA_CREATE_USED_TABLESPACE; } #line 24323 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 652: #line 6159 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {Lex->create_info.storage_media= HA_SM_DISK;} #line 24329 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 653: #line 6161 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {Lex->create_info.storage_media= HA_SM_MEMORY;} #line 24335 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 654: #line 6163 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 24345 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 655: #line 6169 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.used_fields|= HA_CREATE_USED_KEY_BLOCK_SIZE; Lex->create_info.key_block_size= (yyvsp[0].ulong_num); } #line 24354 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 656: #line 6177 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { HA_CREATE_INFO *cinfo= &Lex->create_info; if ((cinfo->used_fields & HA_CREATE_USED_DEFAULT_CHARSET) && cinfo->default_table_charset && (yyvsp[0].charset) && !my_charset_same(cinfo->default_table_charset,(yyvsp[0].charset))) { my_error(ER_CONFLICTING_DECLARATIONS, MYF(0), "CHARACTER SET ", cinfo->default_table_charset->csname, "CHARACTER SET ", (yyvsp[0].charset)->csname); MYSQL_YYABORT; } Lex->create_info.default_table_charset= (yyvsp[0].charset); Lex->create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET; } #line 24373 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 657: #line 6195 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { HA_CREATE_INFO *cinfo= &Lex->create_info; if ((cinfo->used_fields & HA_CREATE_USED_DEFAULT_CHARSET) && cinfo->default_table_charset && (yyvsp[0].charset) && !((yyvsp[0].charset)= merge_charset_and_collation(cinfo->default_table_charset, (yyvsp[0].charset)))) { MYSQL_YYABORT; } Lex->create_info.default_table_charset= (yyvsp[0].charset); Lex->create_info.used_fields|= HA_CREATE_USED_DEFAULT_CHARSET; } #line 24391 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 658: #line 6212 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; plugin_ref plugin= ha_resolve_by_name(thd, &(yyvsp[0].lex_str), thd->lex->create_info.options & HA_LEX_CREATE_TMP_TABLE); if (plugin) (yyval.db_type)= plugin_data<handlerton*>(plugin); else { if (!is_engine_substitution_allowed(thd)) { my_error(ER_UNKNOWN_STORAGE_ENGINE, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } (yyval.db_type)= 0; push_warning_printf(thd, Sql_condition::SL_WARNING, ER_UNKNOWN_STORAGE_ENGINE, ER(ER_UNKNOWN_STORAGE_ENGINE), (yyvsp[0].lex_str).str); } } #line 24418 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 659: #line 6238 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; plugin_ref plugin= ha_resolve_by_name(thd, &(yyvsp[0].lex_str), lex->create_info.options & HA_LEX_CREATE_TMP_TABLE); if (plugin) (yyval.db_type)= plugin_data<handlerton*>(plugin); else { my_error(ER_UNKNOWN_STORAGE_ENGINE, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } } #line 24437 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 660: #line 6255 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.row_type)= ROW_TYPE_DEFAULT; } #line 24443 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 661: #line 6256 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.row_type)= ROW_TYPE_FIXED; } #line 24449 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 662: #line 6257 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.row_type)= ROW_TYPE_DYNAMIC; } #line 24455 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 663: #line 6258 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.row_type)= ROW_TYPE_COMPRESSED; } #line 24461 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 664: #line 6259 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.row_type)= ROW_TYPE_REDUNDANT; } #line 24467 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 665: #line 6260 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.row_type)= ROW_TYPE_COMPACT; } #line 24473 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 666: #line 6264 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= MERGE_INSERT_DISABLED; } #line 24479 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 667: #line 6265 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= MERGE_INSERT_TO_FIRST; } #line 24485 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 668: #line 6266 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= MERGE_INSERT_TO_LAST; } #line 24491 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 669: #line 6270 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {(yyval.num) = (int) STRING_RESULT; } #line 24497 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 670: #line 6271 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {(yyval.num) = (int) REAL_RESULT; } #line 24503 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 671: #line 6272 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {(yyval.num) = (int) DECIMAL_RESULT; } #line 24509 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 672: #line 6273 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {(yyval.num) = (int) INT_RESULT; } #line 24515 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 673: #line 6279 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_last_non_select_table= Lex->last_table(); } #line 24523 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 679: #line 6297 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->col_list.empty(); /* Alloced by sql_alloc */ } #line 24531 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 680: #line 6304 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (add_create_index (Lex, (yyvsp[-6].key_type), (yyvsp[-5].lex_str))) MYSQL_YYABORT; } #line 24540 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 681: #line 6310 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (add_create_index (Lex, (yyvsp[-7].key_type), (yyvsp[-5].lex_str))) MYSQL_YYABORT; } #line 24549 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 682: #line 6316 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (add_create_index (Lex, (yyvsp[-7].key_type), (yyvsp[-5].lex_str))) MYSQL_YYABORT; } #line 24558 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 683: #line 6322 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (add_create_index (Lex, (yyvsp[-6].key_type), (yyvsp[-5].lex_str).str ? (yyvsp[-5].lex_str) : (yyvsp[-7].lex_str))) MYSQL_YYABORT; } #line 24567 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 684: #line 6327 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; Key *key= new Foreign_key((yyvsp[-4].lex_str).str ? (yyvsp[-4].lex_str) : (yyvsp[-7].lex_str), lex->col_list, (yyvsp[0].table)->db, (yyvsp[0].table)->table, lex->ref_list, lex->fk_delete_opt, lex->fk_update_opt, lex->fk_match_option); if (key == NULL) MYSQL_YYABORT; lex->alter_info.key_list.push_back(key); if (add_create_index (lex, KEYTYPE_MULTIPLE, (yyvsp[-7].lex_str).str ? (yyvsp[-7].lex_str) : (yyvsp[-4].lex_str), &default_key_create_info, 1)) MYSQL_YYABORT; /* Only used for ALTER TABLE. Ignored otherwise. */ lex->alter_info.flags|= Alter_info::ADD_FOREIGN_KEY; } #line 24590 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 685: #line 6346 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->col_list.empty(); /* Alloced by sql_alloc */ } #line 24598 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 688: #line 6358 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[-1].item), &(yyvsp[-1].item)); } #line 24606 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 689: #line 6365 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)= null_lex_str; } #line 24612 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 690: #line 6366 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)= (yyvsp[0].lex_str); } #line 24618 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 691: #line 6370 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=(yyvsp[0].lex_str); } #line 24624 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 692: #line 6375 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->length=lex->dec=0; lex->type=0; lex->default_value= lex->on_update_value= 0; lex->comment=null_lex_str; lex->charset=NULL; lex->gcol_info= 0; } #line 24638 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 693: #line 6385 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; if (add_field_to_list(lex->thd, &(yyvsp[-2].lex_str), (enum enum_field_types) (yyvsp[0].num), lex->length,lex->dec,lex->type, lex->default_value, lex->on_update_value, &lex->comment, lex->change,&lex->interval_list,lex->charset, lex->uint_geom_type, lex->gcol_info)) MYSQL_YYABORT; } #line 24654 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 694: #line 6399 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 24660 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 695: #line 6403 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[-8].num); /* column of type SERIAL cannot set as generated */ if (Lex->type & SERIAL_FLAG) { my_error(ER_WRONG_USAGE, MYF(0), "SERIAL", "generated column"); MYSQL_YYABORT; } if (Lex->charset) { Lex->charset= merge_charset_and_collation(Lex->charset, (yyvsp[-7].charset)); if (Lex->charset == NULL) MYSQL_YYABORT; } else Lex->charset= (yyvsp[-7].charset); Lex->gcol_info->set_field_type((enum enum_field_types) (yyval.num)); } #line 24683 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 702: #line 6440 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->type|= UNIQUE_FLAG; lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX; } #line 24693 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 703: #line 6446 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->type|= UNIQUE_KEY_FLAG; lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX; } #line 24703 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 704: #line 6451 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->comment= (yyvsp[0].lex_str); } #line 24709 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 705: #line 6452 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= NOT_NULL_FLAG; } #line 24715 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 707: #line 6455 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->type|= PRI_KEY_FLAG | NOT_NULL_FLAG; lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX; } #line 24725 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 710: #line 6466 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->gcol_info->set_field_stored(TRUE); } #line 24733 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 711: #line 6473 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* "PARSE_GCOL_EXPR" can only be used by the SQL server when reading a '*.frm' file. Prevent the end user from invoking this command. */ if (!Lex->parse_gcol_expr) { YYTHD->parse_error_at((yylsp[-3]), ER_THD(YYTHD, ER_SYNTAX_ERROR)); MYSQL_YYABORT; } } #line 24750 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 712: #line 6489 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->gcol_info= new Generated_column(); if (!Lex->gcol_info) { mem_alloc_error(sizeof(Generated_column)); MYSQL_YYABORT; } ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); uint expr_len= (uint)(yylsp[0]).cpp.length(); Lex->gcol_info->dup_expr_str(YYTHD->mem_root, (yylsp[0]).cpp.start, expr_len); Lex->gcol_info->expr_item= (yyvsp[0].item); /* @todo: problems: - here we have a call to the constructor of Generated_column, which takes no argument and builds a non-functional object - then we fill it member by member; either by assignment to public members (!) or by call to a public setter. Both these techniques allow changing, at any future point in time, vital properties of the object which should rather be constant. Class should rather have a constructor which takes arguments, sets members, and members should be constant after that. This would also get rid of some setters like set_field_stored(); */ } #line 24780 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 713: #line 6518 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[-1].c_str)); (yyval.num)=(yyvsp[-2].num); } #line 24789 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 714: #line 6523 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=(yyvsp[-2].num); Lex->length= const_cast<char *>((yyvsp[-1].precision).length); Lex->dec= const_cast<char *>((yyvsp[-1].precision).dec); } #line 24799 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 715: #line 6529 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[-1].precision).length); Lex->dec= const_cast<char *>((yyvsp[-1].precision).dec); (yyval.num)=MYSQL_TYPE_FLOAT; } #line 24809 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 716: #line 6535 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= (char*) "1"; (yyval.num)=MYSQL_TYPE_BIT; } #line 24818 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 717: #line 6540 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[0].c_str)); (yyval.num)=MYSQL_TYPE_BIT; } #line 24827 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 718: #line 6545 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= (char*) "1"; (yyval.num)=MYSQL_TYPE_TINY; } #line 24836 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 719: #line 6550 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= (char*) "1"; (yyval.num)=MYSQL_TYPE_TINY; } #line 24845 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 720: #line 6555 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[-1].c_str)); Lex->charset= (yyvsp[0].charset_with_flags).charset; Lex->type|= (yyvsp[0].charset_with_flags).type_flags; (yyval.num)=MYSQL_TYPE_STRING; } #line 24856 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 721: #line 6562 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= (char*) "1"; Lex->charset= (yyvsp[0].charset_with_flags).charset; Lex->type|= (yyvsp[0].charset_with_flags).type_flags; (yyval.num)=MYSQL_TYPE_STRING; } #line 24867 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 722: #line 6569 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[-1].c_str)); Lex->type|= (yyvsp[0].ulong_num); (yyval.num)=MYSQL_TYPE_STRING; Lex->charset=national_charset_info; } #line 24878 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 723: #line 6576 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= (char*) "1"; Lex->type|= (yyvsp[0].ulong_num); (yyval.num)=MYSQL_TYPE_STRING; Lex->charset=national_charset_info; } #line 24889 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 724: #line 6583 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[0].c_str)); Lex->charset=&my_charset_bin; (yyval.num)=MYSQL_TYPE_STRING; } #line 24899 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 725: #line 6589 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= (char*) "1"; Lex->charset=&my_charset_bin; (yyval.num)=MYSQL_TYPE_STRING; } #line 24909 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 726: #line 6595 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[-1].c_str)); Lex->charset= (yyvsp[0].charset_with_flags).charset; Lex->type|= (yyvsp[0].charset_with_flags).type_flags; (yyval.num)= MYSQL_TYPE_VARCHAR; } #line 24920 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 727: #line 6602 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[-1].c_str)); Lex->type|= (yyvsp[0].ulong_num); (yyval.num)= MYSQL_TYPE_VARCHAR; Lex->charset=national_charset_info; } #line 24931 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 728: #line 6609 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[0].c_str)); Lex->charset=&my_charset_bin; (yyval.num)= MYSQL_TYPE_VARCHAR; } #line 24941 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 729: #line 6615 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[-1].c_str)); if (Lex->length) { errno= 0; ulong length= strtoul(Lex->length, NULL, 10); if (errno != 0 || length != 4) { /* Only support length is 4 */ my_error(ER_INVALID_YEAR_COLUMN_LENGTH, MYF(0), "YEAR"); MYSQL_YYABORT; } } (yyval.num)=MYSQL_TYPE_YEAR; } #line 24961 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 730: #line 6631 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=MYSQL_TYPE_DATE; } #line 24967 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 731: #line 6633 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->dec= const_cast<char *>((yyvsp[0].c_str)); (yyval.num)= MYSQL_TYPE_TIME2; } #line 24976 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 732: #line 6638 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->dec= const_cast<char *>((yyvsp[0].c_str)); if (YYTHD->variables.sql_mode & MODE_MAXDB) { push_warning(current_thd, Sql_condition::SL_WARNING, WARN_DEPRECATED_MAXDB_SQL_MODE_FOR_TIMESTAMP, ER_THD(YYTHD, WARN_DEPRECATED_MAXDB_SQL_MODE_FOR_TIMESTAMP)); (yyval.num)=MYSQL_TYPE_DATETIME2; } else { /* Unlike other types TIMESTAMP fields are NOT NULL by default. This behavior is deprecated now. */ if (!YYTHD->variables.explicit_defaults_for_timestamp) Lex->type|= NOT_NULL_FLAG; /* To flag the current statement as dependent for binary logging on the session var. Extra copying to Lex is done in case prepared stmt. */ Lex->binlog_need_explicit_defaults_ts= YYTHD->binlog_need_explicit_defaults_ts= true; (yyval.num)=MYSQL_TYPE_TIMESTAMP2; } } #line 25009 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 733: #line 6667 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->dec= const_cast<char *>((yyvsp[0].c_str)); (yyval.num)= MYSQL_TYPE_DATETIME2; } #line 25018 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 734: #line 6672 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset=&my_charset_bin; (yyval.num)=MYSQL_TYPE_TINY_BLOB; } #line 25027 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 735: #line 6677 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[0].c_str)); Lex->charset=&my_charset_bin; (yyval.num)=MYSQL_TYPE_BLOB; } #line 25037 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 736: #line 6683 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset=&my_charset_bin; Lex->uint_geom_type= (uint)(yyvsp[0].num); (yyval.num)=MYSQL_TYPE_GEOMETRY; } #line 25047 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 737: #line 6689 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset=&my_charset_bin; (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB; } #line 25056 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 738: #line 6694 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset=&my_charset_bin; (yyval.num)=MYSQL_TYPE_LONG_BLOB; } #line 25065 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 739: #line 6699 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset=&my_charset_bin; (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB; } #line 25074 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 740: #line 6704 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset= (yyvsp[0].charset_with_flags).charset; Lex->type|= (yyvsp[0].charset_with_flags).type_flags; (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB; } #line 25084 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 741: #line 6710 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset= (yyvsp[0].charset_with_flags).charset; Lex->type|= (yyvsp[0].charset_with_flags).type_flags; (yyval.num)=MYSQL_TYPE_TINY_BLOB; } #line 25094 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 742: #line 6716 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[-1].c_str)); Lex->charset= (yyvsp[0].charset_with_flags).charset; Lex->type|= (yyvsp[0].charset_with_flags).type_flags; (yyval.num)=MYSQL_TYPE_BLOB; } #line 25105 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 743: #line 6723 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset= (yyvsp[0].charset_with_flags).charset; Lex->type|= (yyvsp[0].charset_with_flags).type_flags; (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB; } #line 25115 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 744: #line 6729 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset= (yyvsp[0].charset_with_flags).charset; Lex->type|= (yyvsp[0].charset_with_flags).type_flags; (yyval.num)=MYSQL_TYPE_LONG_BLOB; } #line 25125 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 745: #line 6735 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[-1].precision).length); Lex->dec= const_cast<char *>((yyvsp[-1].precision).dec); (yyval.num)=MYSQL_TYPE_NEWDECIMAL; } #line 25135 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 746: #line 6741 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[-1].precision).length); Lex->dec= const_cast<char *>((yyvsp[-1].precision).dec); (yyval.num)=MYSQL_TYPE_NEWDECIMAL; } #line 25145 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 747: #line 6747 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char *>((yyvsp[-1].precision).length); Lex->dec= const_cast<char *>((yyvsp[-1].precision).dec); (yyval.num)=MYSQL_TYPE_NEWDECIMAL; } #line 25155 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 748: #line 6753 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {Lex->interval_list.empty();} #line 25161 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 749: #line 6755 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset= (yyvsp[0].charset_with_flags).charset; Lex->type|= (yyvsp[0].charset_with_flags).type_flags; (yyval.num)=MYSQL_TYPE_ENUM; } #line 25171 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 750: #line 6761 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->interval_list.empty();} #line 25177 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 751: #line 6763 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset= (yyvsp[0].charset_with_flags).charset; Lex->type|= (yyvsp[0].charset_with_flags).type_flags; (yyval.num)=MYSQL_TYPE_SET; } #line 25187 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 752: #line 6769 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset= (yyvsp[0].charset_with_flags).charset; Lex->type|= (yyvsp[0].charset_with_flags).type_flags; (yyval.num)=MYSQL_TYPE_MEDIUM_BLOB; } #line 25197 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 753: #line 6775 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=MYSQL_TYPE_LONGLONG; Lex->type|= (AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNSIGNED_FLAG | UNIQUE_FLAG | SERIAL_FLAG); } #line 25207 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 754: #line 6781 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->charset=&my_charset_bin; (yyval.num)=MYSQL_TYPE_JSON; } #line 25216 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 755: #line 6788 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= Field::GEOM_GEOMETRY; } #line 25222 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 756: #line 6789 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= Field::GEOM_GEOMETRYCOLLECTION; } #line 25228 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 757: #line 6791 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->length= const_cast<char*>(STRINGIFY_ARG (MAX_LEN_GEOM_POINT_FIELD)); (yyval.num)= Field::GEOM_POINT; } #line 25238 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 758: #line 6796 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= Field::GEOM_MULTIPOINT; } #line 25244 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 759: #line 6797 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= Field::GEOM_LINESTRING; } #line 25250 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 760: #line 6798 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= Field::GEOM_MULTILINESTRING; } #line 25256 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 761: #line 6799 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= Field::GEOM_POLYGON; } #line 25262 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 762: #line 6800 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= Field::GEOM_MULTIPOLYGON; } #line 25268 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 763: #line 6804 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25274 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 764: #line 6808 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25280 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 765: #line 6809 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25286 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 766: #line 6813 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25292 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 767: #line 6814 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25298 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 768: #line 6818 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25304 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 769: #line 6819 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25310 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 770: #line 6820 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25316 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 771: #line 6821 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25322 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 772: #line 6822 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25328 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 773: #line 6826 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=MYSQL_TYPE_LONG; } #line 25334 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 774: #line 6827 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=MYSQL_TYPE_TINY; } #line 25340 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 775: #line 6828 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=MYSQL_TYPE_SHORT; } #line 25346 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 776: #line 6829 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=MYSQL_TYPE_INT24; } #line 25352 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 777: #line 6830 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=MYSQL_TYPE_LONGLONG; } #line 25358 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 778: #line 6835 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= YYTHD->variables.sql_mode & MODE_REAL_AS_FLOAT ? MYSQL_TYPE_FLOAT : MYSQL_TYPE_DOUBLE; } #line 25367 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 779: #line 6840 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=MYSQL_TYPE_DOUBLE; } #line 25373 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 780: #line 6842 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=MYSQL_TYPE_DOUBLE; } #line 25379 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 781: #line 6847 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.precision).length= NULL; (yyval.precision).dec= NULL; } #line 25388 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 782: #line 6852 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.precision).length= (yyvsp[0].c_str); (yyval.precision).dec= NULL; } #line 25397 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 784: #line 6861 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.precision).length= (yyvsp[-3].lex_str).str; (yyval.precision).dec= (yyvsp[-1].lex_str).str; } #line 25406 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 785: #line 6869 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.c_str)= NULL; } #line 25412 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 786: #line 6870 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.c_str)= (yyvsp[-1].lex_str).str; } #line 25418 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 787: #line 6874 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= 0; } #line 25424 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 788: #line 6875 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= 0; } #line 25430 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 789: #line 6877 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[-1].lex_str).str, NULL, &error); } #line 25439 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 790: #line 6884 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25445 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 791: #line 6885 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25451 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 792: #line 6889 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25457 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 793: #line 6890 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25463 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 794: #line 6894 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25469 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 795: #line 6895 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= UNSIGNED_FLAG;} #line 25475 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 796: #line 6896 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= UNSIGNED_FLAG | ZEROFILL_FLAG; } #line 25481 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 797: #line 6900 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.c_str)= (yyvsp[-1].lex_str).str; } #line 25487 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 798: #line 6901 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.c_str)= (yyvsp[-1].lex_str).str; } #line 25493 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 799: #line 6902 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.c_str)= (yyvsp[-1].lex_str).str; } #line 25499 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 800: #line 6903 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.c_str)= (yyvsp[-1].lex_str).str; } #line 25505 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 801: #line 6906 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.c_str)= NULL; /* use default length */ } #line 25511 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 803: #line 6912 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.precision).length= NULL; (yyval.precision).dec = NULL; } #line 25520 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 805: #line 6920 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25526 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 806: #line 6921 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25532 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 807: #line 6925 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25538 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 809: #line 6931 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type&= ~ NOT_NULL_FLAG; Lex->type|= EXPLICIT_NULL_FLAG; } #line 25547 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 810: #line 6935 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= NOT_NULL_FLAG; } #line 25553 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 811: #line 6936 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->default_value=(yyvsp[0].item); } #line 25559 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 812: #line 6938 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Item *item= new (YYTHD->mem_root) Item_func_now_local(static_cast<uint8>((yyvsp[0].ulong_num))); if (item == NULL) MYSQL_YYABORT; Lex->on_update_value= item; } #line 25571 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 813: #line 6945 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG; } #line 25577 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 814: #line 6947 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->type|= AUTO_INCREMENT_FLAG | NOT_NULL_FLAG | UNIQUE_FLAG; lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX; } #line 25587 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 815: #line 6953 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->type|= PRI_KEY_FLAG | NOT_NULL_FLAG; lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX; } #line 25597 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 816: #line 6959 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->type|= UNIQUE_FLAG; lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX; } #line 25607 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 817: #line 6965 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->type|= UNIQUE_KEY_FLAG; lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX; } #line 25617 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 818: #line 6970 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->comment= (yyvsp[0].lex_str); } #line 25623 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 819: #line 6972 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->charset && !my_charset_same(Lex->charset,(yyvsp[0].charset))) { my_error(ER_COLLATION_CHARSET_MISMATCH, MYF(0), (yyvsp[0].charset)->name,Lex->charset->csname); MYSQL_YYABORT; } else { Lex->charset=(yyvsp[0].charset); } } #line 25640 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 820: #line 6985 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type&= ~(FIELD_FLAGS_COLUMN_FORMAT_MASK); Lex->type|= (COLUMN_FORMAT_TYPE_DEFAULT << FIELD_FLAGS_COLUMN_FORMAT); } #line 25650 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 821: #line 6991 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type&= ~(FIELD_FLAGS_COLUMN_FORMAT_MASK); Lex->type|= (COLUMN_FORMAT_TYPE_FIXED << FIELD_FLAGS_COLUMN_FORMAT); } #line 25660 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 822: #line 6997 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type&= ~(FIELD_FLAGS_COLUMN_FORMAT_MASK); Lex->type|= (COLUMN_FORMAT_TYPE_DYNAMIC << FIELD_FLAGS_COLUMN_FORMAT); } #line 25670 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 823: #line 7003 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type&= ~(FIELD_FLAGS_STORAGE_MEDIA_MASK); Lex->type|= (HA_SM_DEFAULT << FIELD_FLAGS_STORAGE_MEDIA); } #line 25679 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 824: #line 7008 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type&= ~(FIELD_FLAGS_STORAGE_MEDIA_MASK); Lex->type|= (HA_SM_DISK << FIELD_FLAGS_STORAGE_MEDIA); } #line 25688 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 825: #line 7013 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type&= ~(FIELD_FLAGS_STORAGE_MEDIA_MASK); Lex->type|= (HA_SM_MEMORY << FIELD_FLAGS_STORAGE_MEDIA); } #line 25697 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 826: #line 7022 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[-1].num); if (Lex->charset) /* Lex->charset is scanned in "type" */ { if (!(Lex->charset= merge_charset_and_collation(Lex->charset, (yyvsp[0].charset)))) MYSQL_YYABORT; } else if ((yyvsp[0].charset)) { my_error(ER_NOT_SUPPORTED_YET, MYF(0), "COLLATE with no CHARACTER SET " "in SP parameters, RETURNS, DECLARE"); MYSQL_YYABORT; } } #line 25718 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 827: #line 7043 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (yyvsp[0].ulong_num); } #line 25726 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 828: #line 7049 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= new (YYTHD->mem_root) Item_func_now_local(static_cast<uint8>((yyvsp[0].ulong_num))); if ((yyval.item) == NULL) MYSQL_YYABORT; } #line 25737 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 829: #line 7056 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)=(yyvsp[0].item); } #line 25743 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 830: #line 7060 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25749 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 831: #line 7061 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25755 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 832: #line 7066 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!((yyval.charset)=get_charset_by_csname((yyvsp[0].lex_str).str,MY_CS_PRIMARY,MYF(0)))) { my_error(ER_UNKNOWN_CHARACTER_SET, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } } #line 25767 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 833: #line 7073 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)= &my_charset_bin; } #line 25773 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 834: #line 7077 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)=(yyvsp[0].charset); } #line 25779 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 835: #line 7078 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)=NULL; } #line 25785 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 836: #line 7082 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)= NULL; } #line 25791 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 837: #line 7083 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)= (yyvsp[0].charset); } #line 25797 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 838: #line 7088 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!((yyval.charset)=get_charset_by_csname((yyvsp[0].lex_str).str,MY_CS_PRIMARY,MYF(0))) && !((yyval.charset)=get_old_charset_by_name((yyvsp[0].lex_str).str))) { my_error(ER_UNKNOWN_CHARACTER_SET, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } } #line 25810 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 839: #line 7096 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)= &my_charset_bin; } #line 25816 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 840: #line 7100 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)=(yyvsp[0].charset); } #line 25822 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 841: #line 7101 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)=NULL; } #line 25828 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 842: #line 7106 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!((yyval.charset)= mysqld_collation_get_by_name((yyvsp[0].lex_str).str))) MYSQL_YYABORT; } #line 25837 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 843: #line 7113 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)=NULL; } #line 25843 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 844: #line 7114 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)=(yyvsp[0].charset); } #line 25849 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 845: #line 7118 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)= NULL; } #line 25855 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 846: #line 7119 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)= (yyvsp[0].charset); } #line 25861 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 847: #line 7123 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)=(yyvsp[0].charset); } #line 25867 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 848: #line 7124 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)=NULL; } #line 25873 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 849: #line 7128 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25879 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 850: #line 7129 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 25885 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 851: #line 7134 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)= &my_charset_latin1; } #line 25891 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 852: #line 7135 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)= &my_charset_latin1_bin; } #line 25897 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 853: #line 7136 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset)= &my_charset_latin1_bin; } #line 25903 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 854: #line 7141 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!((yyval.charset)= get_charset_by_csname("ucs2", MY_CS_PRIMARY,MYF(0)))) { my_error(ER_UNKNOWN_CHARACTER_SET, MYF(0), "ucs2"); MYSQL_YYABORT; } } #line 25915 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 855: #line 7149 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!((yyval.charset)= mysqld_collation_get_by_name("ucs2_bin"))) MYSQL_YYABORT; } #line 25924 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 856: #line 7154 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!((yyval.charset)= mysqld_collation_get_by_name("ucs2_bin"))) my_error(ER_UNKNOWN_COLLATION, MYF(0), "ucs2_bin"); } #line 25933 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 857: #line 7162 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset_with_flags).charset= NULL; (yyval.charset_with_flags).type_flags= 0; } #line 25942 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 858: #line 7167 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset_with_flags).charset= (yyvsp[0].charset); (yyval.charset_with_flags).type_flags= 0; } #line 25951 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 859: #line 7172 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset_with_flags).charset= (yyvsp[0].charset); (yyval.charset_with_flags).type_flags= 0; } #line 25960 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 860: #line 7177 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset_with_flags).charset= &my_charset_bin; (yyval.charset_with_flags).type_flags= 0; } #line 25969 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 861: #line 7182 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset_with_flags).charset= (yyvsp[-1].charset); (yyval.charset_with_flags).type_flags= (yyvsp[0].ulong_num); } #line 25978 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 862: #line 7187 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset_with_flags).charset= NULL; (yyval.charset_with_flags).type_flags= BINCMP_FLAG; } #line 25987 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 863: #line 7192 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.charset_with_flags).charset= (yyvsp[0].charset); (yyval.charset_with_flags).type_flags= BINCMP_FLAG; } #line 25996 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 864: #line 7199 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= 0; } #line 26002 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 865: #line 7200 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= BINCMP_FLAG; } #line 26008 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 866: #line 7205 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].ulong_num) == 0) { my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } } #line 26020 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 867: #line 7213 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (yyvsp[-2].ulong_num); } #line 26026 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 868: #line 7217 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= 0; } #line 26032 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 869: #line 7218 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= 1 << MY_STRXFRM_DESC_SHIFT; } #line 26038 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 870: #line 7222 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= 1 << MY_STRXFRM_REVERSE_SHIFT; } #line 26044 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 871: #line 7225 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= 0; } #line 26050 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 872: #line 7226 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (yyvsp[0].ulong_num); } #line 26056 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 873: #line 7227 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (yyvsp[-1].ulong_num) | (yyvsp[0].ulong_num); } #line 26062 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 874: #line 7228 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (yyvsp[0].ulong_num) ; } #line 26068 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 875: #line 7233 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (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 26077 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 876: #line 7241 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (1 | (yyvsp[0].ulong_num)) << (yyvsp[-1].ulong_num); } #line 26085 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 877: #line 7247 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (yyvsp[0].ulong_num); } #line 26091 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 878: #line 7248 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)|= (yyvsp[0].ulong_num); } #line 26097 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 879: #line 7253 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 26108 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 880: #line 7262 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (yyvsp[0].ulong_num); } #line 26114 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 881: #line 7263 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (yyvsp[0].ulong_num); } #line 26120 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 882: #line 7267 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= 0; } #line 26126 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 883: #line 7268 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (yyvsp[0].ulong_num); } #line 26132 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 886: #line 7282 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table)=(yyvsp[-3].table); } #line 26140 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 887: #line 7289 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->ref_list.empty(); } #line 26146 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 889: #line 7295 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Key_part_spec *key= new Key_part_spec((yyvsp[0].lex_str), 0); if (key == NULL) MYSQL_YYABORT; Lex->ref_list.push_back(key); } #line 26157 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 890: #line 7302 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Key_part_spec *key= new Key_part_spec((yyvsp[0].lex_str), 0); if (key == NULL) MYSQL_YYABORT; LEX *lex= Lex; lex->ref_list.empty(); lex->ref_list.push_back(key); } #line 26170 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 891: #line 7314 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->fk_match_option= FK_MATCH_UNDEF; } #line 26176 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 892: #line 7316 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->fk_match_option= FK_MATCH_FULL; } #line 26182 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 893: #line 7318 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->fk_match_option= FK_MATCH_PARTIAL; } #line 26188 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 894: #line 7320 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->fk_match_option= FK_MATCH_SIMPLE; } #line 26194 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 895: #line 7325 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->fk_update_opt= FK_OPTION_UNDEF; lex->fk_delete_opt= FK_OPTION_UNDEF; } #line 26204 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 896: #line 7331 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->fk_update_opt= (yyvsp[0].m_fk_option); lex->fk_delete_opt= FK_OPTION_UNDEF; } #line 26214 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 897: #line 7337 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->fk_update_opt= FK_OPTION_UNDEF; lex->fk_delete_opt= (yyvsp[0].m_fk_option); } #line 26224 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 898: #line 7344 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->fk_update_opt= (yyvsp[-3].m_fk_option); lex->fk_delete_opt= (yyvsp[0].m_fk_option); } #line 26234 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 899: #line 7351 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->fk_update_opt= (yyvsp[0].m_fk_option); lex->fk_delete_opt= (yyvsp[-3].m_fk_option); } #line 26244 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 900: #line 7359 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.m_fk_option)= FK_OPTION_RESTRICT; } #line 26250 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 901: #line 7360 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.m_fk_option)= FK_OPTION_CASCADE; } #line 26256 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 902: #line 7361 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.m_fk_option)= FK_OPTION_SET_NULL; } #line 26262 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 903: #line 7362 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.m_fk_option)= FK_OPTION_NO_ACTION; } #line 26268 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 904: #line 7363 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.m_fk_option)= FK_OPTION_DEFAULT; } #line 26274 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 905: #line 7367 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_type)= KEYTYPE_MULTIPLE; } #line 26280 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 906: #line 7371 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_type)= KEYTYPE_PRIMARY; } #line 26286 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 907: #line 7372 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_type)= KEYTYPE_UNIQUE; } #line 26292 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 908: #line 7376 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26298 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 909: #line 7377 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26304 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 910: #line 7381 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26310 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 912: #line 7386 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26316 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 913: #line 7387 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26322 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 914: #line 7388 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26328 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 915: #line 7392 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_type)= KEYTYPE_MULTIPLE; } #line 26334 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 916: #line 7393 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_type)= KEYTYPE_UNIQUE; } #line 26340 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 917: #line 7397 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_type)= KEYTYPE_FULLTEXT;} #line 26346 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 918: #line 7402 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_type)= KEYTYPE_SPATIAL; } #line 26354 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 919: #line 7408 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->key_create_info= default_key_create_info; } #line 26362 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 922: #line 7425 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26368 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 924: #line 7430 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26374 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 926: #line 7435 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26380 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 934: #line 7455 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->key_create_info.algorithm= (yyvsp[0].key_alg); } #line 26386 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 935: #line 7456 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->key_create_info.algorithm= (yyvsp[0].key_alg); } #line 26392 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 936: #line 7461 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->key_create_info.block_size= (yyvsp[0].ulong_num); } #line 26398 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 937: #line 7462 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->key_create_info.comment= (yyvsp[0].lex_str); } #line 26404 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 942: #line 7477 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX_CSTRING plugin_name= {(yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length}; if (plugin_is_ready(plugin_name, MYSQL_FTPARSER_PLUGIN)) Lex->key_create_info.parser_name= (yyvsp[0].lex_str); else { my_error(ER_FUNCTION_NOT_DEFINED, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } } #line 26419 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 943: #line 7490 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_alg)= HA_KEY_ALG_BTREE; } #line 26425 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 944: #line 7491 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_alg)= HA_KEY_ALG_RTREE; } #line 26431 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 945: #line 7492 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_alg)= HA_KEY_ALG_HASH; } #line 26437 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 946: #line 7497 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->col_list.push_back((yyvsp[-1].key_part)); } #line 26445 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 947: #line 7501 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->col_list.push_back((yyvsp[-1].key_part)); } #line 26453 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 948: #line 7508 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_part)= new Key_part_spec((yyvsp[0].lex_str), 0); if ((yyval.key_part) == NULL) MYSQL_YYABORT; } #line 26463 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 949: #line 7514 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int key_part_len= atoi((yyvsp[-1].lex_str).str); if (!key_part_len) { my_error(ER_KEY_PART_0, MYF(0), (yyvsp[-3].lex_str).str); } (yyval.key_part)= new Key_part_spec((yyvsp[-3].lex_str), (uint) key_part_len); if ((yyval.key_part) == NULL) MYSQL_YYABORT; } #line 26478 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 950: #line 7527 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)= null_lex_str; } #line 26484 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 951: #line 7528 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)= (yyvsp[0].lex_str); } #line 26490 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 952: #line 7532 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)= null_lex_str; } #line 26496 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 953: #line 7533 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)= (yyvsp[0].lex_str); } #line 26502 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 954: #line 7537 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->interval_list.push_back((yyvsp[0].string)); } #line 26508 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 955: #line 7538 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->interval_list.push_back((yyvsp[0].string)); } #line 26514 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 956: #line 7546 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->name.str= 0; lex->name.length= 0; lex->sql_command= SQLCOM_ALTER_TABLE; lex->duplicates= DUP_ERROR; if (!lex->select_lex->add_table_to_list(thd, (yyvsp[0].table), NULL, TL_OPTION_UPDATING, TL_READ_NO_INSERT, MDL_SHARED_UPGRADABLE)) MYSQL_YYABORT; lex->col_list.empty(); lex->select_lex->init_order(); lex->select_lex->db= const_cast<char*>((lex->select_lex->table_list.first)->db); new (&lex->create_info) HA_CREATE_INFO; lex->create_info.db_type= 0; lex->create_info.default_table_charset= NULL; 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; lex->create_last_non_select_table= lex->last_table(); assert(!lex->m_sql_cmd); } #line 26545 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 957: #line 7573 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; if (!lex->m_sql_cmd) { /* Create a generic ALTER TABLE statment. */ lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } } #line 26561 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 958: #line 7585 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.default_table_charset= NULL; Lex->create_info.used_fields= 0; } #line 26570 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 959: #line 7590 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command=SQLCOM_ALTER_DB; lex->name= (yyvsp[-2].lex_str); if (lex->name.str == NULL && lex->copy_db_to(&lex->name.str, &lex->name.length)) MYSQL_YYABORT; } #line 26583 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 960: #line 7599 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; push_deprecated_warn_no_replacement(YYTHD, "UPGRADE DATA DIRECTORY NAME"); if (lex->sphead) { my_error(ER_SP_NO_DROP_SP, MYF(0), "DATABASE"); MYSQL_YYABORT; } lex->sql_command= SQLCOM_ALTER_DB_UPGRADE; lex->name= (yyvsp[-4].lex_str); } #line 26600 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 961: #line 7612 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->sphead) { my_error(ER_SP_NO_DROP_SP, MYF(0), "PROCEDURE"); MYSQL_YYABORT; } memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics)); } #line 26615 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 962: #line 7623 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_ALTER_PROCEDURE; lex->spname= (yyvsp[-2].spname); } #line 26626 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 963: #line 7630 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->sphead) { my_error(ER_SP_NO_DROP_SP, MYF(0), "FUNCTION"); MYSQL_YYABORT; } memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics)); } #line 26641 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 964: #line 7641 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_ALTER_FUNCTION; lex->spname= (yyvsp[-2].spname); } #line 26652 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 965: #line 7648 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->sphead) { my_error(ER_SP_BADSTATEMENT, MYF(0), "ALTER VIEW"); MYSQL_YYABORT; } lex->create_view_mode= VIEW_ALTER; } #line 26667 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 966: #line 7659 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26673 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 967: #line 7666 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->sphead) { my_error(ER_SP_BADSTATEMENT, MYF(0), "ALTER VIEW"); MYSQL_YYABORT; } lex->create_view_algorithm= VIEW_ALGORITHM_UNDEFINED; lex->create_view_mode= VIEW_ALTER; } #line 26689 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 968: #line 7678 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26695 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 969: #line 7680 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* 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 (!(Lex->event_parse_data= Event_parse_data::new_instance(YYTHD))) MYSQL_YYABORT; Lex->event_parse_data->identifier= (yyvsp[0].spname); Lex->sql_command= SQLCOM_ALTER_EVENT; } #line 26715 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 970: #line 7700 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!((yyvsp[-4].num) || (yyvsp[-3].num) || (yyvsp[-2].num) || (yyvsp[-1].num) || (yyvsp[0].num))) { my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } /* sql_command is set here because some rules in ev_sql_stmt can overwrite it */ Lex->sql_command= SQLCOM_ALTER_EVENT; } #line 26732 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 971: #line 7713 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->ts_cmd_type= ALTER_TABLESPACE; } #line 26741 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 972: #line 7718 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->ts_cmd_type= ALTER_LOGFILE_GROUP; } #line 26750 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 973: #line 7723 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->ts_cmd_type= CHANGE_FILE_TABLESPACE; } #line 26759 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 974: #line 7728 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->ts_cmd_type= ALTER_ACCESS_MODE_TABLESPACE; } #line 26768 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 975: #line 7733 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_ALTER_SERVER; lex->server_options.m_server_name= (yyvsp[-4].lex_str); lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_alter_server(&Lex->server_options); } #line 26780 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 977: #line 7743 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyvsp[-3].lex_user)->auth.str= (yyvsp[0].lex_str).str; (yyvsp[-3].lex_user)->auth.length= (yyvsp[0].lex_str).length; (yyvsp[-3].lex_user)->uses_identified_by_clause= true; Lex->contains_plaintext_password= true; } #line 26791 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 978: #line 7749 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MAKE_CMD((yyvsp[0].statement)); } #line 26797 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 979: #line 7754 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_ALTER_USER; lex->drop_if_exists= (yyvsp[-1].num); } #line 26807 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 980: #line 7762 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26813 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 984: #line 7773 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->alter_password.update_account_locked_column= true; lex->alter_password.account_locked= false; } #line 26823 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 985: #line 7779 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->alter_password.update_account_locked_column= true; lex->alter_password.account_locked= true; } #line 26833 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 986: #line 7785 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->alter_password.update_password_expired_fields= true; lex->alter_password.update_password_expired_column= true; } #line 26843 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 987: #line 7791 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; if ((yyvsp[-1].ulong_num) == 0 || (yyvsp[-1].ulong_num) > UINT_MAX16) { char buf[MAX_BIGINT_WIDTH + 1]; my_snprintf(buf, sizeof(buf), "%lu", (yyvsp[-1].ulong_num)); my_error(ER_WRONG_VALUE, MYF(0), "DAY", buf); MYSQL_YYABORT; } lex->alter_password.update_password_expired_fields= true; lex->alter_password.expire_after_days= (yyvsp[-1].ulong_num); lex->alter_password.use_default_password_lifetime= false; } #line 26861 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 988: #line 7805 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->alter_password.update_password_expired_fields= true; lex->alter_password.use_default_password_lifetime= false; } #line 26871 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 989: #line 7811 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_password.update_password_expired_fields= true; } #line 26879 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 990: #line 7817 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26885 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 991: #line 7821 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26891 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 993: #line 7826 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26897 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 994: #line 7827 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 26903 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 995: #line 7832 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->mqh.questions=(yyvsp[0].ulong_num); lex->mqh.specified_limits|= USER_RESOURCES::QUERIES_PER_HOUR; } #line 26913 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 996: #line 7838 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->mqh.updates=(yyvsp[0].ulong_num); lex->mqh.specified_limits|= USER_RESOURCES::UPDATES_PER_HOUR; } #line 26923 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 997: #line 7844 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->mqh.conn_per_hour= (yyvsp[0].ulong_num); lex->mqh.specified_limits|= USER_RESOURCES::CONNECTIONS_PER_HOUR; } #line 26933 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 998: #line 7850 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->mqh.user_conn= (yyvsp[0].ulong_num); lex->mqh.specified_limits|= USER_RESOURCES::USER_CONNECTIONS; } #line 26943 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 999: #line 7859 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* empty LEX_USER means current_user */ LEX_USER *curr_user; if (!(curr_user= (LEX_USER*) Lex->thd->alloc(sizeof(st_lex_user)))) MYSQL_YYABORT; memset(curr_user, 0, sizeof(st_lex_user)); Lex->users_list.push_back(curr_user); (yyval.lex_user)= curr_user; } #line 26958 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1000: #line 7872 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0;} #line 26964 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1001: #line 7873 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 1; } #line 26970 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1002: #line 7874 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 1; } #line 26976 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1003: #line 7875 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 1; } #line 26982 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1004: #line 7879 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0;} #line 26988 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1005: #line 7881 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* 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 27001 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1006: #line 7892 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0;} #line 27007 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1007: #line 7893 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 1; } #line 27013 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1008: #line 7897 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str).str= 0; (yyval.lex_str).length= 0; } #line 27019 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1009: #line 7898 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)= (yyvsp[0].lex_str); } #line 27025 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1019: #line 7918 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_discard_import_tablespace( Sql_cmd_discard_import_tablespace::DISCARD_TABLESPACE); if (Lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 27037 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1020: #line 7926 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_discard_import_tablespace( Sql_cmd_discard_import_tablespace::IMPORT_TABLESPACE); if (Lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 27049 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1022: #line 7942 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.flags|= Alter_info::ALTER_DROP_PARTITION; } #line 27057 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1023: #line 7947 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_info.flags|= Alter_info::ALTER_REBUILD_PARTITION; lex->no_write_to_binlog= (yyvsp[-1].num); } #line 27067 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1024: #line 7954 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->no_write_to_binlog= (yyvsp[-1].num); lex->check_opt.init(); assert(!lex->m_sql_cmd); lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table_optimize_partition(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 27083 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1026: #line 7968 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->no_write_to_binlog= (yyvsp[-1].num); lex->check_opt.init(); assert(!lex->m_sql_cmd); lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table_analyze_partition(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 27099 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1027: #line 7980 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->check_opt.init(); assert(!lex->m_sql_cmd); lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table_check_partition(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 27114 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1029: #line 7993 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->no_write_to_binlog= (yyvsp[-1].num); lex->check_opt.init(); assert(!lex->m_sql_cmd); lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table_repair_partition(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 27130 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1031: #line 8006 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_info.flags|= Alter_info::ALTER_COALESCE_PARTITION; lex->no_write_to_binlog= (yyvsp[-1].num); lex->alter_info.num_parts= (yyvsp[0].ulong_num); } #line 27141 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1032: #line 8013 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->check_opt.init(); assert(!lex->m_sql_cmd); lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table_truncate_partition(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 27156 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1034: #line 8026 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; size_t dummy; lex->select_lex->db= const_cast<char*>((yyvsp[-1].table)->db.str); if (lex->select_lex->db == NULL && lex->copy_db_to(&lex->select_lex->db, &dummy)) { MYSQL_YYABORT; } lex->name.str= const_cast<char*>((yyvsp[-1].table)->table.str); lex->name.length= (yyvsp[-1].table)->table.length; lex->alter_info.flags|= Alter_info::ALTER_EXCHANGE_PARTITION; if (!lex->select_lex->add_table_to_list(thd, (yyvsp[-1].table), NULL, TL_OPTION_UPDATING, TL_READ_NO_INSERT, MDL_SHARED_NO_WRITE)) MYSQL_YYABORT; assert(!lex->m_sql_cmd); lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_alter_table_exchange_partition(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 27185 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1035: #line 8052 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_discard_import_tablespace( Sql_cmd_discard_import_tablespace::DISCARD_TABLESPACE); if (Lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 27197 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1036: #line 8061 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_discard_import_tablespace( Sql_cmd_discard_import_tablespace::IMPORT_TABLESPACE); if (Lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 27209 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1039: #line 8077 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.with_validation= Alter_info::ALTER_WITH_VALIDATION; } #line 27217 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1040: #line 8081 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.with_validation= Alter_info::ALTER_WITHOUT_VALIDATION; } #line 27226 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1041: #line 8089 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.flags|= Alter_info::ALTER_REMOVE_PARTITIONING; } #line 27234 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1042: #line 8096 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.flags|= Alter_info::ALTER_ALL_PARTITION; } #line 27242 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1044: #line 8104 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->part_info= new partition_info(); if (!lex->part_info) { mem_alloc_error(sizeof(partition_info)); MYSQL_YYABORT; } lex->alter_info.flags|= Alter_info::ALTER_ADD_PARTITION; lex->no_write_to_binlog= (yyvsp[0].num); } #line 27258 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1045: #line 8116 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 27264 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1047: #line 8122 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->part_info->num_parts= lex->part_info->partitions.elements; } #line 27273 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1048: #line 8127 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->part_info->num_parts= (yyvsp[0].ulong_num); } #line 27281 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1049: #line 8134 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->part_info= new partition_info(); if (!lex->part_info) { mem_alloc_error(sizeof(partition_info)); MYSQL_YYABORT; } lex->no_write_to_binlog= (yyvsp[0].num); } #line 27296 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1051: #line 8149 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.flags|= Alter_info::ALTER_TABLE_REORG; } #line 27304 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1052: #line 8153 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.flags|= Alter_info::ALTER_REORGANIZE_PARTITION; } #line 27312 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1053: #line 8157 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { partition_info *part_info= Lex->part_info; part_info->num_parts= part_info->partitions.elements; } #line 27321 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1054: #line 8164 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 27327 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1055: #line 8165 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 27333 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1056: #line 8170 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { String *s= new (YYTHD->mem_root) String((const char *) (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, system_charset_info); if (s == NULL) MYSQL_YYABORT; if (Lex->alter_info.partition_names.push_back(s)) { mem_alloc_error(1); MYSQL_YYABORT; } } #line 27350 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1062: #line 8201 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->change=0; lex->alter_info.flags|= Alter_info::ALTER_ADD_COLUMN; } #line 27360 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1063: #line 8210 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_last_non_select_table= Lex->last_table(); } #line 27368 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1064: #line 8214 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_last_non_select_table= Lex->last_table(); Lex->alter_info.flags|= Alter_info::ALTER_ADD_INDEX; } #line 27377 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1066: #line 8220 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->change= (yyvsp[0].lex_str).str; lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN; } #line 27387 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1067: #line 8226 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_last_non_select_table= Lex->last_table(); } #line 27395 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1068: #line 8230 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->length=lex->dec=0; lex->type=0; lex->default_value= lex->on_update_value= 0; lex->comment=null_lex_str; lex->charset= NULL; lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN; lex->gcol_info= 0; } #line 27409 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1069: #line 8240 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; if (add_field_to_list(lex->thd,&(yyvsp[-2].lex_str), (enum enum_field_types) (yyvsp[0].num), lex->length,lex->dec,lex->type, lex->default_value, lex->on_update_value, &lex->comment, (yyvsp[-2].lex_str).str, &lex->interval_list, lex->charset, lex->uint_geom_type, lex->gcol_info)) MYSQL_YYABORT; } #line 27426 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1070: #line 8253 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_last_non_select_table= Lex->last_table(); } #line 27434 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1071: #line 8257 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; Alter_drop *ad= new Alter_drop(Alter_drop::COLUMN, (yyvsp[-1].lex_str).str); if (ad == NULL) MYSQL_YYABORT; lex->alter_info.drop_list.push_back(ad); lex->alter_info.flags|= Alter_info::ALTER_DROP_COLUMN; } #line 27447 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1072: #line 8266 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; Alter_drop *ad= new Alter_drop(Alter_drop::FOREIGN_KEY, (yyvsp[0].lex_str).str); if (ad == NULL) MYSQL_YYABORT; lex->alter_info.drop_list.push_back(ad); lex->alter_info.flags|= Alter_info::DROP_FOREIGN_KEY; } #line 27460 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1073: #line 8275 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; Alter_drop *ad= new Alter_drop(Alter_drop::KEY, primary_key_name); if (ad == NULL) MYSQL_YYABORT; lex->alter_info.drop_list.push_back(ad); lex->alter_info.flags|= Alter_info::ALTER_DROP_INDEX; } #line 27473 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1074: #line 8284 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; Alter_drop *ad= new Alter_drop(Alter_drop::KEY, (yyvsp[0].lex_str).str); if (ad == NULL) MYSQL_YYABORT; lex->alter_info.drop_list.push_back(ad); lex->alter_info.flags|= Alter_info::ALTER_DROP_INDEX; } #line 27486 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1075: #line 8293 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->alter_info.keys_onoff= Alter_info::DISABLE; lex->alter_info.flags|= Alter_info::ALTER_KEYS_ONOFF; } #line 27496 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1076: #line 8299 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->alter_info.keys_onoff= Alter_info::ENABLE; lex->alter_info.flags|= Alter_info::ALTER_KEYS_ONOFF; } #line 27506 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1077: #line 8305 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; Alter_column *ac= new Alter_column((yyvsp[-3].lex_str).str,(yyvsp[0].item)); if (ac == NULL) MYSQL_YYABORT; lex->alter_info.alter_list.push_back(ac); lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN_DEFAULT; } #line 27519 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1078: #line 8314 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; Alter_column *ac= new Alter_column((yyvsp[-2].lex_str).str, (Item*) 0); if (ac == NULL) MYSQL_YYABORT; lex->alter_info.alter_list.push_back(ac); lex->alter_info.flags|= Alter_info::ALTER_CHANGE_COLUMN_DEFAULT; } #line 27532 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1079: #line 8323 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; size_t dummy; lex->select_lex->db= const_cast<char*>((yyvsp[0].table)->db.str); if (lex->select_lex->db == NULL && lex->copy_db_to(&lex->select_lex->db, &dummy)) { MYSQL_YYABORT; } enum_ident_name_check ident_check_status= check_table_name((yyvsp[0].table)->table.str,(yyvsp[0].table)->table.length, FALSE); if (ident_check_status == IDENT_NAME_WRONG) { my_error(ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[0].table)->table.str); MYSQL_YYABORT; } else if (ident_check_status == IDENT_NAME_TOO_LONG) { my_error(ER_TOO_LONG_IDENT, MYF(0), (yyvsp[0].table)->table.str); MYSQL_YYABORT; } LEX_STRING db_str= to_lex_string((yyvsp[0].table)->db); if (db_str.str && (check_and_convert_db_name(&db_str, FALSE) != IDENT_NAME_OK)) MYSQL_YYABORT; lex->name.str= const_cast<char*>((yyvsp[0].table)->table.str); lex->name.length= (yyvsp[0].table)->table.length; lex->alter_info.flags|= Alter_info::ALTER_RENAME; } #line 27566 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1080: #line 8353 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; Alter_rename_key *ak= new (YYTHD->mem_root) Alter_rename_key((yyvsp[-2].lex_str).str, (yyvsp[0].lex_str).str); if (ak == NULL) MYSQL_YYABORT; lex->alter_info.alter_rename_key_list.push_back(ak); lex->alter_info.flags|= Alter_info::ALTER_RENAME_INDEX; } #line 27580 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1081: #line 8363 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!(yyvsp[-1].charset)) { THD *thd= YYTHD; (yyvsp[-1].charset)= thd->variables.collation_database; } (yyvsp[0].charset)= (yyvsp[0].charset) ? (yyvsp[0].charset) : (yyvsp[-1].charset); if (!my_charset_same((yyvsp[-1].charset),(yyvsp[0].charset))) { my_error(ER_COLLATION_CHARSET_MISMATCH, MYF(0), (yyvsp[0].charset)->name, (yyvsp[-1].charset)->csname); MYSQL_YYABORT; } LEX *lex= Lex; lex->create_info.table_charset= lex->create_info.default_table_charset= (yyvsp[0].charset); lex->create_info.used_fields|= (HA_CREATE_USED_CHARSET | HA_CREATE_USED_DEFAULT_CHARSET); lex->alter_info.flags|= Alter_info::ALTER_OPTIONS; } #line 27605 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1082: #line 8384 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->alter_info.flags|= Alter_info::ALTER_OPTIONS; if ((lex->create_info.used_fields & HA_CREATE_USED_ENGINE) && !lex->create_info.db_type) { lex->create_info.used_fields&= ~HA_CREATE_USED_ENGINE; } } #line 27619 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1083: #line 8394 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.flags|= Alter_info::ALTER_RECREATE; } #line 27627 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1084: #line 8398 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->alter_info.flags|= Alter_info::ALTER_ORDER; } #line 27636 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1085: #line 8403 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.flags|= Alter_info::ALTER_UPGRADE_PARTITIONING; } #line 27644 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1094: #line 8423 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.requested_algorithm= Alter_info::ALTER_TABLE_ALGORITHM_DEFAULT; } #line 27653 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1095: #line 8428 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->alter_info.set_requested_algorithm(&(yyvsp[0].lex_str))) { my_error(ER_UNKNOWN_ALTER_ALGORITHM, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } } #line 27665 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1096: #line 8439 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.requested_lock= Alter_info::ALTER_TABLE_LOCK_DEFAULT; } #line 27674 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1097: #line 8444 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->alter_info.set_requested_lock(&(yyvsp[0].lex_str))) { my_error(ER_UNKNOWN_ALTER_LOCK, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } } #line 27686 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1098: #line 8454 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 27692 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1099: #line 8455 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 27698 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1100: #line 8459 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.is_not_empty)= false; } #line 27704 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1101: #line 8460 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.is_not_empty)= true; } #line 27710 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1102: #line 8464 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->drop_mode= DROP_DEFAULT; } #line 27716 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1103: #line 8465 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->drop_mode= DROP_RESTRICT; } #line 27722 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1104: #line 8466 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->drop_mode= DROP_CASCADE; } #line 27728 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1105: #line 8470 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 27734 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1106: #line 8472 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { store_position_for_column((yyvsp[0].lex_str).str); Lex->alter_info.flags |= Alter_info::ALTER_COLUMN_ORDER; } #line 27743 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1107: #line 8477 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { store_position_for_column(first_keyword); Lex->alter_info.flags |= Alter_info::ALTER_COLUMN_ORDER; } #line 27752 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1108: #line 8484 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 27758 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1109: #line 8485 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 27764 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1110: #line 8486 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 27770 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1111: #line 8487 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 27776 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1112: #line 8492 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command = SQLCOM_START_GROUP_REPLICATION; } #line 27785 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1113: #line 8497 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command = SQLCOM_STOP_GROUP_REPLICATION; } #line 27794 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1114: #line 8504 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 27800 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1115: #line 8506 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command = SQLCOM_SLAVE_STOP; lex->type = 0; lex->slave_thd_opt= (yyvsp[-1].num); } #line 27811 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1116: #line 8516 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; /* Clean previous slave connection values */ lex->slave_connection.reset(); lex->sql_command = SQLCOM_SLAVE_START; lex->type = 0; /* We'll use mi structure for UNTIL options */ lex->mi.set_unspecified(); lex->slave_thd_opt= (yyvsp[0].num); } #line 27826 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1117: #line 8531 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* It is not possible to set user's information when one is trying to start the SQL Thread. */ if ((Lex->slave_thd_opt & SLAVE_SQL) == SLAVE_SQL && (Lex->slave_thd_opt & SLAVE_IO) != SLAVE_IO && (Lex->slave_connection.user || Lex->slave_connection.password || Lex->slave_connection.plugin_auth || Lex->slave_connection.plugin_dir)) { my_error(ER_SQLTHREAD_WITH_SECURE_SLAVE, MYF(0)); MYSQL_YYABORT; } } #line 27847 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1119: #line 8552 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_BEGIN; /* READ ONLY and READ WRITE are mutually exclusive. */ if (((yyvsp[0].num) & MYSQL_START_TRANS_OPT_READ_WRITE) && ((yyvsp[0].num) & MYSQL_START_TRANS_OPT_READ_ONLY)) { my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } lex->start_transaction_opt= (yyvsp[0].num); } #line 27864 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1120: #line 8568 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 27872 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1121: #line 8572 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[0].num); } #line 27880 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1122: #line 8579 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[0].num); } #line 27888 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1123: #line 8583 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[-2].num) | (yyvsp[0].num); } #line 27896 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1124: #line 8590 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= MYSQL_START_TRANS_OPT_WITH_CONS_SNAPSHOT; } #line 27904 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1125: #line 8594 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= MYSQL_START_TRANS_OPT_READ_ONLY; } #line 27912 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1126: #line 8598 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= MYSQL_START_TRANS_OPT_READ_WRITE; } #line 27920 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1128: #line 8609 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* empty */ } #line 27928 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1129: #line 8613 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->slave_connection.user= (yyvsp[0].lex_str).str; } #line 27936 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1130: #line 8619 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* empty */ } #line 27944 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1131: #line 8623 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->slave_connection.password= (yyvsp[0].lex_str).str; Lex->contains_plaintext_password= true; } #line 27953 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1132: #line 8629 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* empty */ } #line 27961 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1133: #line 8633 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->slave_connection.plugin_auth= (yyvsp[0].lex_str).str; } #line 27969 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1134: #line 8639 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* empty */ } #line 27977 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1135: #line 8643 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->slave_connection.plugin_dir= (yyvsp[0].lex_str).str; } #line 27985 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1136: #line 8650 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 27993 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1137: #line 8654 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[0].num); } #line 28001 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1138: #line 8661 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[0].num); } #line 28009 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1139: #line 8665 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[-2].num) | (yyvsp[0].num); } #line 28017 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1140: #line 8672 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= SLAVE_SQL; } #line 28025 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1141: #line 8676 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= SLAVE_IO; } #line 28033 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1142: #line 8683 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->mi.slave_until= false; } #line 28042 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1143: #line 8688 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; if (((lex->mi.log_file_name || lex->mi.pos) && lex->mi.gtid) || ((lex->mi.relay_log_name || lex->mi.relay_log_pos) && lex->mi.gtid) || !((lex->mi.log_file_name && lex->mi.pos) || (lex->mi.relay_log_name && lex->mi.relay_log_pos) || lex->mi.gtid || lex->mi.until_after_gaps) || /* SQL_AFTER_MTS_GAPS is meaningless in combination */ /* with any other coordinates related options */ ((lex->mi.log_file_name || lex->mi.pos || lex->mi.relay_log_name || lex->mi.relay_log_pos || lex->mi.gtid) && lex->mi.until_after_gaps)) { my_message(ER_BAD_SLAVE_UNTIL_COND, ER(ER_BAD_SLAVE_UNTIL_COND), MYF(0)); MYSQL_YYABORT; } lex->mi.slave_until= true; } #line 28069 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1146: #line 8716 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.gtid= (yyvsp[0].lex_str).str; Lex->mi.gtid_until_condition= LEX_MASTER_INFO::UNTIL_SQL_BEFORE_GTIDS; } #line 28078 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1147: #line 8721 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.gtid= (yyvsp[0].lex_str).str; Lex->mi.gtid_until_condition= LEX_MASTER_INFO::UNTIL_SQL_AFTER_GTIDS; } #line 28087 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1148: #line 8726 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.until_after_gaps= true; } #line 28095 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1149: #line 8733 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command = SQLCOM_CHECKSUM; /* Will be overriden during execution. */ YYPS->m_lock_type= TL_UNLOCK; } #line 28106 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1150: #line 8740 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 28112 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1151: #line 8744 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags= 0; } #line 28118 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1152: #line 8745 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags= T_QUICK; } #line 28124 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1153: #line 8746 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags= T_EXTEND; } #line 28130 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1154: #line 8751 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command = SQLCOM_REPAIR; lex->no_write_to_binlog= (yyvsp[-1].num); lex->check_opt.init(); lex->alter_info.reset(); /* Will be overriden during execution. */ YYPS->m_lock_type= TL_UNLOCK; } #line 28144 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1155: #line 8761 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX* lex= thd->lex; assert(!lex->m_sql_cmd); lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_repair_table(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 28157 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1156: #line 8772 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags = T_MEDIUM; } #line 28163 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1157: #line 8773 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 28169 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1158: #line 8777 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 28175 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1159: #line 8778 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 28181 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1160: #line 8782 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags|= T_QUICK; } #line 28187 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1161: #line 8783 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags|= T_EXTEND; } #line 28193 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1162: #line 8784 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.sql_flags|= TT_USEFRM; } #line 28199 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1163: #line 8789 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 overriden during execution. */ YYPS->m_lock_type= TL_UNLOCK; } #line 28213 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1164: #line 8799 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX* lex= thd->lex; assert(!lex->m_sql_cmd); lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_analyze_table(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 28226 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1165: #line 8811 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_BINLOG_BASE64_EVENT; Lex->comment= (yyvsp[0].lex_str); } #line 28235 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1166: #line 8819 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; if (lex->sphead) { my_error(ER_SP_BADSTATEMENT, MYF(0), "CHECK"); MYSQL_YYABORT; } lex->sql_command = SQLCOM_CHECK; lex->check_opt.init(); lex->alter_info.reset(); /* Will be overriden during execution. */ YYPS->m_lock_type= TL_UNLOCK; } #line 28254 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1167: #line 8834 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX* lex= thd->lex; assert(!lex->m_sql_cmd); lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_check_table(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 28267 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1168: #line 8845 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags = T_MEDIUM; } #line 28273 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1169: #line 8846 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 28279 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1170: #line 8850 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 28285 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1171: #line 8851 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 28291 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1172: #line 8855 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags|= T_QUICK; } #line 28297 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1173: #line 8856 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags|= T_FAST; } #line 28303 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1174: #line 8857 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags|= T_MEDIUM; } #line 28309 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1175: #line 8858 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags|= T_EXTEND; } #line 28315 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1176: #line 8859 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.flags|= T_CHECK_ONLY_CHANGED; } #line 28321 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1177: #line 8860 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->check_opt.sql_flags|= TT_FOR_UPGRADE; } #line 28327 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1178: #line 8865 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 overriden during execution. */ YYPS->m_lock_type= TL_UNLOCK; } #line 28341 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1179: #line 8875 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX* lex= thd->lex; assert(!lex->m_sql_cmd); lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_optimize_table(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 28354 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1180: #line 8886 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 28360 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1181: #line 8887 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 1; } #line 28366 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1182: #line 8888 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 1; } #line 28372 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1183: #line 8893 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_RENAME_TABLE; } #line 28380 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1184: #line 8897 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 28386 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1185: #line 8899 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_RENAME_USER; } #line 28394 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1186: #line 8906 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->users_list.push_back((yyvsp[-2].lex_user)) || Lex->users_list.push_back((yyvsp[0].lex_user))) MYSQL_YYABORT; } #line 28403 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1187: #line 8911 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->users_list.push_back((yyvsp[-2].lex_user)) || Lex->users_list.push_back((yyvsp[0].lex_user))) MYSQL_YYABORT; } #line 28412 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1190: #line 8924 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; SELECT_LEX *sl= Select; if (!sl->add_table_to_list(lex->thd, (yyvsp[-2].table),NULL,TL_OPTION_UPDATING, TL_IGNORE, MDL_EXCLUSIVE) || !sl->add_table_to_list(lex->thd, (yyvsp[0].table),NULL,TL_OPTION_UPDATING, TL_IGNORE, MDL_EXCLUSIVE)) MYSQL_YYABORT; } #line 28426 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1191: #line 8937 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.reset(); } #line 28434 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1192: #line 8941 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_ASSIGN_TO_KEYCACHE; lex->ident= (yyvsp[0].lex_str); } #line 28444 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1197: #line 8960 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!Select->add_table_to_list(YYTHD, (yyvsp[-1].table), NULL, 0, TL_READ, MDL_SHARED_READ, (yyvsp[0].key_usage_list))) MYSQL_YYABORT; } #line 28455 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1198: #line 8970 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!Select->add_table_to_list(YYTHD, (yyvsp[-2].table), NULL, 0, TL_READ, MDL_SHARED_READ, (yyvsp[0].key_usage_list))) MYSQL_YYABORT; } #line 28466 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1199: #line 8979 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)= (yyvsp[0].lex_str); } #line 28472 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1200: #line 8980 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str) = default_key_cache_base; } #line 28478 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1201: #line 8985 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command=SQLCOM_PRELOAD_KEYS; lex->alter_info.reset(); } #line 28488 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1202: #line 8991 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 28494 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1207: #line 9006 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!Select->add_table_to_list(YYTHD, (yyvsp[-2].table), NULL, (yyvsp[0].num), TL_READ, MDL_SHARED_READ, (yyvsp[-1].key_usage_list))) MYSQL_YYABORT; } #line 28505 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1208: #line 9016 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!Select->add_table_to_list(YYTHD, (yyvsp[-3].table), NULL, (yyvsp[0].num), TL_READ, MDL_SHARED_READ, (yyvsp[-1].key_usage_list))) MYSQL_YYABORT; } #line 28516 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1209: #line 9026 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->alter_info.flags|= Alter_info::ALTER_ADMIN_PARTITION; } #line 28524 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1212: #line 9037 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_usage_list)= NULL; } #line 28530 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1213: #line 9039 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { init_index_hints((yyvsp[-1].key_usage_list), INDEX_HINT_USE, old_mode ? INDEX_HINT_MASK_JOIN : INDEX_HINT_MASK_ALL); (yyval.key_usage_list)= (yyvsp[-1].key_usage_list); } #line 28541 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1214: #line 9049 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 28547 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1215: #line 9050 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= TL_OPTION_IGNORE_LEAVES; } #line 28553 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1216: #line 9060 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select)= NEW_PTN PT_select((yyvsp[0].select_init), SQLCOM_SELECT); } #line 28561 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1217: #line 9068 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_init)= NEW_PTN PT_select_init2((yyvsp[-2].optimizer_hints), (yyvsp[-1].select_part2), (yyvsp[0].union_list)); } #line 28569 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1218: #line 9072 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_init)= NEW_PTN PT_select_init_parenthesis((yyvsp[-2].select_paren), (yyvsp[0].node)); } #line 28577 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1219: #line 9079 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_paren)= NEW_PTN PT_select_paren((yyvsp[-1].optimizer_hints), (yyvsp[0].select_part2)); } #line 28585 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1220: #line 9082 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_paren)= (yyvsp[-1].select_paren); } #line 28591 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1221: #line 9088 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_paren_derived)= NEW_PTN PT_select_paren_derived((yyvsp[-2].optimizer_hints), (yyvsp[-1].select_part2_derived), (yyvsp[0].table_expression)); } #line 28599 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1222: #line 9091 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_paren_derived)= (yyvsp[-1].select_paren_derived); } #line 28605 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1223: #line 9104 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_part2)= NEW_PTN PT_select_part2((yyvsp[-3].select_options_and_item_list), NULL, NULL, NULL, NULL, NULL, (yyvsp[-2].order), (yyvsp[-1].limit_clause), NULL, NULL, (yyvsp[0].select_lock_type)); } #line 28614 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1224: #line 9109 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_part2)= NEW_PTN PT_select_part2((yyvsp[-2].select_options_and_item_list), (yyvsp[-1].into_destination), NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, (yyvsp[0].select_lock_type)); } #line 28623 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1225: #line 9124 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-9].into_destination) && (yyvsp[-1].into_destination)) { /* double "INTO" clause */ YYTHD->parse_error_at((yylsp[-1]), ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } if ((yyvsp[-2].procedure_analyse) && ((yyvsp[-9].into_destination) || (yyvsp[-1].into_destination))) { /* "INTO" with "PROCEDURE ANALYSE" */ my_error(ER_WRONG_USAGE, MYF(0), "PROCEDURE", "INTO"); MYSQL_YYABORT; } (yyval.select_part2)= NEW_PTN PT_select_part2((yyvsp[-10].select_options_and_item_list), (yyvsp[-9].into_destination), (yyvsp[-8].table_reference_list), (yyvsp[-7].item), (yyvsp[-6].group), (yyvsp[-5].item), (yyvsp[-4].order), (yyvsp[-3].limit_clause), (yyvsp[-2].procedure_analyse), (yyvsp[-1].into_destination), (yyvsp[0].select_lock_type)); } #line 28644 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1226: #line 9143 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* TODO: remove this semantic action (currently this removal adds shift/reduce conflict) */ } #line 28655 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1227: #line 9150 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_options_and_item_list)= NEW_PTN PT_select_options_and_item_list((yyvsp[-1].select_options), (yyvsp[0].item_list2)); } #line 28663 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1228: #line 9165 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_expression)= NEW_PTN PT_table_expression((yyvsp[-7].table_reference_list), (yyvsp[-6].item), (yyvsp[-5].group), (yyvsp[-4].item), (yyvsp[-3].order), (yyvsp[-2].limit_clause), (yyvsp[-1].procedure_analyse), (yyvsp[0].select_lock_type)); } #line 28671 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1229: #line 9171 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_reference_list)= (yyvsp[0].table_reference_list); } #line 28677 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1230: #line 9175 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_reference_list)= NULL; } #line 28683 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1232: #line 9181 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_reference_list)= NEW_PTN PT_table_reference_list((yyvsp[0].join_table_list)); } #line 28691 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1233: #line 9184 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_reference_list)= NULL; } #line 28697 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1234: #line 9193 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_options).query_spec_options= 0; (yyval.select_options).sql_cache= SELECT_LEX::SQL_CACHE_UNSPECIFIED; } #line 28706 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1236: #line 9202 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyval.select_options).merge((yyvsp[-1].select_options), (yyvsp[0].select_options))) MYSQL_YYABORT; } #line 28715 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1238: #line 9211 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_options).query_spec_options= (yyvsp[0].ulonglong_number); (yyval.select_options).sql_cache= SELECT_LEX::SQL_CACHE_UNSPECIFIED; } #line 28724 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1239: #line 9216 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_deprecated_warn_no_replacement(YYTHD, "SQL_NO_CACHE"); /* Allow this flag only on the first top-level SELECT statement, if SQL_CACHE wasn't specified, and only once per query. */ (yyval.select_options).query_spec_options= 0; (yyval.select_options).sql_cache= SELECT_LEX::SQL_NO_CACHE; } #line 28738 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1240: #line 9226 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_deprecated_warn_no_replacement(YYTHD, "SQL_CACHE"); /* Allow this flag only on the first top-level SELECT statement, if SQL_NO_CACHE wasn't specified, and only once per query. */ (yyval.select_options).query_spec_options= 0; (yyval.select_options).sql_cache= SELECT_LEX::SQL_CACHE; } #line 28752 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1241: #line 9238 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_lock_type).is_set= false; } #line 28758 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1242: #line 9240 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_lock_type).is_set= true; (yyval.select_lock_type).lock_type= TL_WRITE; (yyval.select_lock_type).is_safe_to_cache_query= false; } #line 28768 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1243: #line 9246 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_lock_type).is_set= true; (yyval.select_lock_type).lock_type= TL_READ_WITH_SHARED_LOCKS; (yyval.select_lock_type).is_safe_to_cache_query= false; } #line 28778 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1244: #line 9255 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-2].item_list2) == NULL || (yyvsp[-2].item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; (yyval.item_list2)= (yyvsp[-2].item_list2); } #line 28788 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1245: #line 9261 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= NEW_PTN PT_select_item_list; if ((yyval.item_list2) == NULL || (yyval.item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; } #line 28798 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1246: #line 9267 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Item *item = NEW_PTN Item_asterisk((yyloc), NULL, NULL); (yyval.item_list2)= NEW_PTN PT_select_item_list; if ((yyval.item_list2) == NULL || item == NULL || (yyval.item_list2)->push_back(item)) MYSQL_YYABORT; } #line 28809 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1247: #line 9276 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= (yyvsp[0].item); } #line 28815 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1248: #line 9278 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_expr_with_alias((yyloc), (yyvsp[-1].item), (yylsp[-1]).cpp, (yyvsp[0].lex_str)); } #line 28823 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1249: #line 9285 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=null_lex_str;} #line 28829 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1250: #line 9286 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=(yyvsp[0].lex_str); } #line 28835 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1251: #line 9287 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=(yyvsp[0].lex_str); } #line 28841 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1252: #line 9288 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=(yyvsp[0].lex_str); } #line 28847 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1253: #line 9289 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=(yyvsp[0].lex_str); } #line 28853 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1254: #line 9293 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 28859 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1255: #line 9294 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 28865 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1256: #line 9300 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= flatten_associative_operator<Item_cond_or, Item_func::COND_OR_FUNC>( YYTHD->mem_root, (yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 28875 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1257: #line 9306 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* XOR is a proprietary extension */ (yyval.item) = NEW_PTN Item_func_xor((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 28884 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1258: #line 9311 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= flatten_associative_operator<Item_cond_and, Item_func::COND_AND_FUNC>( YYTHD->mem_root, (yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 28894 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1259: #line 9317 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_negate_expression((yyloc), (yyvsp[0].item)); } #line 28902 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1260: #line 9321 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_istrue((yyloc), (yyvsp[-2].item)); } #line 28910 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1261: #line 9325 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_isnottrue((yyloc), (yyvsp[-3].item)); } #line 28918 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1262: #line 9329 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_isfalse((yyloc), (yyvsp[-2].item)); } #line 28926 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1263: #line 9333 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_isnotfalse((yyloc), (yyvsp[-3].item)); } #line 28934 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1264: #line 9337 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_isnull((yyloc), (yyvsp[-2].item)); } #line 28942 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1265: #line 9341 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_isnotnull((yyloc), (yyvsp[-3].item)); } #line 28950 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1267: #line 9349 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_isnull((yyloc), (yyvsp[-2].item)); } #line 28958 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1268: #line 9353 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_isnotnull((yyloc), (yyvsp[-3].item)); } #line 28966 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1269: #line 9357 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_comp_op((yyloc), (yyvsp[-2].item), (yyvsp[-1].boolfunc2creator), (yyvsp[0].item)); } #line 28974 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1270: #line 9361 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-4].boolfunc2creator) == &comp_equal_creator) /* We throw this manual parse error rather than split the rule comp_op into a null-safe and a non null-safe rule, since doing so would add a shift/reduce conflict. It's actually this rule and the ones referencing it that cause all the conflicts, but we still don't want the count to go up. */ YYTHD->parse_error_at((yylsp[-4]), ER_THD(YYTHD, ER_SYNTAX_ERROR)); (yyval.item)= NEW_PTN PTI_comp_op_all((yyloc), (yyvsp[-5].item), (yyvsp[-4].boolfunc2creator), (yyvsp[-3].num), (yyvsp[-1].subselect)); } #line 28991 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1272: #line 9378 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_in_subselect((yyloc), (yyvsp[-4].item), (yyvsp[-1].subselect)); } #line 28999 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1273: #line 9382 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Item *item= NEW_PTN Item_in_subselect((yyloc), (yyvsp[-5].item), (yyvsp[-1].subselect)); (yyval.item)= NEW_PTN PTI_negate_expression((yyloc), item); } #line 29008 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1274: #line 9387 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_handle_sql2003_note184_exception((yyloc), (yyvsp[-4].item), true, (yyvsp[-1].item)); } #line 29016 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1275: #line 9391 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-1].item_list2) == NULL || (yyvsp[-1].item_list2)->push_front((yyvsp[-3].item)) || (yyvsp[-1].item_list2)->push_front((yyvsp[-6].item))) MYSQL_YYABORT; (yyval.item)= NEW_PTN Item_func_in((yyloc), (yyvsp[-1].item_list2), false); } #line 29027 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1276: #line 9398 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_handle_sql2003_note184_exception((yyloc), (yyvsp[-5].item), false, (yyvsp[-1].item)); } #line 29035 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1277: #line 9402 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-1].item_list2) == NULL || (yyvsp[-1].item_list2)->push_front((yyvsp[-3].item)) || (yyvsp[-1].item_list2)->value.push_front((yyvsp[-7].item))) MYSQL_YYABORT; (yyval.item)= NEW_PTN Item_func_in((yyloc), (yyvsp[-1].item_list2), true); } #line 29046 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1278: #line 9409 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_between((yyloc), (yyvsp[-4].item), (yyvsp[-2].item), (yyvsp[0].item), false); } #line 29054 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1279: #line 9413 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_between((yyloc), (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[0].item), true); } #line 29062 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1280: #line 9417 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Item *item1= NEW_PTN Item_func_soundex((yyloc), (yyvsp[-3].item)); Item *item4= NEW_PTN Item_func_soundex((yyloc), (yyvsp[0].item)); if ((item1 == NULL) || (item4 == NULL)) MYSQL_YYABORT; (yyval.item)= NEW_PTN Item_func_eq((yyloc), item1, item4); } #line 29074 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1281: #line 9425 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_like((yyloc), (yyvsp[-3].item), (yyvsp[-1].item), (yyvsp[0].item)); } #line 29082 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1282: #line 9429 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Item *item= NEW_PTN Item_func_like((yyloc), (yyvsp[-4].item), (yyvsp[-1].item), (yyvsp[0].item)); if (item == NULL) MYSQL_YYABORT; (yyval.item)= NEW_PTN Item_func_not((yyloc), item); } #line 29093 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1283: #line 9436 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_regex((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 29101 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1284: #line 9440 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Item *item= NEW_PTN Item_func_regex((yyloc), (yyvsp[-3].item), (yyvsp[0].item)); (yyval.item)= NEW_PTN PTI_negate_expression((yyloc), item); } #line 29110 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1286: #line 9449 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_bit_or((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 29118 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1287: #line 9453 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_bit_and((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 29126 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1288: #line 9457 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_shift_left((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 29134 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1289: #line 9461 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_shift_right((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 29142 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1290: #line 9465 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_plus((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 29150 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1291: #line 9469 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_minus((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 29158 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1292: #line 9473 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_date_add_interval((yyloc), (yyvsp[-4].item), (yyvsp[-1].item), (yyvsp[0].interval), 0); } #line 29166 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1293: #line 9477 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_date_add_interval((yyloc), (yyvsp[-4].item), (yyvsp[-1].item), (yyvsp[0].interval), 1); } #line 29174 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1294: #line 9481 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_mul((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 29182 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1295: #line 9485 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_div((yyloc), (yyvsp[-2].item),(yyvsp[0].item)); } #line 29190 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1296: #line 9489 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_mod((yyloc), (yyvsp[-2].item),(yyvsp[0].item)); } #line 29198 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1297: #line 9493 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_int_div((yyloc), (yyvsp[-2].item),(yyvsp[0].item)); } #line 29206 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1298: #line 9497 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_mod((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 29214 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1299: #line 9501 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_bit_xor((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 29222 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1309: #line 9528 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.boolfunc2creator) = &comp_eq_creator; } #line 29228 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1310: #line 9529 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.boolfunc2creator) = &comp_equal_creator; } #line 29234 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1311: #line 9530 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.boolfunc2creator) = &comp_ge_creator; } #line 29240 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1312: #line 9531 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.boolfunc2creator) = &comp_gt_creator; } #line 29246 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1313: #line 9532 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.boolfunc2creator) = &comp_le_creator; } #line 29252 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1314: #line 9533 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.boolfunc2creator) = &comp_lt_creator; } #line 29258 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1315: #line 9534 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.boolfunc2creator) = &comp_ne_creator; } #line 29264 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1316: #line 9538 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num) = 1; } #line 29270 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1317: #line 9539 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num) = 0; } #line 29276 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1323: #line 9549 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_set_collation((yyloc), (yyvsp[-2].item), (yyvsp[0].lex_str)); } #line 29284 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1325: #line 9553 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= (yyvsp[0].param_marker); } #line 29290 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1328: #line 9557 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_concat((yyloc), (yyvsp[-2].item), (yyvsp[0].item)); } #line 29298 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1329: #line 9561 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= (yyvsp[0].item); // TODO: do we really want to ignore unary '+' before any kind of literals? } #line 29306 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1330: #line 9565 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_neg((yyloc), (yyvsp[0].item)); } #line 29314 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1331: #line 9569 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_bit_neg((yyloc), (yyvsp[0].item)); } #line 29322 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1332: #line 9573 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_negate_expression((yyloc), (yyvsp[0].item)); } #line 29330 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1333: #line 9577 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_singlerow_subselect((yyloc), (yyvsp[-1].subselect)); } #line 29338 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1334: #line 9581 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= (yyvsp[-1].item); } #line 29344 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1335: #line 9583 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_row((yyloc), (yyvsp[-3].item), (yyvsp[-1].item_list2)->value); } #line 29352 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1336: #line 9587 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_row((yyloc), (yyvsp[-3].item), (yyvsp[-1].item_list2)->value); } #line 29360 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1337: #line 9591 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_exists_subselect((yyloc), (yyvsp[-1].subselect)); } #line 29368 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1338: #line 9595 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_odbc_date((yyloc), (yyvsp[-2].lex_str), (yyvsp[-1].item)); } #line 29376 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1339: #line 9599 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_match((yyloc), (yyvsp[-5].item_list2), (yyvsp[-2].item), (yyvsp[-1].num)); } #line 29384 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1340: #line 9603 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= create_func_cast(YYTHD, (yylsp[0]), (yyvsp[0].item), ITEM_CAST_CHAR, &my_charset_bin); } #line 29392 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1341: #line 9607 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= create_func_cast(YYTHD, (yylsp[-3]), (yyvsp[-3].item), &(yyvsp[-1].cast_type)); } #line 29400 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1342: #line 9611 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_case((yyloc), *(yyvsp[-2].item_list), (yyvsp[-3].item), (yyvsp[-1].item) ); } #line 29408 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1343: #line 9615 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= create_func_cast(YYTHD, (yylsp[-3]), (yyvsp[-3].item), &(yyvsp[-1].cast_type)); } #line 29416 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1344: #line 9619 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_conv_charset((yyloc), (yyvsp[-3].item),(yyvsp[-1].charset)); } #line 29424 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1345: #line 9623 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_default_value((yyloc), (yyvsp[-1].item)); } #line 29432 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1346: #line 9627 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_insert_value((yyloc), (yyvsp[-1].item)); } #line 29440 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1347: #line 9632 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_date_add_interval((yyloc), (yyvsp[0].item), (yyvsp[-3].item), (yyvsp[-2].interval), 0); } #line 29448 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1348: #line 9636 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Item_string *path= NEW_PTN Item_string((yyloc), (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, YYTHD->variables.collation_connection); (yyval.item)= NEW_PTN Item_func_json_extract(YYTHD, (yyloc), (yyvsp[-2].item), path); } #line 29459 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1349: #line 9643 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Item_string *path= NEW_PTN Item_string((yyloc), (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, YYTHD->variables.collation_connection); Item *extr= NEW_PTN Item_func_json_extract(YYTHD, (yyloc), (yyvsp[-2].item), path); (yyval.item)= NEW_PTN Item_func_json_unquote((yyloc), extr); } #line 29471 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1350: #line 9660 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_char((yyloc), (yyvsp[-1].item_list2)); } #line 29479 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1351: #line 9664 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_char((yyloc), (yyvsp[-3].item_list2), (yyvsp[-1].charset)); } #line 29487 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1352: #line 9668 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_current_user((yyloc)); } #line 29495 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1353: #line 9672 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_date_typecast((yyloc), (yyvsp[-1].item)); } #line 29503 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1354: #line 9676 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_dayofmonth((yyloc), (yyvsp[-1].item)); } #line 29511 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1355: #line 9680 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_hour((yyloc), (yyvsp[-1].item)); } #line 29519 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1356: #line 9684 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_insert((yyloc), (yyvsp[-7].item), (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item)); } #line 29527 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1357: #line 9688 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_interval((yyloc), YYTHD->mem_root, (yyvsp[-3].item), (yyvsp[-1].item)); } #line 29535 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1358: #line 9692 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_interval((yyloc), YYTHD->mem_root, (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item_list2)); } #line 29543 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1359: #line 9696 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_left((yyloc), (yyvsp[-3].item), (yyvsp[-1].item)); } #line 29551 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1360: #line 9700 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_minute((yyloc), (yyvsp[-1].item)); } #line 29559 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1361: #line 9704 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_month((yyloc), (yyvsp[-1].item)); } #line 29567 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1362: #line 9708 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_right((yyloc), (yyvsp[-3].item), (yyvsp[-1].item)); } #line 29575 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1363: #line 9712 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_second((yyloc), (yyvsp[-1].item)); } #line 29583 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1364: #line 9716 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_time_typecast((yyloc), (yyvsp[-1].item)); } #line 29591 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1365: #line 9720 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_datetime_typecast((yyloc), (yyvsp[-1].item)); } #line 29599 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1366: #line 9724 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_add_time((yyloc), (yyvsp[-3].item), (yyvsp[-1].item), 1, 0); } #line 29607 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1367: #line 9728 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_trim((yyloc), (yyvsp[-1].item), Item_func_trim::TRIM_BOTH_DEFAULT); } #line 29616 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1368: #line 9733 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_trim((yyloc), (yyvsp[-1].item), (yyvsp[-3].item), Item_func_trim::TRIM_LEADING); } #line 29625 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1369: #line 9738 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_trim((yyloc), (yyvsp[-1].item), (yyvsp[-3].item), Item_func_trim::TRIM_TRAILING); } #line 29634 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1370: #line 9743 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_trim((yyloc), (yyvsp[-1].item), (yyvsp[-3].item), Item_func_trim::TRIM_BOTH); } #line 29642 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1371: #line 9747 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_trim((yyloc), (yyvsp[-1].item), Item_func_trim::TRIM_LEADING); } #line 29650 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1372: #line 9751 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_trim((yyloc), (yyvsp[-1].item), Item_func_trim::TRIM_TRAILING); } #line 29658 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1373: #line 9755 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_trim((yyloc), (yyvsp[-1].item), Item_func_trim::TRIM_BOTH); } #line 29666 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1374: #line 9759 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_trim((yyloc), (yyvsp[-1].item), (yyvsp[-3].item), Item_func_trim::TRIM_BOTH_DEFAULT); } #line 29675 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1375: #line 9764 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_user((yyloc)); } #line 29683 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1376: #line 9768 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_year((yyloc), (yyvsp[-1].item)); } #line 29691 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1377: #line 9787 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_date_add_interval((yyloc), (yyvsp[-3].item), (yyvsp[-1].item), INTERVAL_DAY, 0); } #line 29699 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1378: #line 9791 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_date_add_interval((yyloc), (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 0); } #line 29707 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1379: #line 9795 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_curdate_local((yyloc)); } #line 29715 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1380: #line 9799 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_curtime_local((yyloc), static_cast<uint8>((yyvsp[0].ulong_num))); } #line 29723 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1381: #line 9804 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_date_add_interval((yyloc), (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 0); } #line 29731 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1382: #line 9809 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_date_add_interval((yyloc), (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 1); } #line 29739 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1383: #line 9813 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_extract((yyloc), (yyvsp[-3].interval), (yyvsp[-1].item)); } #line 29747 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1384: #line 9817 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_get_format((yyloc), (yyvsp[-3].date_time_type), (yyvsp[-1].item)); } #line 29755 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1385: #line 9821 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_function_call_nonkeyword_now((yyloc), static_cast<uint8>((yyvsp[0].ulong_num))); } #line 29764 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1386: #line 9826 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_locate((yyloc), (yyvsp[-1].item),(yyvsp[-3].item)); } #line 29772 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1387: #line 9830 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_date_add_interval((yyloc), (yyvsp[-3].item), (yyvsp[-1].item), INTERVAL_DAY, 1); } #line 29780 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1388: #line 9834 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_date_add_interval((yyloc), (yyvsp[-5].item), (yyvsp[-2].item), (yyvsp[-1].interval), 1); } #line 29788 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1389: #line 9838 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_substr((yyloc), (yyvsp[-5].item),(yyvsp[-3].item),(yyvsp[-1].item)); } #line 29796 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1390: #line 9842 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_substr((yyloc), (yyvsp[-3].item),(yyvsp[-1].item)); } #line 29804 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1391: #line 9846 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_substr((yyloc), (yyvsp[-5].item),(yyvsp[-3].item),(yyvsp[-1].item)); } #line 29812 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1392: #line 9850 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_substr((yyloc), (yyvsp[-3].item),(yyvsp[-1].item)); } #line 29820 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1393: #line 9854 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_function_call_nonkeyword_sysdate((yyloc), static_cast<uint8>((yyvsp[0].ulong_num))); } #line 29829 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1394: #line 9859 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_date_add_interval((yyloc), (yyvsp[-1].item), (yyvsp[-3].item), (yyvsp[-5].interval_time_st), 0); } #line 29837 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1395: #line 9863 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_timestamp_diff((yyloc), (yyvsp[-3].item),(yyvsp[-1].item),(yyvsp[-5].interval_time_st)); } #line 29845 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1396: #line 9867 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_curdate_utc((yyloc)); } #line 29853 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1397: #line 9871 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_curtime_utc((yyloc), static_cast<uint8>((yyvsp[0].ulong_num))); } #line 29861 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1398: #line 9875 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_now_utc((yyloc), static_cast<uint8>((yyvsp[0].ulong_num))); } #line 29869 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1399: #line 9887 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_ascii((yyloc), (yyvsp[-1].item)); } #line 29877 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1400: #line 9891 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_charset((yyloc), (yyvsp[-1].item)); } #line 29885 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1401: #line 9895 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_coalesce((yyloc), (yyvsp[-1].item_list2)); } #line 29893 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1402: #line 9899 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_collation((yyloc), (yyvsp[-1].item)); } #line 29901 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1403: #line 9903 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_database((yyloc)); } #line 29909 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1404: #line 9907 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_if((yyloc), (yyvsp[-5].item),(yyvsp[-3].item),(yyvsp[-1].item)); } #line 29917 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1405: #line 9911 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_format((yyloc), (yyvsp[-3].item), (yyvsp[-1].item)); } #line 29925 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1406: #line 9915 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_format((yyloc), (yyvsp[-5].item), (yyvsp[-3].item), (yyvsp[-1].item)); } #line 29933 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1407: #line 9919 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_microsecond((yyloc), (yyvsp[-1].item)); } #line 29941 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1408: #line 9923 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_mod((yyloc), (yyvsp[-3].item), (yyvsp[-1].item)); } #line 29949 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1409: #line 9927 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_password((yyloc), (yyvsp[-1].item)); } #line 29957 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1410: #line 9931 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_quarter((yyloc), (yyvsp[-1].item)); } #line 29965 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1411: #line 9935 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_repeat((yyloc), (yyvsp[-3].item),(yyvsp[-1].item)); } #line 29973 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1412: #line 9939 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_replace((yyloc), (yyvsp[-5].item),(yyvsp[-3].item),(yyvsp[-1].item)); } #line 29981 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1413: #line 9943 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_reverse((yyloc), (yyvsp[-1].item)); } #line 29989 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1414: #line 9947 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_row_count((yyloc)); } #line 29997 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1415: #line 9951 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_round((yyloc), (yyvsp[-3].item),(yyvsp[-1].item),1); } #line 30005 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1416: #line 9955 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_week((yyloc), (yyvsp[-1].item), NULL); } #line 30013 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1417: #line 9959 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_week((yyloc), (yyvsp[-3].item), (yyvsp[-1].item)); } #line 30021 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1418: #line 9963 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_weight_string((yyloc), (yyvsp[-2].item), 0, 0, (yyvsp[-1].ulong_num)); } #line 30029 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1419: #line 9967 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_weight_string((yyloc), (yyvsp[-5].item), 0, (yyvsp[-2].ulong_num), (yyvsp[-1].ulong_num) | MY_STRXFRM_PAD_WITH_SPACE); } #line 30038 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1420: #line 9972 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_weight_string((yyloc), (yyvsp[-4].item), 0, (yyvsp[-1].ulong_num), MY_STRXFRM_PAD_WITH_SPACE, true); } #line 30047 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1421: #line 9977 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_weight_string((yyloc), (yyvsp[-7].item), (yyvsp[-5].ulong_num), (yyvsp[-3].ulong_num), (yyvsp[-1].ulong_num)); } #line 30055 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1423: #line 9985 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_deprecated_warn(YYTHD, "CONTAINS", "MBRCONTAINS"); (yyval.item)= NEW_PTN Item_func_spatial_mbr_rel((yyloc), (yyvsp[-3].item), (yyvsp[-1].item), Item_func::SP_CONTAINS_FUNC); } #line 30065 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1424: #line 9991 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_spatial_collection((yyloc), (yyvsp[-1].item_list2), Geometry::wkb_geometrycollection, Geometry::wkb_point); } #line 30075 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1425: #line 9997 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_spatial_collection((yyloc), (yyvsp[-1].item_list2), Geometry::wkb_linestring, Geometry::wkb_point); } #line 30085 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1426: #line 10003 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_spatial_collection((yyloc), (yyvsp[-1].item_list2), Geometry::wkb_multilinestring, Geometry::wkb_linestring); } #line 30095 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1427: #line 10009 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_spatial_collection((yyloc), (yyvsp[-1].item_list2), Geometry::wkb_multipoint, Geometry::wkb_point); } #line 30105 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1428: #line 10015 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_spatial_collection((yyloc), (yyvsp[-1].item_list2), Geometry::wkb_multipolygon, Geometry::wkb_polygon); } #line 30115 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1429: #line 10021 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_point((yyloc), (yyvsp[-3].item),(yyvsp[-1].item)); } #line 30123 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1430: #line 10025 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_spatial_collection((yyloc), (yyvsp[-1].item_list2), Geometry::wkb_polygon, Geometry::wkb_linestring); } #line 30133 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1431: #line 10043 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_function_call_generic_ident_sys((yylsp[-3]), (yyvsp[-3].lex_str), (yyvsp[-1].item_list2)); } #line 30141 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1432: #line 10047 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_function_call_generic_2d((yyloc), (yyvsp[-5].lex_str), (yyvsp[-3].lex_str), (yyvsp[-1].item_list2)); } #line 30149 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1433: #line 10054 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[-1].num) | (yyvsp[0].num); } #line 30155 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1434: #line 10056 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= FT_BOOL; DBUG_EXECUTE_IF("simulate_bug18831513", { THD *thd= YYTHD; if (thd->sp_runtime_ctx) MYSQLerror(NULL,thd,"syntax error"); }); } #line 30169 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1435: #line 10068 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= FT_NL; } #line 30175 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1436: #line 10069 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= FT_NL; } #line 30181 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1437: #line 10073 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 30187 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1438: #line 10074 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= FT_EXPAND; } #line 30193 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1439: #line 10078 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= NULL; } #line 30199 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1440: #line 10079 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= (yyvsp[0].item_list2); } #line 30205 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1441: #line 10084 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= NEW_PTN PT_item_list; if ((yyval.item_list2) == NULL || (yyval.item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; } #line 30215 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1442: #line 10090 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-2].item_list2) == NULL || (yyvsp[-2].item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; (yyval.item_list2)= (yyvsp[-2].item_list2); } #line 30225 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1443: #line 10099 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_udf_expr((yyloc), (yyvsp[-1].item), (yyvsp[0].lex_str), (yylsp[-1]).cpp); } #line 30233 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1444: #line 10106 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_avg((yyloc), (yyvsp[-1].item), FALSE); } #line 30241 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1445: #line 10110 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_avg((yyloc), (yyvsp[-1].item), TRUE); } #line 30249 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1446: #line 10114 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_and((yyloc), (yyvsp[-1].item)); } #line 30257 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1447: #line 10118 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_or((yyloc), (yyvsp[-1].item)); } #line 30265 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1448: #line 10122 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_json_array((yyloc), (yyvsp[-1].item)); } #line 30273 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1449: #line 10126 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_json_object((yyloc), (yyvsp[-3].item), (yyvsp[-1].item)); } #line 30281 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1450: #line 10130 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_xor((yyloc), (yyvsp[-1].item)); } #line 30289 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1451: #line 10134 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_count_sym((yyloc)); } #line 30297 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1452: #line 10138 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_count((yyloc), (yyvsp[-1].item)); } #line 30305 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1453: #line 10142 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= new Item_sum_count((yyloc), (yyvsp[-1].item_list2)); } #line 30313 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1454: #line 10146 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_min((yyloc), (yyvsp[-1].item)); } #line 30321 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1455: #line 10155 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_min((yyloc), (yyvsp[-1].item)); } #line 30329 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1456: #line 10159 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_max((yyloc), (yyvsp[-1].item)); } #line 30337 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1457: #line 10163 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_max((yyloc), (yyvsp[-1].item)); } #line 30345 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1458: #line 10167 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_std((yyloc), (yyvsp[-1].item), 0); } #line 30353 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1459: #line 10171 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_variance((yyloc), (yyvsp[-1].item), 0); } #line 30361 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1460: #line 10175 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_std((yyloc), (yyvsp[-1].item), 1); } #line 30369 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1461: #line 10179 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_variance((yyloc), (yyvsp[-1].item), 1); } #line 30377 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1462: #line 10183 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_sum((yyloc), (yyvsp[-1].item), FALSE); } #line 30385 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1463: #line 10187 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_sum_sum((yyloc), (yyvsp[-1].item), TRUE); } #line 30393 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1464: #line 10194 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_func_group_concat((yyloc), (yyvsp[-4].num), (yyvsp[-3].item_list2), (yyvsp[-2].order_list), (yyvsp[-1].string)); } #line 30401 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1465: #line 10200 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= (yyvsp[0].item); } #line 30407 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1466: #line 10205 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_variable_aux_set_var((yyloc), (yyvsp[-2].lex_str), (yyvsp[0].item)); } #line 30415 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1467: #line 10209 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_variable_aux_ident_or_text((yyloc), (yyvsp[0].lex_str)); } #line 30423 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1468: #line 10213 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_variable_aux_3d((yyloc), (yyvsp[-2].var_type), (yyvsp[-1].lex_str), (yylsp[-1]), (yyvsp[0].lex_str)); } #line 30431 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1469: #line 10219 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num) = 0; } #line 30437 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1470: #line 10220 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num) = 1; } #line 30443 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1471: #line 10225 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.string)= new (YYTHD->mem_root) String(",", 1, &my_charset_latin1); if ((yyval.string) == NULL) MYSQL_YYABORT; } #line 30453 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1472: #line 10230 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.string) = (yyvsp[0].string); } #line 30459 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1473: #line 10234 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.order_list)= NULL; } #line 30465 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1474: #line 10235 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.order_list)= (yyvsp[0].order_list); } #line 30471 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1475: #line 10240 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyvsp[-2].order_list)->push_back((yyvsp[0].order_expr)); (yyval.order_list)= (yyvsp[-2].order_list); } #line 30480 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1476: #line 10245 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.order_list)= NEW_PTN PT_gorder_list(); if ((yyval.order_list) == NULL) MYSQL_YYABORT; (yyval.order_list)->push_back((yyvsp[0].order_expr)); } #line 30491 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1477: #line 10255 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_in_sum_expr((yylsp[-1]), (yyvsp[0].item)); } #line 30499 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1478: #line 10262 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target= ITEM_CAST_CHAR; (yyval.cast_type).charset= &my_charset_bin; (yyval.cast_type).type_flags= 0; (yyval.cast_type).length= (yyvsp[0].c_str); (yyval.cast_type).dec= NULL; } #line 30511 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1479: #line 10270 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target= ITEM_CAST_CHAR; (yyval.cast_type).charset= (yyvsp[0].charset_with_flags).charset; (yyval.cast_type).type_flags= (yyvsp[0].charset_with_flags).type_flags; (yyval.cast_type).length= (yyvsp[-1].c_str); (yyval.cast_type).dec= NULL; } #line 30523 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1480: #line 10278 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target= ITEM_CAST_CHAR; (yyval.cast_type).charset= national_charset_info; (yyval.cast_type).type_flags= 0; (yyval.cast_type).length= (yyvsp[0].c_str); (yyval.cast_type).dec= NULL; } #line 30535 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1481: #line 10286 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target= ITEM_CAST_SIGNED_INT; (yyval.cast_type).charset= NULL; (yyval.cast_type).type_flags= 0; (yyval.cast_type).length= NULL; (yyval.cast_type).dec= NULL; } #line 30547 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1482: #line 10294 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target= ITEM_CAST_SIGNED_INT; (yyval.cast_type).charset= NULL; (yyval.cast_type).type_flags= 0; (yyval.cast_type).length= NULL; (yyval.cast_type).dec= NULL; } #line 30559 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1483: #line 10302 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target= ITEM_CAST_UNSIGNED_INT; (yyval.cast_type).charset= NULL; (yyval.cast_type).type_flags= 0; (yyval.cast_type).length= NULL; (yyval.cast_type).dec= NULL; } #line 30571 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1484: #line 10310 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target= ITEM_CAST_UNSIGNED_INT; (yyval.cast_type).charset= NULL; (yyval.cast_type).type_flags= 0; (yyval.cast_type).length= NULL; (yyval.cast_type).dec= NULL; } #line 30583 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1485: #line 10318 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target= ITEM_CAST_DATE; (yyval.cast_type).charset= NULL; (yyval.cast_type).type_flags= 0; (yyval.cast_type).length= NULL; (yyval.cast_type).dec= NULL; } #line 30595 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1486: #line 10326 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target= ITEM_CAST_TIME; (yyval.cast_type).charset= NULL; (yyval.cast_type).type_flags= 0; (yyval.cast_type).length= NULL; (yyval.cast_type).dec= (yyvsp[0].c_str); } #line 30607 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1487: #line 10334 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target= ITEM_CAST_DATETIME; (yyval.cast_type).charset= NULL; (yyval.cast_type).type_flags= 0; (yyval.cast_type).length= NULL; (yyval.cast_type).dec= (yyvsp[0].c_str); } #line 30619 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1488: #line 10342 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target=ITEM_CAST_DECIMAL; (yyval.cast_type).charset= NULL; (yyval.cast_type).type_flags= 0; (yyval.cast_type).length= (yyvsp[0].precision).length; (yyval.cast_type).dec= (yyvsp[0].precision).dec; } #line 30631 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1489: #line 10350 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.cast_type).target=ITEM_CAST_JSON; (yyval.cast_type).charset= NULL; (yyval.cast_type).type_flags= 0; (yyval.cast_type).length= NULL; (yyval.cast_type).dec= NULL; } #line 30643 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1490: #line 10360 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= NULL; } #line 30649 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1492: #line 10366 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= NEW_PTN PT_item_list; if ((yyval.item_list2) == NULL || (yyval.item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; } #line 30659 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1493: #line 10372 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-2].item_list2) == NULL || (yyvsp[-2].item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; (yyval.item_list2)= (yyvsp[-2].item_list2); } #line 30669 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1494: #line 10380 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= (yyvsp[0].item_list2); } #line 30675 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1495: #line 10381 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= (yyvsp[-1].item_list2); } #line 30681 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1496: #line 10386 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= NEW_PTN PT_item_list; if ((yyval.item_list2) == NULL || (yyval.item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; } #line 30691 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1497: #line 10392 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-2].item_list2) == NULL || (yyvsp[-2].item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; (yyval.item_list2)= (yyvsp[-2].item_list2); } #line 30701 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1498: #line 10400 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NULL; } #line 30707 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1499: #line 10401 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= (yyvsp[0].item); } #line 30713 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1500: #line 10405 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NULL; } #line 30719 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1501: #line 10406 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= (yyvsp[0].item); } #line 30725 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1502: #line 10411 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list)= new List<Item>; if ((yyval.item_list) == NULL) MYSQL_YYABORT; (yyval.item_list)->push_back((yyvsp[-2].item)); (yyval.item_list)->push_back((yyvsp[0].item)); } #line 30737 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1503: #line 10419 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyvsp[-4].item_list)->push_back((yyvsp[-2].item)); (yyvsp[-4].item_list)->push_back((yyvsp[0].item)); (yyval.item_list)= (yyvsp[-4].item_list); } #line 30747 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1505: #line 10431 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_list2)= NEW_PTN PT_table_ref_join_table((yyvsp[0].node)); } #line 30755 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1506: #line 10438 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.join_table_list)= NEW_PTN PT_join_table_list((yyloc), (yyvsp[0].table_list2)); } #line 30763 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1508: #line 10452 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_list2)= (yyvsp[-1].table_list2); } #line 30769 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1510: #line 10460 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_list2)= NEW_PTN PT_derived_table_list((yyloc), (yyvsp[-2].table_list2), (yyvsp[0].table_list2)); } #line 30777 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1511: #line 10480 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table<JTT_NORMAL>((yyvsp[-2].table_list2), (yylsp[-1]), (yyvsp[0].table_list2)); } #line 30785 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1512: #line 10484 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table<JTT_STRAIGHT>((yyvsp[-2].table_list2), (yylsp[-1]), (yyvsp[0].table_list2)); } #line 30793 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1513: #line 10490 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table_on<JTT_NORMAL>((yyvsp[-4].table_list2), (yylsp[-3]), (yyvsp[-2].table_list2), (yyvsp[0].item)); } #line 30801 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1514: #line 10496 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table_on<JTT_STRAIGHT>((yyvsp[-4].table_list2), (yylsp[-3]), (yyvsp[-2].table_list2), (yyvsp[0].item)); } #line 30809 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1515: #line 10502 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table_using<JTT_NORMAL>((yyvsp[-6].table_list2), (yylsp[-5]), (yyvsp[-4].table_list2), (yyvsp[-1].string_list)); } #line 30817 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1516: #line 10506 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table<JTT_NATURAL>((yyvsp[-3].table_list2), (yylsp[-2]), (yyvsp[0].table_list2)); } #line 30825 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1517: #line 10514 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table_on<JTT_LEFT>((yyvsp[-6].table_list2), (yylsp[-5]), (yyvsp[-2].table_list2), (yyvsp[0].item)); } #line 30833 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1518: #line 10519 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table_using<JTT_LEFT>((yyvsp[-8].table_list2), (yylsp[-7]), (yyvsp[-4].table_list2), (yyvsp[-1].string_list)); } #line 30841 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1519: #line 10523 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table<JTT_NATURAL_LEFT>((yyvsp[-5].table_list2), (yylsp[-4]), (yyvsp[0].table_list2)); } #line 30849 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1520: #line 10531 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table_on<JTT_RIGHT>((yyvsp[-6].table_list2), (yylsp[-5]), (yyvsp[-2].table_list2), (yyvsp[0].item)); } #line 30857 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1521: #line 10536 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table_using<JTT_RIGHT>((yyvsp[-8].table_list2), (yylsp[-7]), (yyvsp[-4].table_list2), (yyvsp[-1].string_list)); } #line 30865 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1522: #line 10540 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_join_table<JTT_NATURAL_RIGHT>((yyvsp[-5].table_list2), (yylsp[-4]), (yyvsp[0].table_list2)); } #line 30873 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1523: #line 10546 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 30879 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1524: #line 10547 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 30885 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1525: #line 10548 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 30891 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1526: #line 10556 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.string_list)= NULL; } #line 30897 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1528: #line 10562 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.string_list)= (yyvsp[-1].string_list); } #line 30905 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1529: #line 10577 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_list2)= NEW_PTN PT_table_factor_table_ident((yyvsp[-3].table), (yyvsp[-2].string_list), (yyvsp[-1].lex_str_ptr), (yyvsp[0].key_usage_list)); } #line 30913 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1530: #line 10581 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_list2)= NEW_PTN PT_table_factor_select_sym((yyloc), (yyvsp[-3].optimizer_hints), (yyvsp[-2].select_options), (yyvsp[-1].item_list2), (yyvsp[0].table_expression)); } #line 30921 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1531: #line 10603 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_list2)= NEW_PTN PT_table_factor_parenthesis((yyvsp[-2].table_list2), (yyvsp[0].lex_str_ptr), (yylsp[0])); } #line 30929 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1532: #line 10630 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_list2)= NEW_PTN PT_select_derived_union_select((yyvsp[-1].table_list2), (yyvsp[0].node), (yylsp[0])); } #line 30937 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1533: #line 10634 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_list2)= NEW_PTN PT_select_derived_union_union((yyvsp[-3].table_list2), (yylsp[-2]), (yyvsp[-1].num), (yyvsp[0].select_lex2)); } #line 30945 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1534: #line 10641 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* TODO: remove this semantic action (currently this removal adds shift/reduce conflict) */ } #line 30956 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1535: #line 10648 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_part2_derived)= NEW_PTN PT_select_part2_derived((yyvsp[-1].ulonglong_number), (yyvsp[0].item_list2)); } #line 30964 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1536: #line 10656 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_list2)= NEW_PTN PT_select_derived((yylsp[0]), (yyvsp[0].table_list2)); } #line 30972 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1537: #line 10662 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 30978 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1538: #line 10663 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 30984 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1539: #line 10668 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= old_mode ? INDEX_HINT_MASK_JOIN : INDEX_HINT_MASK_ALL; } #line 30992 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1540: #line 10671 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= INDEX_HINT_MASK_JOIN; } #line 30998 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1541: #line 10672 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= INDEX_HINT_MASK_ORDER; } #line 31004 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1542: #line 10673 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= INDEX_HINT_MASK_GROUP; } #line 31010 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1543: #line 10677 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.index_hint)= INDEX_HINT_FORCE; } #line 31016 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1544: #line 10678 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.index_hint)= INDEX_HINT_IGNORE; } #line 31022 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1545: #line 10684 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { init_index_hints((yyvsp[-1].key_usage_list), (yyvsp[-5].index_hint), (yyvsp[-3].num)); (yyval.key_usage_list)= (yyvsp[-1].key_usage_list); } #line 31031 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1546: #line 10690 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { init_index_hints((yyvsp[-1].key_usage_list), INDEX_HINT_USE, (yyvsp[-3].num)); (yyval.key_usage_list)= (yyvsp[-1].key_usage_list); } #line 31040 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1548: #line 10699 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyvsp[0].key_usage_list)->concat((yyvsp[-1].key_usage_list)); (yyval.key_usage_list)= (yyvsp[0].key_usage_list); } #line 31049 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1549: #line 10706 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_usage_list)= NULL; } #line 31055 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1552: #line 10716 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_usage_list)= new (YYTHD->mem_root) List<Index_hint>; Index_hint *hint= new (YYTHD->mem_root) Index_hint(NULL, 0); if ((yyval.key_usage_list) == NULL || hint == NULL || (yyval.key_usage_list)->push_front(hint)) MYSQL_YYABORT; } #line 31066 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1554: #line 10727 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_usage_element)= new (YYTHD->mem_root) Index_hint((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length); if ((yyval.key_usage_element) == NULL) MYSQL_YYABORT; } #line 31076 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1555: #line 10733 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_usage_element)= new (YYTHD->mem_root) Index_hint(STRING_WITH_LEN("PRIMARY")); if ((yyval.key_usage_element) == NULL) MYSQL_YYABORT; } #line 31086 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1556: #line 10742 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.key_usage_list)= new (YYTHD->mem_root) List<Index_hint>; if ((yyval.key_usage_list) == NULL || (yyval.key_usage_list)->push_front((yyvsp[0].key_usage_element))) MYSQL_YYABORT; } #line 31096 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1557: #line 10748 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyval.key_usage_list)->push_front((yyvsp[0].key_usage_element))) MYSQL_YYABORT; } #line 31105 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1558: #line 10756 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!((yyval.string_list)= new List<String>)) MYSQL_YYABORT; String *s= new (YYTHD->mem_root) String((const char *) (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, system_charset_info); if (s == NULL) MYSQL_YYABORT; (yyval.string_list)->push_back(s); } #line 31120 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1559: #line 10767 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { String *s= new (YYTHD->mem_root) String((const char *) (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, system_charset_info); if (s == NULL) MYSQL_YYABORT; (yyvsp[-2].string_list)->push_back(s); (yyval.string_list)= (yyvsp[-2].string_list); } #line 31134 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1560: #line 10779 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 31140 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1561: #line 10780 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval)=INTERVAL_DAY_HOUR; } #line 31146 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1562: #line 10781 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval)=INTERVAL_DAY_MICROSECOND; } #line 31152 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1563: #line 10782 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval)=INTERVAL_DAY_MINUTE; } #line 31158 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1564: #line 10783 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval)=INTERVAL_DAY_SECOND; } #line 31164 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1565: #line 10784 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval)=INTERVAL_HOUR_MICROSECOND; } #line 31170 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1566: #line 10785 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval)=INTERVAL_HOUR_MINUTE; } #line 31176 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1567: #line 10786 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval)=INTERVAL_HOUR_SECOND; } #line 31182 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1568: #line 10787 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval)=INTERVAL_MINUTE_MICROSECOND; } #line 31188 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1569: #line 10788 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval)=INTERVAL_MINUTE_SECOND; } #line 31194 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1570: #line 10789 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval)=INTERVAL_SECOND_MICROSECOND; } #line 31200 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1571: #line 10790 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval)=INTERVAL_YEAR_MONTH; } #line 31206 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1572: #line 10794 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval_time_st)=INTERVAL_DAY; } #line 31212 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1573: #line 10795 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval_time_st)=INTERVAL_WEEK; } #line 31218 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1574: #line 10796 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval_time_st)=INTERVAL_HOUR; } #line 31224 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1575: #line 10797 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval_time_st)=INTERVAL_MINUTE; } #line 31230 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1576: #line 10798 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval_time_st)=INTERVAL_MONTH; } #line 31236 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1577: #line 10799 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval_time_st)=INTERVAL_QUARTER; } #line 31242 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1578: #line 10800 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval_time_st)=INTERVAL_SECOND; } #line 31248 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1579: #line 10801 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval_time_st)=INTERVAL_MICROSECOND; } #line 31254 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1580: #line 10802 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.interval_time_st)=INTERVAL_YEAR; } #line 31260 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1581: #line 10806 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {(yyval.date_time_type)= MYSQL_TIMESTAMP_DATE; } #line 31266 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1582: #line 10807 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {(yyval.date_time_type)= MYSQL_TIMESTAMP_TIME; } #line 31272 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1583: #line 10808 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {(yyval.date_time_type)= MYSQL_TIMESTAMP_DATETIME; } #line 31278 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1584: #line 10809 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {(yyval.date_time_type)= MYSQL_TIMESTAMP_DATETIME; } #line 31284 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1588: #line 10819 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str_ptr)=0; } #line 31290 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1589: #line 10821 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str_ptr)= (LEX_STRING*) sql_memdup(&(yyvsp[0].lex_str),sizeof(LEX_STRING)); if ((yyval.lex_str_ptr) == NULL) MYSQL_YYABORT; } #line 31300 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1592: #line 10834 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NULL; } #line 31306 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1593: #line 10836 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= new PTI_context<CTX_WHERE>((yyloc), (yyvsp[0].item)); } #line 31314 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1594: #line 10842 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NULL; } #line 31320 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1595: #line 10844 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= new PTI_context<CTX_HAVING>((yyloc), (yyvsp[0].item)); } #line 31328 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1596: #line 10850 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= (yyvsp[0].item); } #line 31334 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1597: #line 10851 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NULL; } #line 31340 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1598: #line 10859 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.group)= NULL; } #line 31346 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1599: #line 10861 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.group)= NEW_PTN PT_group((yyvsp[-1].order_list), (yyvsp[0].olap_type)); } #line 31354 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1600: #line 10868 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyvsp[-2].order_list)->push_back((yyvsp[0].order_expr)); (yyval.order_list)= (yyvsp[-2].order_list); } #line 31363 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1601: #line 10873 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.order_list)= NEW_PTN PT_order_list(); if ((yyval.order_list) == NULL) MYSQL_YYABORT; (yyval.order_list)->push_back((yyvsp[0].order_expr)); } #line 31374 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1602: #line 10882 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.olap_type)= UNSPECIFIED_OLAP_TYPE; } #line 31380 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1603: #line 10883 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.olap_type)= CUBE_TYPE; } #line 31386 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1604: #line 10891 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.olap_type)= ROLLUP_TYPE; } #line 31392 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1608: #line 10916 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[-1].item), &(yyvsp[-1].item)); THD *thd= YYTHD; ORDER *order= (ORDER *) thd->alloc(sizeof(ORDER)); if (order == NULL) MYSQL_YYABORT; order->item_ptr= (yyvsp[-1].item); order->direction= ((yyvsp[0].num) == 1) ? ORDER::ORDER_ASC : ORDER::ORDER_DESC; order->is_position= false; add_order_to_list(thd, order); } #line 31409 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1609: #line 10935 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.order)= NULL; } #line 31415 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1611: #line 10941 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.order)= NEW_PTN PT_order((yyvsp[0].order_list)); } #line 31423 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1612: #line 10948 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyvsp[-2].order_list)->push_back((yyvsp[0].order_expr)); (yyval.order_list)= (yyvsp[-2].order_list); } #line 31432 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1613: #line 10953 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.order_list)= NEW_PTN PT_order_list(); if ((yyval.order_list) == NULL) MYSQL_YYABORT; (yyval.order_list)->push_back((yyvsp[0].order_expr)); } #line 31443 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1614: #line 10962 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num) = 1; } #line 31449 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1616: #line 10967 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num) =1; } #line 31455 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1617: #line 10968 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num) =0; } #line 31461 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1618: #line 10972 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.limit_clause)= NULL; } #line 31467 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1620: #line 10978 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.limit_clause)= NEW_PTN PT_limit_clause((yyvsp[0].limit_options)); } #line 31475 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1621: #line 10985 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.limit_options).limit= (yyvsp[0].item); (yyval.limit_options).opt_offset= NULL; (yyval.limit_options).is_offset_first= false; } #line 31485 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1622: #line 10991 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.limit_options).limit= (yyvsp[0].item); (yyval.limit_options).opt_offset= (yyvsp[-2].item); (yyval.limit_options).is_offset_first= true; } #line 31495 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1623: #line 10997 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.limit_options).limit= (yyvsp[-2].item); (yyval.limit_options).opt_offset= (yyvsp[0].item); (yyval.limit_options).is_offset_first= false; } #line 31505 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1624: #line 11006 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_limit_option_ident((yyloc), (yyvsp[0].lex_str), (yylsp[0]).raw); } #line 31513 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1625: #line 11010 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_limit_option_param_marker((yyloc), (yyvsp[0].param_marker)); } #line 31521 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1626: #line 11014 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_uint((yyloc), (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length); } #line 31529 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1627: #line 11018 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_uint((yyloc), (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length); } #line 31537 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1628: #line 11022 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_uint((yyloc), (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length); } #line 31545 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1629: #line 11028 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NULL; } #line 31551 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1630: #line 11029 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= (yyvsp[0].item); } #line 31557 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1631: #line 11033 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31563 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1632: #line 11034 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (ulong) my_strtoll((yyvsp[0].lex_str).str, (char**) 0, 16); } #line 31569 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1633: #line 11035 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31575 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1634: #line 11036 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31581 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1635: #line 11037 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31587 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1636: #line 11038 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31593 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1637: #line 11042 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31599 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1638: #line 11043 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulong_num)= (ulong) my_strtoll((yyvsp[0].lex_str).str, (char**) 0, 16); } #line 31605 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1639: #line 11044 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31611 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1640: #line 11045 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulong_num)= (ulong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31617 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1641: #line 11046 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MYSQL_YYABORT; } #line 31623 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1642: #line 11050 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31629 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1643: #line 11051 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31635 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1644: #line 11052 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31641 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1645: #line 11053 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31647 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1646: #line 11054 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31653 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1647: #line 11058 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31659 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1648: #line 11059 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31665 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1649: #line 11060 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); } #line 31671 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1650: #line 11061 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MYSQL_YYABORT; } #line 31677 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1651: #line 11066 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { my_syntax_error(ER(ER_ONLY_INTEGERS_ALLOWED)); } #line 31683 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1654: #line 11075 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.procedure_analyse)= NULL; } #line 31689 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1655: #line 11078 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_deprecated_warn_no_replacement(YYTHD, "PROCEDURE ANALYSE"); (yyval.procedure_analyse)= NEW_PTN PT_procedure_analyse((yyvsp[-1].procedure_analyse_params)); } #line 31698 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1656: #line 11086 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.procedure_analyse_params).max_tree_elements= Proc_analyse_params::default_max_tree_elements; (yyval.procedure_analyse_params).max_treemem= Proc_analyse_params::default_max_treemem; } #line 31707 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1657: #line 11091 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.procedure_analyse_params).max_tree_elements= static_cast<uint>((yyvsp[0].ulonglong_number)); (yyval.procedure_analyse_params).max_treemem= Proc_analyse_params::default_max_treemem; } #line 31716 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1658: #line 11096 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.procedure_analyse_params).max_tree_elements= static_cast<uint>((yyvsp[-2].ulonglong_number)); (yyval.procedure_analyse_params).max_treemem= static_cast<uint>((yyvsp[0].ulonglong_number)); } #line 31725 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1659: #line 11104 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; (yyval.ulonglong_number)= (ulonglong) my_strtoll10((yyvsp[0].lex_str).str, (char**) 0, &error); if (error != 0) { my_error(ER_WRONG_PARAMETERS_TO_PROCEDURE, MYF(0), "ANALYSE"); MYSQL_YYABORT; } } #line 31739 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1660: #line 11117 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_var_list)= (yyvsp[-2].select_var_list); if ((yyval.select_var_list) == NULL || (yyval.select_var_list)->push_back((yyvsp[0].select_var_ident))) MYSQL_YYABORT; } #line 31749 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1661: #line 11123 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_var_list)= NEW_PTN PT_select_var_list; if ((yyval.select_var_list) == NULL || (yyval.select_var_list)->push_back((yyvsp[0].select_var_ident))) MYSQL_YYABORT; } #line 31759 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1662: #line 11132 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_var_ident)= NEW_PTN PT_select_var((yyvsp[0].lex_str)); } #line 31767 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1663: #line 11136 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_var_ident)= NEW_PTN PT_select_sp_var((yyvsp[0].lex_str)); } #line 31775 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1664: #line 11142 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.into_destination)= NULL; } #line 31781 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1666: #line 11148 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.into_destination)= (yyvsp[0].into_destination); } #line 31789 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1667: #line 11157 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.into_destination)= NEW_PTN PT_into_destination_outfile((yyvsp[-3].lex_str), (yyvsp[-2].charset), (yyvsp[-1].field_separators), (yyvsp[0].line_separators)); } #line 31797 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1668: #line 11161 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.into_destination)= NEW_PTN PT_into_destination_dumpfile((yyvsp[0].lex_str)); } #line 31805 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1669: #line 11164 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.into_destination)= (yyvsp[0].select_var_list); } #line 31811 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1670: #line 11173 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select)= NEW_PTN PT_select( NEW_PTN PT_select_init2(NULL, NEW_PTN PT_select_part2( NEW_PTN PT_select_options_and_item_list((yyvsp[-1].select_options), (yyvsp[0].item_list2))), NULL), SQLCOM_DO); } #line 31823 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1671: #line 11184 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_options).query_spec_options= 0; (yyval.select_options).sql_cache= SELECT_LEX::SQL_CACHE_UNSPECIFIED; } #line 31832 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1672: #line 11196 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command = SQLCOM_DROP_TABLE; lex->drop_temporary= (yyvsp[-2].num); lex->drop_if_exists= (yyvsp[0].num); YYPS->m_lock_type= TL_UNLOCK; YYPS->m_mdl_type= MDL_EXCLUSIVE; } #line 31845 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1673: #line 11205 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 31851 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1674: #line 11206 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 31857 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1675: #line 11207 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; Alter_drop *ad= new Alter_drop(Alter_drop::KEY, (yyvsp[-3].lex_str).str); if (ad == NULL) MYSQL_YYABORT; lex->sql_command= SQLCOM_DROP_INDEX; lex->alter_info.reset(); lex->alter_info.flags= Alter_info::ALTER_DROP_INDEX; lex->alter_info.drop_list.push_back(ad); if (!lex->current_select()->add_table_to_list(lex->thd, (yyvsp[-1].table), NULL, TL_OPTION_UPDATING, TL_READ_NO_INSERT, MDL_SHARED_UPGRADABLE)) MYSQL_YYABORT; } #line 31877 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1676: #line 11222 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 31883 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1677: #line 11224 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_DROP_DB; lex->drop_if_exists=(yyvsp[-1].num); lex->name= (yyvsp[0].lex_str); } #line 31894 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1678: #line 11231 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; sp_name *spname; if ((yyvsp[-2].lex_str).str && (check_and_convert_db_name(&(yyvsp[-2].lex_str), FALSE) != IDENT_NAME_OK)) MYSQL_YYABORT; if (sp_check_name(&(yyvsp[0].lex_str))) MYSQL_YYABORT; if (lex->sphead) { my_error(ER_SP_NO_DROP_SP, MYF(0), "FUNCTION"); MYSQL_YYABORT; } lex->sql_command = SQLCOM_DROP_FUNCTION; lex->drop_if_exists= (yyvsp[-3].num); spname= new sp_name(to_lex_cstring((yyvsp[-2].lex_str)), (yyvsp[0].lex_str), true); if (spname == NULL) MYSQL_YYABORT; spname->init_qname(thd); lex->spname= spname; } #line 31921 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1679: #line 11254 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* Unlike DROP PROCEDURE, "DROP FUNCTION ident" should work even if there is no current database. In this case it applies only to UDF. Hence we can't merge rules for "DROP FUNCTION ident.ident" and "DROP FUNCTION ident" into one "DROP FUNCTION sp_name" rule. sp_name assumes that database name should be always provided - either explicitly or implicitly. */ THD *thd= YYTHD; LEX *lex= thd->lex; LEX_STRING db= NULL_STR; sp_name *spname; if (lex->sphead) { my_error(ER_SP_NO_DROP_SP, MYF(0), "FUNCTION"); MYSQL_YYABORT; } if (thd->db().str && lex->copy_db_to(&db.str, &db.length)) MYSQL_YYABORT; if (sp_check_name(&(yyvsp[0].lex_str))) MYSQL_YYABORT; lex->sql_command = SQLCOM_DROP_FUNCTION; lex->drop_if_exists= (yyvsp[-1].num); spname= new sp_name(to_lex_cstring(db), (yyvsp[0].lex_str), false); if (spname == NULL) MYSQL_YYABORT; spname->init_qname(thd); lex->spname= spname; } #line 31957 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1680: #line 11286 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; if (lex->sphead) { my_error(ER_SP_NO_DROP_SP, MYF(0), "PROCEDURE"); MYSQL_YYABORT; } lex->sql_command = SQLCOM_DROP_PROCEDURE; lex->drop_if_exists= (yyvsp[-1].num); lex->spname= (yyvsp[0].spname); } #line 31973 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1681: #line 11298 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_DROP_USER; lex->drop_if_exists= (yyvsp[-2].num); } #line 31983 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1682: #line 11304 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_DROP_VIEW; lex->drop_if_exists= (yyvsp[0].num); YYPS->m_lock_type= TL_UNLOCK; YYPS->m_mdl_type= MDL_EXCLUSIVE; } #line 31995 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1683: #line 11312 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 32001 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1684: #line 11314 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->drop_if_exists= (yyvsp[-1].num); Lex->spname= (yyvsp[0].spname); Lex->sql_command = SQLCOM_DROP_EVENT; } #line 32011 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1685: #line 11320 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_DROP_TRIGGER; lex->drop_if_exists= (yyvsp[-1].num); lex->spname= (yyvsp[0].spname); } #line 32022 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1686: #line 11327 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->ts_cmd_type= DROP_TABLESPACE; } #line 32031 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1687: #line 11332 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->alter_tablespace_info->ts_cmd_type= DROP_LOGFILE_GROUP; } #line 32040 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1688: #line 11337 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_DROP_SERVER; Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_drop_server((yyvsp[0].lex_str), (yyvsp[-1].num)); } #line 32050 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1691: #line 11351 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!Select->add_table_to_list(YYTHD, (yyvsp[0].table), NULL, TL_OPTION_UPDATING, YYPS->m_lock_type, YYPS->m_mdl_type)) MYSQL_YYABORT; } #line 32062 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1692: #line 11362 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_ident_list).init(YYTHD->mem_root); if ((yyval.table_ident_list).push_back((yyvsp[0].table_ident))) MYSQL_YYABORT; // OOM } #line 32072 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1693: #line 11368 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_ident_list)= (yyvsp[-2].table_ident_list); if ((yyval.table_ident_list).push_back((yyvsp[0].table_ident))) MYSQL_YYABORT; // OOM } #line 32082 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1694: #line 11376 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 32088 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1695: #line 11377 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 1; } #line 32094 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1696: #line 11381 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 32100 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1697: #line 11382 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 1; } #line 32106 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1705: #line 11412 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.statement)= NEW_PTN PT_insert(false, (yyvsp[-7].optimizer_hints), (yyvsp[-6].lock_type), (yyvsp[-5].is_not_empty), (yyvsp[-3].table), (yyvsp[-2].string_list), (yyvsp[-1].column_row_value_list_pair).column_list, (yyvsp[-1].column_row_value_list_pair).row_value_list, NULL, (yyvsp[0].column_value_list_pair).column_list, (yyvsp[0].column_value_list_pair).value_list); } #line 32117 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1706: #line 11427 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { PT_insert_values_list *one_row= NEW_PTN PT_insert_values_list; if (one_row == NULL || one_row->push_back(&(yyvsp[-1].column_value_list_pair).value_list->value)) MYSQL_YYABORT; // OOM (yyval.statement)= NEW_PTN PT_insert(false, (yyvsp[-8].optimizer_hints), (yyvsp[-7].lock_type), (yyvsp[-6].is_not_empty), (yyvsp[-4].table), (yyvsp[-3].string_list), (yyvsp[-1].column_value_list_pair).column_list, one_row, NULL, (yyvsp[0].column_value_list_pair).column_list, (yyvsp[0].column_value_list_pair).value_list); } #line 32131 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1707: #line 11444 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.statement)= NEW_PTN PT_insert(false, (yyvsp[-7].optimizer_hints), (yyvsp[-6].lock_type), (yyvsp[-5].is_not_empty), (yyvsp[-3].table), (yyvsp[-2].string_list), (yyvsp[-1].insert_from_subquery).column_list, NULL, (yyvsp[-1].insert_from_subquery).insert_query_expression, (yyvsp[0].column_value_list_pair).column_list, (yyvsp[0].column_value_list_pair).value_list); } #line 32142 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1708: #line 11459 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.statement)= NEW_PTN PT_insert(true, (yyvsp[-5].optimizer_hints), (yyvsp[-4].lock_type), false, (yyvsp[-2].table), (yyvsp[-1].string_list), (yyvsp[0].column_row_value_list_pair).column_list, (yyvsp[0].column_row_value_list_pair).row_value_list, NULL, NULL, NULL); } #line 32153 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1709: #line 11472 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { PT_insert_values_list *one_row= NEW_PTN PT_insert_values_list; if (one_row == NULL || one_row->push_back(&(yyvsp[0].column_value_list_pair).value_list->value)) MYSQL_YYABORT; // OOM (yyval.statement)= NEW_PTN PT_insert(true, (yyvsp[-6].optimizer_hints), (yyvsp[-5].lock_type), false, (yyvsp[-3].table), (yyvsp[-2].string_list), (yyvsp[0].column_value_list_pair).column_list, one_row, NULL, NULL, NULL); } #line 32167 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1710: #line 11487 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.statement)= NEW_PTN PT_insert(true, (yyvsp[-5].optimizer_hints), (yyvsp[-4].lock_type), false, (yyvsp[-2].table), (yyvsp[-1].string_list), (yyvsp[0].insert_from_subquery).column_list, NULL, (yyvsp[0].insert_from_subquery).insert_query_expression, NULL, NULL); } #line 32178 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1711: #line 11496 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lock_type)= TL_WRITE_CONCURRENT_DEFAULT; } #line 32184 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1712: #line 11497 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; } #line 32190 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1713: #line 11499 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lock_type)= TL_WRITE_CONCURRENT_DEFAULT; push_warning_printf(YYTHD, Sql_condition::SL_WARNING, ER_WARN_LEGACY_SYNTAX_CONVERTED, ER(ER_WARN_LEGACY_SYNTAX_CONVERTED), "INSERT DELAYED", "INSERT"); } #line 32203 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1714: #line 11507 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lock_type)= TL_WRITE; } #line 32209 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1715: #line 11511 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lock_type)= (yyvsp[0].lock_type); } #line 32215 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1716: #line 11513 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lock_type)= TL_WRITE_DEFAULT; push_warning_printf(YYTHD, Sql_condition::SL_WARNING, ER_WARN_LEGACY_SYNTAX_CONVERTED, ER(ER_WARN_LEGACY_SYNTAX_CONVERTED), "REPLACE DELAYED", "REPLACE"); } #line 32228 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1719: #line 11530 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.column_row_value_list_pair).column_list= NEW_PTN PT_item_list; (yyval.column_row_value_list_pair).row_value_list= (yyvsp[0].values_list); } #line 32237 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1720: #line 11535 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.column_row_value_list_pair).column_list= NEW_PTN PT_item_list; (yyval.column_row_value_list_pair).row_value_list= (yyvsp[0].values_list); } #line 32246 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1721: #line 11540 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.column_row_value_list_pair).column_list= (yyvsp[-2].item_list2); (yyval.column_row_value_list_pair).row_value_list= (yyvsp[0].values_list); } #line 32255 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1722: #line 11548 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.insert_from_subquery).column_list= NEW_PTN PT_item_list; (yyval.insert_from_subquery).insert_query_expression= (yyvsp[0].insert_query_expression); } #line 32264 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1723: #line 11553 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.insert_from_subquery).column_list= NEW_PTN PT_item_list; (yyval.insert_from_subquery).insert_query_expression= (yyvsp[0].insert_query_expression); } #line 32273 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1724: #line 11558 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.insert_from_subquery).column_list= (yyvsp[-2].item_list2); (yyval.insert_from_subquery).insert_query_expression= (yyvsp[0].insert_query_expression); } #line 32282 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1725: #line 11566 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyval.item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; (yyval.item_list2)= (yyvsp[-2].item_list2); } #line 32292 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1726: #line 11572 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= NEW_PTN PT_item_list; if ((yyval.item_list2) == NULL || (yyval.item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; } #line 32302 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1727: #line 11581 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.values_list)= (yyvsp[0].values_list); } #line 32310 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1728: #line 11588 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.insert_query_expression)= NEW_PTN PT_insert_query_expression(false, (yyvsp[-1].create_select), (yyvsp[0].union_list)); } #line 32318 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1729: #line 11592 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.insert_query_expression)= NEW_PTN PT_insert_query_expression(true, (yyvsp[-2].create_select), (yyvsp[0].node)); } #line 32326 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1732: #line 11604 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyval.values_list)->push_back(&(yyvsp[0].item_list2)->value)) MYSQL_YYABORT; } #line 32335 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1733: #line 11609 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.values_list)= NEW_PTN PT_insert_values_list; if ((yyval.values_list) == NULL || (yyval.values_list)->push_back(&(yyvsp[0].item_list2)->value)) MYSQL_YYABORT; } #line 32345 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1734: #line 11618 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 32351 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1735: #line 11619 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 32357 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1736: #line 11623 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 32363 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1737: #line 11624 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 32369 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1738: #line 11628 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= (yyvsp[-1].item_list2); } #line 32375 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1739: #line 11633 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= NEW_PTN PT_item_list; if ((yyval.item_list2) == NULL) MYSQL_YYABORT; } #line 32385 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1741: #line 11643 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-2].item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; (yyval.item_list2)= (yyvsp[-2].item_list2); } #line 32395 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1742: #line 11649 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item_list2)= NEW_PTN PT_item_list; if ((yyval.item_list2) == NULL || (yyval.item_list2)->push_back((yyvsp[0].item))) MYSQL_YYABORT; } #line 32405 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1744: #line 11659 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_default_value((yyloc)); } #line 32413 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1745: #line 11666 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.column_value_list_pair).value_list= NULL; (yyval.column_value_list_pair).column_list= NULL; } #line 32422 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1746: #line 11671 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.column_value_list_pair)= (yyvsp[0].column_value_list_pair); } #line 32430 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1747: #line 11688 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.statement)= NEW_PTN PT_update((yyvsp[-8].optimizer_hints), (yyvsp[-7].lock_type), (yyvsp[-6].is_not_empty), (yyvsp[-5].join_table_list), (yyvsp[-3].column_value_list_pair).column_list, (yyvsp[-3].column_value_list_pair).value_list, (yyvsp[-2].item), (yyvsp[-1].order), (yyvsp[0].item)); } #line 32439 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1748: #line 11696 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.column_value_list_pair)= (yyvsp[-2].column_value_list_pair); if ((yyval.column_value_list_pair).column_list->push_back((yyvsp[0].column_value_pair).column) || (yyval.column_value_list_pair).value_list->push_back((yyvsp[0].column_value_pair).value)) MYSQL_YYABORT; // OOM } #line 32450 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1749: #line 11703 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.column_value_list_pair).column_list= NEW_PTN PT_item_list; (yyval.column_value_list_pair).value_list= NEW_PTN PT_item_list; if ((yyval.column_value_list_pair).column_list == NULL || (yyval.column_value_list_pair).value_list == NULL || (yyval.column_value_list_pair).column_list->push_back((yyvsp[0].column_value_pair).column) || (yyval.column_value_list_pair).value_list->push_back((yyvsp[0].column_value_pair).value)) MYSQL_YYABORT; // OOM } #line 32463 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1750: #line 11715 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.column_value_pair).column= (yyvsp[-2].item); (yyval.column_value_pair).value= (yyvsp[0].item); } #line 32472 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1751: #line 11722 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lock_type)= TL_WRITE_DEFAULT; } #line 32478 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1752: #line 11723 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; } #line 32484 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1753: #line 11737 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.statement)= NEW_PTN PT_delete(YYTHD->mem_root, (yyvsp[-7].optimizer_hints), (yyvsp[-6].num), (yyvsp[-4].table), (yyvsp[-3].string_list), (yyvsp[-2].item), (yyvsp[-1].order), (yyvsp[0].item)); } #line 32492 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1754: #line 11746 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.statement)= NEW_PTN PT_delete((yyvsp[-5].optimizer_hints), (yyvsp[-4].num), (yyvsp[-3].table_ident_list), (yyvsp[-1].join_table_list), (yyvsp[0].item)); } #line 32500 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1755: #line 11756 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.statement)= NEW_PTN PT_delete((yyvsp[-6].optimizer_hints), (yyvsp[-5].num), (yyvsp[-3].table_ident_list), (yyvsp[-1].join_table_list), (yyvsp[0].item)); } #line 32508 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1758: #line 11767 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= 0; } #line 32514 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1759: #line 11768 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= (yyvsp[-1].opt_delete_option) | (yyvsp[0].num); } #line 32520 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1760: #line 11772 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.opt_delete_option)= DELETE_QUICK; } #line 32526 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1761: #line 11773 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.opt_delete_option)= DELETE_LOW_PRIORITY; } #line 32532 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1762: #line 11774 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.opt_delete_option)= DELETE_IGNORE; } #line 32538 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1763: #line 11779 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX* lex= Lex; lex->sql_command= SQLCOM_TRUNCATE; lex->alter_info.reset(); YYPS->m_lock_type= TL_WRITE; YYPS->m_mdl_type= MDL_EXCLUSIVE; } #line 32550 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1764: #line 11787 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX* lex= thd->lex; assert(!lex->m_sql_cmd); lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_truncate_table(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 32563 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1771: #line 11812 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->profile_options|= PROFILE_CPU; } #line 32571 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1772: #line 11816 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->profile_options|= PROFILE_MEMORY; } #line 32579 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1773: #line 11820 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->profile_options|= PROFILE_BLOCK_IO; } #line 32587 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1774: #line 11824 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->profile_options|= PROFILE_CONTEXT; } #line 32595 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1775: #line 11828 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->profile_options|= PROFILE_PAGE_FAULTS; } #line 32603 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1776: #line 11832 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->profile_options|= PROFILE_IPC; } #line 32611 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1777: #line 11836 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->profile_options|= PROFILE_SWAPS; } #line 32619 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1778: #line 11840 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->profile_options|= PROFILE_SOURCE; } #line 32627 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1779: #line 11844 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->profile_options|= PROFILE_ALL; } #line 32635 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1780: #line 11851 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->query_id= 0; } #line 32643 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1781: #line 11855 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { int error; Lex->query_id= static_cast<my_thread_id>(my_strtoll10((yyvsp[0].lex_str).str, NULL, &error)); if (error != 0) MYSQL_YYABORT; } #line 32654 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1782: #line 11867 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; new (&lex->create_info) HA_CREATE_INFO; } #line 32663 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1784: #line 11876 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_DATABASES; if (prepare_schema_table(YYTHD, lex, 0, SCH_SCHEMATA)) MYSQL_YYABORT; } #line 32674 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1785: #line 11883 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_TABLES; lex->select_lex->db= (yyvsp[-1].simple_string); if (prepare_schema_table(YYTHD, lex, 0, SCH_TABLE_NAMES)) MYSQL_YYABORT; } #line 32686 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1786: #line 11891 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_TRIGGERS; lex->select_lex->db= (yyvsp[-1].simple_string); if (prepare_schema_table(YYTHD, lex, 0, SCH_TRIGGERS)) MYSQL_YYABORT; } #line 32698 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1787: #line 11899 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_EVENTS; lex->select_lex->db= (yyvsp[-1].simple_string); if (prepare_schema_table(YYTHD, lex, 0, SCH_EVENTS)) MYSQL_YYABORT; } #line 32710 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1788: #line 11907 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_TABLE_STATUS; lex->select_lex->db= (yyvsp[-1].simple_string); if (prepare_schema_table(YYTHD, lex, 0, SCH_TABLES)) MYSQL_YYABORT; } #line 32722 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1789: #line 11915 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_OPEN_TABLES; lex->select_lex->db= (yyvsp[-1].simple_string); if (prepare_schema_table(YYTHD, lex, 0, SCH_OPEN_TABLES)) MYSQL_YYABORT; } #line 32734 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1790: #line 11923 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_PLUGINS; if (prepare_schema_table(YYTHD, lex, 0, SCH_PLUGINS)) MYSQL_YYABORT; } #line 32745 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1791: #line 11930 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.db_type= (yyvsp[-1].db_type); } #line 32751 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1792: #line 11932 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_info.db_type= NULL; } #line 32757 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1793: #line 11934 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_FIELDS; if ((yyvsp[-1].simple_string)) (yyvsp[-2].table)->change_db((yyvsp[-1].simple_string)); if (prepare_schema_table(YYTHD, lex, (yyvsp[-2].table), SCH_COLUMNS)) MYSQL_YYABORT; } #line 32770 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1794: #line 11943 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_SHOW_BINLOGS; } #line 32778 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1795: #line 11947 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_SHOW_SLAVE_HOSTS; } #line 32786 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1796: #line 11951 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_BINLOG_EVENTS; } #line 32795 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1797: #line 11956 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].limit_clause) != NULL) CONTEXTUALIZE((yyvsp[0].limit_clause)); } #line 32804 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1798: #line 11961 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_RELAYLOG_EVENTS; } #line 32813 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1799: #line 11966 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-1].limit_clause) != NULL) CONTEXTUALIZE((yyvsp[-1].limit_clause)); } #line 32822 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1800: #line 11975 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].item) != NULL) ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); Select->set_where_cond((yyvsp[0].item)); LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_KEYS; if ((yyvsp[-1].simple_string)) (yyvsp[-2].table)->change_db((yyvsp[-1].simple_string)); if (prepare_schema_table(YYTHD, lex, (yyvsp[-2].table), SCH_STATISTICS)) MYSQL_YYABORT; } #line 32839 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1801: #line 11988 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_SHOW_STORAGE_ENGINES; if (prepare_schema_table(YYTHD, lex, 0, SCH_ENGINES)) MYSQL_YYABORT; } #line 32850 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1802: #line 11995 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_SHOW_PRIVILEGES; } #line 32859 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1803: #line 12000 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->keep_diagnostics= DA_KEEP_DIAGNOSTICS; // SHOW WARNINGS doesn't clear them. Parse_context pc(YYTHD, Select); create_select_for_variable(&pc, "warning_count"); } #line 32869 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1804: #line 12006 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->keep_diagnostics= DA_KEEP_DIAGNOSTICS; // SHOW ERRORS doesn't clear them. Parse_context pc(YYTHD, Select); create_select_for_variable(&pc, "error_count"); } #line 32879 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1805: #line 12012 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].limit_clause) != NULL) CONTEXTUALIZE((yyvsp[0].limit_clause)); Lex->sql_command = SQLCOM_SHOW_WARNS; Lex->keep_diagnostics= DA_KEEP_DIAGNOSTICS; // SHOW WARNINGS doesn't clear them. } #line 32891 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1806: #line 12020 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].limit_clause) != NULL) CONTEXTUALIZE((yyvsp[0].limit_clause)); Lex->sql_command = SQLCOM_SHOW_ERRORS; Lex->keep_diagnostics= DA_KEEP_DIAGNOSTICS; // SHOW ERRORS doesn't clear them. } #line 32903 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1807: #line 12028 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_warning_printf(YYTHD, Sql_condition::SL_WARNING, ER_WARN_DEPRECATED_SYNTAX, ER(ER_WARN_DEPRECATED_SYNTAX), "SHOW PROFILES", "Performance Schema"); Lex->sql_command = SQLCOM_SHOW_PROFILES; } #line 32915 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1808: #line 12036 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].limit_clause) != NULL) CONTEXTUALIZE((yyvsp[0].limit_clause)); LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_PROFILE; if (prepare_schema_table(YYTHD, lex, NULL, SCH_PROFILES) != 0) YYABORT; } #line 32929 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1809: #line 12046 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; if (show_compatibility_56) { /* 5.6, DEPRECATED */ lex->sql_command= SQLCOM_SHOW_STATUS; lex->option_type= (yyvsp[-2].var_type); if (prepare_schema_table(YYTHD, lex, 0, SCH_STATUS)) MYSQL_YYABORT; } else { Item *where_cond= Select->where_cond(); Select->set_where_cond(NULL); if ((yyvsp[-2].var_type) == OPT_SESSION) { /* 5.7, SUPPORTED */ if (build_show_session_status((yyloc), thd, lex->wild, where_cond) == NULL) MYSQL_YYABORT; } else { /* 5.7, SUPPORTED */ if (build_show_global_status((yyloc), thd, lex->wild, where_cond) == NULL) MYSQL_YYABORT; } } } #line 32964 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1810: #line 12077 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; PT_statement *stmt = NEW_PTN PT_show_processlist((yyloc), lex->verbose /* $1 */); MAKE_CMD(stmt); } #line 32975 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1811: #line 12084 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; if (show_compatibility_56) { /* 5.6, DEPRECATED */ lex->sql_command= SQLCOM_SHOW_VARIABLES; lex->option_type= (yyvsp[-2].var_type); if (prepare_schema_table(YYTHD, lex, 0, SCH_VARIABLES)) MYSQL_YYABORT; } else { Item *where_cond= Select->where_cond(); Select->set_where_cond(NULL); if ((yyvsp[-2].var_type) == OPT_SESSION) { /* 5.7, SUPPORTED */ if (build_show_session_variables((yyloc), thd, lex->wild, where_cond) == NULL) MYSQL_YYABORT; } else { /* 5.7, SUPPORTED */ if (build_show_global_variables((yyloc), thd, lex->wild, where_cond) == NULL) MYSQL_YYABORT; } } } #line 33010 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1812: #line 12115 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_CHARSETS; if (prepare_schema_table(YYTHD, lex, 0, SCH_CHARSETS)) MYSQL_YYABORT; } #line 33021 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1813: #line 12122 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_COLLATIONS; if (prepare_schema_table(YYTHD, lex, 0, SCH_COLLATIONS)) MYSQL_YYABORT; } #line 33032 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1814: #line 12129 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_SHOW_GRANTS; LEX_USER *curr_user; if (!(curr_user= (LEX_USER*) lex->thd->alloc(sizeof(st_lex_user)))) MYSQL_YYABORT; memset(curr_user, 0, sizeof(st_lex_user)); lex->grant_user= curr_user; } #line 33046 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1815: #line 12139 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_SHOW_GRANTS; lex->grant_user=(yyvsp[0].lex_user); lex->grant_user->auth= NULL_CSTR; } #line 33057 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1816: #line 12146 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command=SQLCOM_SHOW_CREATE_DB; Lex->create_info.options=(yyvsp[-1].num); Lex->name= (yyvsp[0].lex_str); } #line 33067 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1817: #line 12152 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command = SQLCOM_SHOW_CREATE; if (!lex->select_lex->add_table_to_list(YYTHD, (yyvsp[0].table), NULL,0)) MYSQL_YYABORT; lex->only_view= 0; lex->create_info.storage_media= HA_SM_DEFAULT; } #line 33080 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1818: #line 12161 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command = SQLCOM_SHOW_CREATE; if (!lex->select_lex->add_table_to_list(YYTHD, (yyvsp[0].table), NULL, 0)) MYSQL_YYABORT; lex->only_view= 1; } #line 33092 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1819: #line 12169 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_SHOW_MASTER_STAT; } #line 33100 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1820: #line 12173 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_SHOW_SLAVE_STAT; } #line 33108 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1821: #line 12177 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command = SQLCOM_SHOW_CREATE_PROC; lex->spname= (yyvsp[0].spname); } #line 33119 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1822: #line 12184 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command = SQLCOM_SHOW_CREATE_FUNC; lex->spname= (yyvsp[0].spname); } #line 33130 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1823: #line 12191 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_CREATE_TRIGGER; lex->spname= (yyvsp[0].spname); } #line 33140 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1824: #line 12197 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_STATUS_PROC; if (prepare_schema_table(YYTHD, lex, 0, SCH_PROCEDURES)) MYSQL_YYABORT; } #line 33151 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1825: #line 12204 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_SHOW_STATUS_FUNC; if (prepare_schema_table(YYTHD, lex, 0, SCH_PROCEDURES)) MYSQL_YYABORT; } #line 33162 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1826: #line 12211 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_SHOW_PROC_CODE; Lex->spname= (yyvsp[0].spname); } #line 33171 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1827: #line 12216 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_SHOW_FUNC_CODE; Lex->spname= (yyvsp[0].spname); } #line 33180 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1828: #line 12221 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->spname= (yyvsp[0].spname); Lex->sql_command = SQLCOM_SHOW_CREATE_EVENT; } #line 33189 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1829: #line 12226 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_SHOW_CREATE_USER; lex->grant_user=(yyvsp[0].lex_user); } #line 33199 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1830: #line 12235 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_SHOW_ENGINE_STATUS; } #line 33205 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1831: #line 12237 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_SHOW_ENGINE_MUTEX; } #line 33211 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1832: #line 12239 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_SHOW_ENGINE_LOGS; } #line 33217 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1837: #line 12253 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.simple_string)= 0; } #line 33223 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1838: #line 12254 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.simple_string)= (yyvsp[0].lex_str).str; } #line 33229 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1839: #line 12258 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->verbose=0; } #line 33235 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1840: #line 12259 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->verbose=1; } #line 33241 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1843: #line 12268 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.log_file_name = 0; } #line 33247 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1844: #line 12269 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.log_file_name = (yyvsp[0].lex_str).str; } #line 33253 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1845: #line 12273 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.pos = 4; /* skip magic number */ } #line 33259 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1846: #line 12274 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->mi.pos = (yyvsp[0].ulonglong_number); } #line 33265 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1848: #line 12280 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->wild= new (YYTHD->mem_root) String((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, system_charset_info); if (Lex->wild == NULL) MYSQL_YYABORT; } #line 33276 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1849: #line 12287 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); Select->set_where_cond((yyvsp[0].item)); if ((yyvsp[0].item)) (yyvsp[0].item)->top_level_item(); } #line 33288 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1851: #line 12299 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->wild= new (YYTHD->mem_root) String((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, system_charset_info); if (Lex->wild == NULL) MYSQL_YYABORT; } #line 33299 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1852: #line 12306 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (show_compatibility_56) { /* This parsed tree fragment is added as part of a SQLCOM_SHOW_STATUS or SQLCOM_SHOW_VARIABLES command. */ ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); Select->set_where_cond((yyvsp[0].item)); if ((yyvsp[0].item)) (yyvsp[0].item)->top_level_item(); } else { /* This parsed tree fragment is used to build a SQLCOM_SELECT statement, see sql/sql_show_status.cc */ Select->set_where_cond((yyvsp[0].item)); } } #line 33326 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1853: #line 12333 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->current_select()->parsing_place= CTX_SELECT_LIST; lex->sql_command= SQLCOM_SHOW_FIELDS; lex->select_lex->db= NULL; lex->verbose= 0; if (prepare_schema_table(YYTHD, lex, (yyvsp[0].table), SCH_COLUMNS)) MYSQL_YYABORT; } #line 33340 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1854: #line 12343 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { // Ensure we're resetting parsing context of the right select assert(Select->parsing_place == CTX_SELECT_LIST); Select->parsing_place= CTX_NONE; } #line 33350 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1855: #line 12349 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->describe|= DESCRIBE_NORMAL; } #line 33358 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1857: #line 12356 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { CONTEXTUALIZE((yyvsp[0].select)); } #line 33364 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1858: #line 12357 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MAKE_CMD((yyvsp[0].statement)); } #line 33370 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1859: #line 12358 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MAKE_CMD((yyvsp[0].statement)); } #line 33376 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1860: #line 12359 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MAKE_CMD((yyvsp[0].statement)); } #line 33382 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1861: #line 12360 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MAKE_CMD((yyvsp[0].statement)); } #line 33388 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1862: #line 12362 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_EXPLAIN_OTHER; if (Lex->sphead) { my_error(ER_NOT_SUPPORTED_YET, MYF(0), "non-standalone EXPLAIN FOR CONNECTION"); MYSQL_YYABORT; } Lex->query_id= (my_thread_id)((yyvsp[0].ulong_num)); } #line 33403 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1865: #line 12381 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((Lex->explain_format= new Explain_format_traditional) == NULL) MYSQL_YYABORT; } #line 33412 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1866: #line 12386 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((Lex->explain_format= new Explain_format_traditional) == NULL) MYSQL_YYABORT; push_deprecated_warn_no_replacement(YYTHD, "EXTENDED"); } #line 33422 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1867: #line 12392 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((Lex->explain_format= new Explain_format_traditional) == NULL) MYSQL_YYABORT; push_deprecated_warn_no_replacement(YYTHD, "PARTITIONS"); } #line 33432 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1868: #line 12398 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!my_strcasecmp(system_charset_info, (yyvsp[0].lex_str).str, "JSON")) { if ((Lex->explain_format= new Explain_format_JSON) == NULL) MYSQL_YYABORT; } else if (!my_strcasecmp(system_charset_info, (yyvsp[0].lex_str).str, "TRADITIONAL")) { if ((Lex->explain_format= new Explain_format_traditional) == NULL) MYSQL_YYABORT; } else { my_error(ER_UNKNOWN_EXPLAIN_FORMAT, MYF(0), (yyvsp[0].lex_str).str); MYSQL_YYABORT; } } #line 33454 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1869: #line 12418 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 33460 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1870: #line 12419 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->wild= (yyvsp[0].string); } #line 33466 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1871: #line 12421 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->wild= new (YYTHD->mem_root) String((const char*) (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, system_charset_info); if (Lex->wild == NULL) MYSQL_YYABORT; } #line 33478 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1872: #line 12435 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_FLUSH; lex->type= 0; lex->no_write_to_binlog= (yyvsp[0].num); } #line 33489 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1873: #line 12442 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 33495 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1874: #line 12447 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 33509 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1875: #line 12456 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 33515 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1876: #line 12457 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 33521 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1878: #line 12462 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 33527 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1879: #line 12464 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { TABLE_LIST *tables= Lex->query_tables; Lex->type|= REFRESH_READ_LOCK; for (; tables; tables= tables->next_global) { tables->mdl_request.set_type(MDL_SHARED_NO_WRITE); tables->required_type= FRMTYPE_TABLE; /* Don't try to flush views. */ tables->open_type= OT_BASE_ONLY; /* Ignore temporary tables. */ } } #line 33542 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1880: #line 12475 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->query_tables == NULL) // Table list can't be empty { my_syntax_error(ER(ER_NO_TABLES_USED)); MYSQL_YYABORT; } } #line 33554 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1881: #line 12483 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { TABLE_LIST *tables= Lex->query_tables; Lex->type|= REFRESH_FOR_EXPORT; for (; tables; tables= tables->next_global) { tables->mdl_request.set_type(MDL_SHARED_NO_WRITE); tables->required_type= FRMTYPE_TABLE; /* Don't try to flush views. */ tables->open_type= OT_BASE_ONLY; /* Ignore temporary tables. */ } } #line 33569 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1883: #line 12498 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 33575 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1884: #line 12503 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_ERROR_LOG; } #line 33581 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1885: #line 12505 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_ENGINE_LOG; } #line 33587 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1886: #line 12507 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_GENERAL_LOG; } #line 33593 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1887: #line 12509 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_SLOW_LOG; } #line 33599 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1888: #line 12511 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_BINARY_LOG; } #line 33605 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1889: #line 12513 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_RELAY_LOG; } #line 33611 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1890: #line 12515 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_deprecated_warn_no_replacement(YYTHD, "FLUSH QUERY CACHE"); Lex->type|= REFRESH_QUERY_CACHE_FREE; } #line 33620 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1891: #line 12520 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_HOSTS; } #line 33626 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1892: #line 12522 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_GRANT; } #line 33632 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1893: #line 12524 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_LOG; } #line 33638 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1894: #line 12526 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_STATUS; } #line 33644 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1895: #line 12528 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_DES_KEY_FILE; } #line 33650 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1896: #line 12530 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_USER_RESOURCES; } #line 33656 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1897: #line 12532 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_OPTIMIZER_COSTS; } #line 33662 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1898: #line 12536 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 33668 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1899: #line 12537 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 33674 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1900: #line 12542 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_RESET; lex->type=0; } #line 33683 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1901: #line 12547 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 33689 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1904: #line 12556 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_SLAVE; } #line 33695 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1906: #line 12558 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type|= REFRESH_MASTER; } #line 33701 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1907: #line 12560 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_deprecated_warn_no_replacement(YYTHD, "RESET QUERY CACHE"); Lex->type|= REFRESH_QUERY_CACHE; } #line 33710 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1908: #line 12567 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->reset_slave_info.all= false; } #line 33716 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1909: #line 12568 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->reset_slave_info.all= true; } #line 33722 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1910: #line 12573 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->type=0; lex->sql_command = SQLCOM_PURGE; } #line 33732 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1911: #line 12579 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 33738 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1913: #line 12588 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->to_log = (yyvsp[0].lex_str).str; } #line 33746 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1914: #line 12592 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); LEX *lex= Lex; lex->purge_value_list.empty(); lex->purge_value_list.push_front((yyvsp[0].item)); lex->sql_command= SQLCOM_PURGE_BEFORE; } #line 33759 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1915: #line 12606 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); LEX *lex=Lex; lex->kill_value_list.empty(); lex->kill_value_list.push_front((yyvsp[0].item)); lex->sql_command= SQLCOM_KILL; } #line 33772 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1916: #line 12617 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type= 0; } #line 33778 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1917: #line 12618 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type= 0; } #line 33784 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1918: #line 12619 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->type= ONLY_KILL_QUERY; } #line 33790 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1919: #line 12626 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command=SQLCOM_CHANGE_DB; lex->select_lex->db= (yyvsp[0].lex_str).str; } #line 33800 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1920: #line 12637 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; if (lex->sphead) { my_error(ER_SP_BADSTATEMENT, MYF(0), (yyvsp[0].filetype) == FILETYPE_CSV ? "LOAD DATA" : "LOAD XML"); MYSQL_YYABORT; } } #line 33816 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1921: #line 12649 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_LOAD; lex->local_file= (yyvsp[-2].num); lex->duplicates= DUP_ERROR; lex->set_ignore(false); if (!(lex->exchange= new sql_exchange((yyvsp[0].lex_str).str, 0, (yyvsp[-5].filetype)))) MYSQL_YYABORT; } #line 33830 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1922: #line 12659 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; /* Fix lock for LOAD DATA CONCURRENT REPLACE */ if (lex->duplicates == DUP_REPLACE && (yyvsp[-9].lock_type) == TL_WRITE_CONCURRENT_INSERT) (yyvsp[-9].lock_type)= TL_WRITE_DEFAULT; if (!Select->add_table_to_list(YYTHD, (yyvsp[-1].table), NULL, TL_OPTION_UPDATING, (yyvsp[-9].lock_type), (yyvsp[-9].lock_type) == TL_WRITE_LOW_PRIORITY ? MDL_SHARED_WRITE_LOW_PRIO : MDL_SHARED_WRITE, NULL, (yyvsp[0].string_list))) MYSQL_YYABORT; lex->load_field_list.empty(); lex->load_update_list.empty(); lex->load_value_list.empty(); /* We can't give an error in the middle when using LOCAL files */ if (lex->local_file && lex->duplicates == DUP_ERROR) lex->set_ignore(true); } #line 33852 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1923: #line 12677 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->exchange->cs= (yyvsp[0].charset); } #line 33858 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1924: #line 12681 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->exchange->field.merge_field_separators((yyvsp[-4].field_separators)); Lex->exchange->line.merge_line_separators((yyvsp[-3].line_separators)); } #line 33867 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1925: #line 12688 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.filetype)= FILETYPE_CSV; } #line 33873 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1926: #line 12689 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.filetype)= FILETYPE_XML; } #line 33879 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1927: #line 12693 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=0;} #line 33885 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1928: #line 12694 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=1;} #line 33891 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1929: #line 12698 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lock_type)= TL_WRITE_DEFAULT; } #line 33897 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1930: #line 12699 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lock_type)= TL_WRITE_CONCURRENT_INSERT; } #line 33903 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1931: #line 12700 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lock_type)= TL_WRITE_LOW_PRIORITY; } #line 33909 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1932: #line 12704 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->duplicates=DUP_ERROR; } #line 33915 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1933: #line 12705 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->duplicates=DUP_REPLACE; } #line 33921 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1934: #line 12706 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->set_ignore(true); } #line 33927 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1935: #line 12710 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.field_separators).cleanup(); } #line 33933 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1936: #line 12711 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.field_separators)= (yyvsp[0].field_separators); } #line 33939 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1937: #line 12716 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.field_separators)= (yyvsp[-1].field_separators); (yyval.field_separators).merge_field_separators((yyvsp[0].field_separators)); } #line 33948 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1939: #line 12725 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.field_separators).cleanup(); (yyval.field_separators).field_term= (yyvsp[0].string); } #line 33957 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1940: #line 12730 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.field_separators).cleanup(); (yyval.field_separators).enclosed= (yyvsp[0].string); (yyval.field_separators).opt_enclosed= 1; } #line 33967 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1941: #line 12736 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.field_separators).cleanup(); (yyval.field_separators).enclosed= (yyvsp[0].string); } #line 33976 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1942: #line 12741 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.field_separators).cleanup(); (yyval.field_separators).escaped= (yyvsp[0].string); } #line 33985 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1943: #line 12748 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.line_separators).cleanup(); } #line 33991 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1944: #line 12749 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.line_separators)= (yyvsp[0].line_separators); } #line 33997 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1945: #line 12754 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.line_separators)= (yyvsp[-1].line_separators); (yyval.line_separators).merge_line_separators((yyvsp[0].line_separators)); } #line 34006 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1947: #line 12763 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.line_separators).cleanup(); (yyval.line_separators).line_term= (yyvsp[0].string); } #line 34015 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1948: #line 12768 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.line_separators).cleanup(); (yyval.line_separators).line_start= (yyvsp[0].string); } #line 34024 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1949: #line 12775 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { } #line 34030 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1950: #line 12777 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->exchange->line.line_term = (yyvsp[0].string); } #line 34036 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1952: #line 12782 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { assert(Lex->exchange != 0); Lex->exchange->skip_lines= atol((yyvsp[-1].lex_str).str); } #line 34045 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1953: #line 12789 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { } #line 34051 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1954: #line 12791 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { } #line 34057 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1955: #line 12795 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34063 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1956: #line 12796 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34069 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1957: #line 12797 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34075 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1958: #line 12802 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->load_field_list.push_back((yyvsp[0].item)); } #line 34081 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1959: #line 12804 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->load_field_list.push_back((yyvsp[0].item)); } #line 34087 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1960: #line 12808 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyval.item)); } #line 34093 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1961: #line 12810 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= new (YYTHD->mem_root) Item_user_var_as_out_param((yyvsp[0].lex_str)); if ((yyval.item) == NULL) MYSQL_YYABORT; } #line 34103 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1962: #line 12818 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34109 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1963: #line 12819 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34115 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1966: #line 12829 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[-2].item), &(yyvsp[-2].item)); ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); LEX *lex= Lex; uint length= (uint) ((yylsp[0]).cpp.end - (yylsp[-1]).cpp.start); String *val= new (YYTHD->mem_root) String((yylsp[-1]).cpp.start, length, YYTHD->charset()); if (val == NULL) MYSQL_YYABORT; if (lex->load_update_list.push_back((yyvsp[-2].item)) || lex->load_value_list.push_back((yyvsp[0].item)) || lex->load_set_str_list.push_back(val)) MYSQL_YYABORT; (yyvsp[0].item)->item_name.copy((yylsp[-1]).cpp.start, length, YYTHD->charset()); } #line 34137 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1967: #line 12852 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.text_literal)= NEW_PTN PTI_text_literal_text_string((yyloc), YYTHD->m_parser_state->m_lip.text_string_is_7bit(), (yyvsp[0].lex_str)); } #line 34146 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1968: #line 12857 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.text_literal)= NEW_PTN PTI_text_literal_nchar_string((yyloc), YYTHD->m_parser_state->m_lip.text_string_is_7bit(), (yyvsp[0].lex_str)); } #line 34155 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1969: #line 12862 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.text_literal)= NEW_PTN PTI_text_literal_underscore_charset((yyloc), YYTHD->m_parser_state->m_lip.text_string_is_7bit(), (yyvsp[-1].charset), (yyvsp[0].lex_str)); } #line 34164 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1970: #line 12867 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.text_literal)= NEW_PTN PTI_text_literal_concat((yyloc), YYTHD->m_parser_state->m_lip.text_string_is_7bit(), (yyvsp[-1].text_literal), (yyvsp[0].lex_str)); } #line 34173 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1971: #line 12875 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.string)= new (YYTHD->mem_root) String((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, YYTHD->variables.collation_connection); if ((yyval.string) == NULL) MYSQL_YYABORT; } #line 34185 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1972: #line 12883 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX_STRING s= Item_hex_string::make_hex_str((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length); (yyval.string)= new (YYTHD->mem_root) String(s.str, s.length, &my_charset_bin); if ((yyval.string) == NULL) MYSQL_YYABORT; } #line 34196 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1973: #line 12890 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX_STRING s= Item_bin_string::make_bin_str((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length); (yyval.string)= new (YYTHD->mem_root) String(s.str, s.length, &my_charset_bin); if ((yyval.string) == NULL) MYSQL_YYABORT; } #line 34207 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1974: #line 12900 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.param_marker)= NEW_PTN Item_param((yyloc), (uint) ((yylsp[0]).raw.start - YYLIP->get_buf())); Lex->param_list.push_back((yyval.param_marker)); } #line 34217 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1975: #line 12908 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyval.item)); } #line 34223 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1976: #line 12909 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyval.item)); } #line 34229 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1977: #line 12911 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { ITEMIZE((yyvsp[0].item), &(yyvsp[0].item)); (yyvsp[0].item)->max_length++; (yyval.item)= ((Item_int *)(yyvsp[0].item))->neg(); } #line 34240 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1978: #line 12921 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= (yyvsp[0].text_literal); } #line 34246 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1981: #line 12925 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex_input_stream *lip= YYLIP; /* For the digest computation, in this context only, NULL is considered a literal, hence reduced to '?' REDUCE: TOK_GENERIC_VALUE := NULL_SYM */ lip->reduce_digest_token(TOK_GENERIC_VALUE, NULL_SYM); (yyval.item)= NEW_PTN Item_null((yyloc)); lip->next_state= MY_LEX_OPERATOR_OR_IDENT; } #line 34263 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1982: #line 12938 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_int((yyloc), NAME_STRING("FALSE"), 0, 1); } #line 34271 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1983: #line 12942 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_int((yyloc), NAME_STRING("TRUE"), 1, 1); } #line 34279 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1984: #line 12946 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_hex_string((yyloc), (yyvsp[0].lex_str)); } #line 34287 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1985: #line 12950 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_bin_string((yyloc), (yyvsp[0].lex_str)); } #line 34295 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1986: #line 12954 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_literal_underscore_charset_hex_num((yyloc), (yyvsp[-1].charset), (yyvsp[0].lex_str)); } #line 34303 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1987: #line 12958 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_literal_underscore_charset_bin_num((yyloc), (yyvsp[-1].charset), (yyvsp[0].lex_str)); } #line 34311 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1988: #line 12965 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_num_literal_num((yyloc), (yyvsp[0].lex_str)); } #line 34319 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1989: #line 12969 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_num_literal_num((yyloc), (yyvsp[0].lex_str)); } #line 34327 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1990: #line 12973 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_uint((yyloc), (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length); } #line 34335 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1991: #line 12977 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_decimal((yyloc), (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, YYCSCL); } #line 34343 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1992: #line 12981 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_float((yyloc), (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length); } #line 34351 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1993: #line 12989 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_temporal_literal((yyloc), (yyvsp[0].lex_str), MYSQL_TYPE_DATE, YYCSCL); } #line 34359 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1994: #line 12993 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_temporal_literal((yyloc), (yyvsp[0].lex_str), MYSQL_TYPE_TIME, YYCSCL); } #line 34367 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1995: #line 12997 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_temporal_literal((yyloc), (yyvsp[0].lex_str), MYSQL_TYPE_DATETIME, YYCSCL); } #line 34375 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1998: #line 13016 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_asterisk((yyloc), NULL, (yyvsp[-2].lex_str).str); } #line 34383 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 1999: #line 13020 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { const char *schema_name = YYCLIENT_NO_SCHEMA ? NULL : (yyvsp[-4].lex_str).str; (yyval.item)= NEW_PTN Item_asterisk((yyloc), schema_name, (yyvsp[-2].lex_str).str); } #line 34392 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2000: #line 13028 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.order_expr)= NEW_PTN PT_order_expr((yyvsp[-1].item), (yyvsp[0].num)); } #line 34400 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2001: #line 13035 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.order_expr)= NEW_PTN PT_order_expr((yyvsp[0].item), 1); } #line 34408 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2002: #line 13039 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_deprecated_warn(YYTHD, "GROUP BY with ASC/DESC", "GROUP BY ... ORDER BY ... ASC/DESC"); (yyval.order_expr)= NEW_PTN PT_order_expr((yyvsp[-1].item), (yyvsp[0].num)); } #line 34418 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2003: #line 13048 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_simple_ident_ident((yyloc), (yyvsp[0].lex_str)); } #line 34426 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2005: #line 13056 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_simple_ident_nospvar_ident((yyloc), (yyvsp[0].lex_str)); } #line 34434 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2007: #line 13064 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_simple_ident_q_2d((yyloc), (yyvsp[-2].lex_str).str, (yyvsp[0].lex_str).str); } #line 34442 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2008: #line 13068 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_deprecated_warn(YYTHD, ".<table>.<column>", "the table.column name without a dot prefix"); (yyval.item)= NEW_PTN PTI_simple_ident_q_3d((yyloc), NULL, (yyvsp[-2].lex_str).str, (yyvsp[0].lex_str).str); } #line 34452 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2009: #line 13074 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN PTI_simple_ident_q_3d((yyloc), (yyvsp[-4].lex_str).str, (yyvsp[-2].lex_str).str, (yyvsp[0].lex_str).str); } #line 34460 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2010: #line 13080 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=(yyvsp[0].lex_str);} #line 34466 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2011: #line 13082 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { TABLE_LIST *table= Select->table_list.first; if (my_strcasecmp(table_alias_charset, (yyvsp[-4].lex_str).str, table->db)) { my_error(ER_WRONG_DB_NAME, MYF(0), (yyvsp[-4].lex_str).str); MYSQL_YYABORT; } if (my_strcasecmp(table_alias_charset, (yyvsp[-2].lex_str).str, table->table_name)) { my_error(ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[-2].lex_str).str); MYSQL_YYABORT; } (yyval.lex_str)=(yyvsp[0].lex_str); } #line 34486 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2012: #line 13098 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { TABLE_LIST *table= Select->table_list.first; if (my_strcasecmp(table_alias_charset, (yyvsp[-2].lex_str).str, table->alias)) { my_error(ER_WRONG_TABLE_NAME, MYF(0), (yyvsp[-2].lex_str).str); MYSQL_YYABORT; } (yyval.lex_str)=(yyvsp[0].lex_str); } #line 34500 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2013: #line 13108 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_deprecated_warn(YYTHD, ".<column>", "the column name without a dot prefix"); (yyval.lex_str)=(yyvsp[0].lex_str); } #line 34509 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2014: #line 13116 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table)= NEW_PTN Table_ident(to_lex_cstring((yyvsp[0].lex_str))); if ((yyval.table) == NULL) MYSQL_YYABORT; } #line 34519 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2015: #line 13122 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX_CSTRING schema_name= YYCLIENT_NO_SCHEMA ? LEX_CSTRING() : to_lex_cstring((yyvsp[-2].lex_str)); (yyval.table)= NEW_PTN Table_ident(schema_name, to_lex_cstring((yyvsp[0].lex_str))); if ((yyval.table) == NULL) MYSQL_YYABORT; } #line 34531 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2016: #line 13130 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* For Delphi */ push_deprecated_warn(YYTHD, ".<table>", "the table name without a dot prefix"); (yyval.table)= NEW_PTN Table_ident(to_lex_cstring((yyvsp[0].lex_str))); if ((yyval.table) == NULL) MYSQL_YYABORT; } #line 34543 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2017: #line 13141 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_ident)= NEW_PTN Table_ident(to_lex_cstring((yyvsp[-1].lex_str))); if ((yyval.table_ident) == NULL) MYSQL_YYABORT; } #line 34553 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2018: #line 13147 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.table_ident)= NEW_PTN Table_ident(YYTHD, to_lex_cstring((yyvsp[-3].lex_str)), to_lex_cstring((yyvsp[-1].lex_str)), 0); if ((yyval.table_ident) == NULL) MYSQL_YYABORT; } #line 34564 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2019: #line 13157 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX_CSTRING db= { any_db, strlen(any_db) }; (yyval.table)= new Table_ident(YYTHD, db, to_lex_cstring((yyvsp[0].lex_str)), 0); if ((yyval.table) == NULL) MYSQL_YYABORT; } #line 34575 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2020: #line 13166 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)= (yyvsp[0].lex_str); } #line 34581 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2021: #line 13168 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; if (thd->charset_is_system_charset) { const CHARSET_INFO *cs= system_charset_info; int dummy_error; size_t wlen= cs->cset->well_formed_len(cs, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).str+(yyvsp[0].lex_str).length, (yyvsp[0].lex_str).length, &dummy_error); if (wlen < (yyvsp[0].lex_str).length) { ErrConvString err((yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, &my_charset_bin); my_error(ER_INVALID_CHARACTER_STRING, MYF(0), cs->csname, err.ptr()); MYSQL_YYABORT; } (yyval.lex_str)= (yyvsp[0].lex_str); } else { if (thd->convert_string(&(yyval.lex_str), system_charset_info, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, thd->charset())) MYSQL_YYABORT; } } #line 34612 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2022: #line 13198 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!strcont((yyvsp[0].lex_str).str, "\n")) (yyval.lex_str)= (yyvsp[0].lex_str); else { my_error(ER_WRONG_VALUE, MYF(0), "argument contains not-allowed LF", (yyvsp[0].lex_str).str); MYSQL_YYABORT; } } #line 34626 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2023: #line 13211 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (strcont((yyvsp[0].lex_str).str, ".")) (yyval.lex_str)= (yyvsp[0].lex_str); else { my_error(ER_INVALID_RPL_WILD_TABLE_FILTER_PATTERN, MYF(0)); MYSQL_YYABORT; } } #line 34640 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2024: #line 13224 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; if (thd->charset_is_system_charset) (yyval.lex_str)= (yyvsp[0].lex_str); else { if (thd->convert_string(&(yyval.lex_str), system_charset_info, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, thd->charset())) MYSQL_YYABORT; } } #line 34657 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2025: #line 13240 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; if (thd->charset_is_collation_connection) (yyval.lex_str)= (yyvsp[0].lex_str); else { if (thd->convert_string(&(yyval.lex_str), thd->variables.collation_connection, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, thd->charset())) MYSQL_YYABORT; } } #line 34674 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2026: #line 13256 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; if (thd->charset_is_character_set_filesystem) (yyval.lex_str)= (yyvsp[0].lex_str); else { if (thd->convert_string(&(yyval.lex_str), thd->variables.character_set_filesystem, (yyvsp[0].lex_str).str, (yyvsp[0].lex_str).length, thd->charset())) MYSQL_YYABORT; } } #line 34692 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2027: #line 13272 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=(yyvsp[0].lex_str); } #line 34698 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2028: #line 13274 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; (yyval.lex_str).str= thd->strmake((yyvsp[0].symbol).str, (yyvsp[0].symbol).length); if ((yyval.lex_str).str == NULL) MYSQL_YYABORT; (yyval.lex_str).length= (yyvsp[0].symbol).length; } #line 34710 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2029: #line 13284 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=(yyvsp[0].lex_str); } #line 34716 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2030: #line 13286 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; (yyval.lex_str).str= thd->strmake((yyvsp[0].symbol).str, (yyvsp[0].symbol).length); if ((yyval.lex_str).str == NULL) MYSQL_YYABORT; (yyval.lex_str).length= (yyvsp[0].symbol).length; } #line 34728 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2031: #line 13296 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=(yyvsp[0].lex_str);} #line 34734 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2032: #line 13297 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=(yyvsp[0].lex_str);} #line 34740 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2033: #line 13298 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_str)=(yyvsp[0].lex_str);} #line 34746 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2034: #line 13303 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; if (!((yyval.lex_user)=(LEX_USER*) thd->alloc(sizeof(st_lex_user)))) MYSQL_YYABORT; /* Trim whitespace as the values will go to a CHAR field when stored. */ trim_whitespace(system_charset_info, &(yyvsp[0].lex_str)); (yyval.lex_user)->user.str= (yyvsp[0].lex_str).str; (yyval.lex_user)->user.length= (yyvsp[0].lex_str).length; (yyval.lex_user)->host.str= "%"; (yyval.lex_user)->host.length= 1; (yyval.lex_user)->plugin= EMPTY_CSTR; (yyval.lex_user)->auth= NULL_CSTR; (yyval.lex_user)->uses_identified_by_clause= false; (yyval.lex_user)->uses_identified_with_clause= false; (yyval.lex_user)->uses_identified_by_password_clause= false; (yyval.lex_user)->uses_authentication_string_clause= false; if (check_string_char_length((yyval.lex_user)->user, ER(ER_USERNAME), USERNAME_CHAR_LENGTH, system_charset_info, 0)) MYSQL_YYABORT; } #line 34778 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2035: #line 13331 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; if (!((yyval.lex_user)=(LEX_USER*) thd->alloc(sizeof(st_lex_user)))) MYSQL_YYABORT; /* Trim whitespace as the values will go to a CHAR field when stored. */ trim_whitespace(system_charset_info, &(yyvsp[-2].lex_str)); trim_whitespace(system_charset_info, &(yyvsp[0].lex_str)); (yyval.lex_user)->user.str= (yyvsp[-2].lex_str).str; (yyval.lex_user)->user.length= (yyvsp[-2].lex_str).length; (yyval.lex_user)->host.str= (yyvsp[0].lex_str).str; (yyval.lex_user)->host.length= (yyvsp[0].lex_str).length; (yyval.lex_user)->plugin= EMPTY_CSTR; (yyval.lex_user)->auth= NULL_CSTR; (yyval.lex_user)->uses_identified_by_clause= false; (yyval.lex_user)->uses_identified_with_clause= false; (yyval.lex_user)->uses_identified_by_password_clause= false; (yyval.lex_user)->uses_authentication_string_clause= false; if (check_string_char_length((yyval.lex_user)->user, ER(ER_USERNAME), USERNAME_CHAR_LENGTH, system_charset_info, 0) || check_host_name((yyval.lex_user)->host)) MYSQL_YYABORT; /* 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, (yyvsp[0].lex_str).str); (yyval.lex_user)->host.str= (yyvsp[0].lex_str).str; } #line 34819 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2036: #line 13368 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!((yyval.lex_user)=(LEX_USER*) YYTHD->alloc(sizeof(st_lex_user)))) MYSQL_YYABORT; /* empty LEX_USER means current_user and will be handled in the get_current_user() function later */ memset((yyval.lex_user), 0, sizeof(LEX_USER)); } #line 34834 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2037: #line 13382 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34840 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2038: #line 13383 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34846 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2039: #line 13384 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34852 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2040: #line 13385 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34858 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2041: #line 13386 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34864 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2042: #line 13387 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34870 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2043: #line 13388 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34876 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2044: #line 13389 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34882 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2045: #line 13390 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34888 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2046: #line 13391 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34894 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2047: #line 13392 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34900 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2048: #line 13393 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34906 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2049: #line 13394 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34912 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2050: #line 13395 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34918 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2051: #line 13396 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34924 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2052: #line 13397 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34930 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2053: #line 13398 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34936 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2054: #line 13399 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34942 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2055: #line 13400 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34948 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2056: #line 13401 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34954 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2057: #line 13402 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34960 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2058: #line 13403 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34966 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2059: #line 13404 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34972 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2060: #line 13405 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34978 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2061: #line 13406 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34984 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2062: #line 13407 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34990 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2063: #line 13408 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 34996 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2064: #line 13409 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35002 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2065: #line 13410 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35008 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2066: #line 13411 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35014 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2067: #line 13412 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35020 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2068: #line 13413 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35026 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2069: #line 13414 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35032 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2070: #line 13415 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35038 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2071: #line 13416 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35044 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2072: #line 13417 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35050 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2073: #line 13418 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35056 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2074: #line 13419 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35062 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2075: #line 13420 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35068 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2076: #line 13421 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35074 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2077: #line 13422 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35080 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2078: #line 13423 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35086 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2079: #line 13424 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35092 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2080: #line 13425 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35098 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2081: #line 13426 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35104 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2082: #line 13427 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35110 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2083: #line 13428 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35116 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2084: #line 13429 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35122 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2085: #line 13430 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35128 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2086: #line 13431 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35134 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2087: #line 13432 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35140 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2088: #line 13433 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35146 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2089: #line 13434 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35152 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2090: #line 13435 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35158 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2091: #line 13436 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35164 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2092: #line 13437 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35170 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2093: #line 13438 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35176 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2094: #line 13448 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35182 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2095: #line 13449 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35188 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2096: #line 13450 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35194 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2097: #line 13451 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35200 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2098: #line 13452 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35206 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2099: #line 13453 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35212 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2100: #line 13454 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35218 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2101: #line 13455 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35224 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2102: #line 13456 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35230 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2103: #line 13457 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35236 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2104: #line 13458 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35242 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2105: #line 13459 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35248 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2106: #line 13460 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35254 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2107: #line 13461 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35260 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2108: #line 13462 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35266 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2109: #line 13463 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35272 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2110: #line 13464 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35278 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2111: #line 13465 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35284 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2112: #line 13466 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35290 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2113: #line 13467 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35296 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2114: #line 13468 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35302 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2115: #line 13469 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35308 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2116: #line 13470 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35314 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2117: #line 13471 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35320 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2118: #line 13472 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35326 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2119: #line 13473 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35332 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2120: #line 13474 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35338 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2121: #line 13475 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35344 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2122: #line 13476 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35350 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2123: #line 13477 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35356 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2124: #line 13478 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35362 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2125: #line 13479 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35368 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2126: #line 13480 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35374 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2127: #line 13481 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35380 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2128: #line 13482 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35386 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2129: #line 13483 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35392 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2130: #line 13484 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35398 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2131: #line 13485 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35404 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2132: #line 13486 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35410 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2133: #line 13487 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35416 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2134: #line 13488 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35422 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2135: #line 13489 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35428 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2136: #line 13490 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35434 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2137: #line 13491 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35440 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2138: #line 13492 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35446 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2139: #line 13493 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35452 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2140: #line 13494 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35458 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2141: #line 13495 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35464 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2142: #line 13500 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35470 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2143: #line 13501 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35476 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2144: #line 13502 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35482 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2145: #line 13503 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35488 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2146: #line 13504 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35494 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2147: #line 13505 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35500 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2148: #line 13506 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35506 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2149: #line 13507 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35512 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2150: #line 13508 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35518 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2151: #line 13509 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35524 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2152: #line 13510 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35530 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2153: #line 13511 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35536 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2154: #line 13512 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35542 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2155: #line 13513 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35548 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2156: #line 13514 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35554 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2157: #line 13515 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35560 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2158: #line 13516 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35566 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2159: #line 13517 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35572 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2160: #line 13518 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35578 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2161: #line 13519 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35584 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2162: #line 13520 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35590 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2163: #line 13521 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35596 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2164: #line 13522 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35602 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2165: #line 13523 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35608 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2166: #line 13524 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35614 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2167: #line 13525 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35620 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2168: #line 13526 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35626 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2169: #line 13527 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35632 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2170: #line 13528 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35638 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2171: #line 13529 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35644 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2172: #line 13530 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35650 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2173: #line 13531 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35656 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2174: #line 13532 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35662 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2175: #line 13533 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35668 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2176: #line 13534 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35674 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2177: #line 13535 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35680 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2178: #line 13536 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35686 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2179: #line 13537 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35692 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2180: #line 13538 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35698 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2181: #line 13539 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35704 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2182: #line 13540 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35710 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2183: #line 13541 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35716 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2184: #line 13542 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35722 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2185: #line 13543 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35728 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2186: #line 13544 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35734 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2187: #line 13545 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35740 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2188: #line 13546 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35746 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2189: #line 13547 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35752 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2190: #line 13548 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35758 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2191: #line 13549 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35764 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2192: #line 13550 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35770 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2193: #line 13551 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35776 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2194: #line 13552 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35782 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2195: #line 13553 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35788 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2196: #line 13554 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35794 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2197: #line 13555 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35800 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2198: #line 13556 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35806 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2199: #line 13557 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35812 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2200: #line 13558 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35818 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2201: #line 13559 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35824 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2202: #line 13560 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35830 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2203: #line 13561 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35836 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2204: #line 13562 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35842 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2205: #line 13563 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35848 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2206: #line 13564 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35854 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2207: #line 13565 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35860 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2208: #line 13566 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35866 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2209: #line 13567 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35872 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2210: #line 13568 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35878 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2211: #line 13569 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35884 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2212: #line 13570 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35890 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2213: #line 13571 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35896 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2214: #line 13572 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35902 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2215: #line 13573 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35908 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2216: #line 13574 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35914 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2217: #line 13575 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35920 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2218: #line 13576 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35926 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2219: #line 13577 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35932 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2220: #line 13578 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35938 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2221: #line 13579 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35944 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2222: #line 13580 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35950 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2223: #line 13581 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35956 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2224: #line 13582 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35962 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2225: #line 13583 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35968 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2226: #line 13584 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35974 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2227: #line 13585 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35980 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2228: #line 13586 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35986 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2229: #line 13587 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35992 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2230: #line 13588 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 35998 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2231: #line 13589 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36004 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2232: #line 13590 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36010 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2233: #line 13591 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36016 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2234: #line 13592 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36022 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2235: #line 13593 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36028 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2236: #line 13594 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36034 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2237: #line 13595 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36040 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2238: #line 13596 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36046 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2239: #line 13597 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36052 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2240: #line 13598 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36058 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2241: #line 13599 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36064 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2242: #line 13600 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36070 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2243: #line 13601 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36076 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2244: #line 13602 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36082 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2245: #line 13603 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36088 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2246: #line 13604 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36094 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2247: #line 13605 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36100 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2248: #line 13606 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36106 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2249: #line 13607 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36112 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2250: #line 13608 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36118 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2251: #line 13609 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36124 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2252: #line 13610 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36130 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2253: #line 13611 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36136 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2254: #line 13612 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36142 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2255: #line 13613 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36148 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2256: #line 13614 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36154 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2257: #line 13615 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36160 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2258: #line 13616 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36166 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2259: #line 13617 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36172 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2260: #line 13618 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36178 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2261: #line 13619 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36184 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2262: #line 13620 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36190 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2263: #line 13621 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36196 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2264: #line 13622 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36202 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2265: #line 13623 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36208 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2266: #line 13624 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36214 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2267: #line 13625 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36220 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2268: #line 13626 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36226 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2269: #line 13627 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36232 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2270: #line 13628 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36238 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2271: #line 13629 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36244 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2272: #line 13630 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36250 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2273: #line 13631 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36256 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2274: #line 13632 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36262 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2275: #line 13633 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36268 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2276: #line 13634 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36274 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2277: #line 13635 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36280 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2278: #line 13636 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36286 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2279: #line 13637 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36292 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2280: #line 13638 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36298 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2281: #line 13639 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36304 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2282: #line 13640 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36310 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2283: #line 13641 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36316 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2284: #line 13642 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36322 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2285: #line 13643 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36328 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2286: #line 13644 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36334 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2287: #line 13645 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36340 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2288: #line 13646 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36346 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2289: #line 13647 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36352 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2290: #line 13648 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36358 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2291: #line 13649 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36364 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2292: #line 13650 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36370 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2293: #line 13651 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36376 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2294: #line 13652 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36382 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2295: #line 13653 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36388 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2296: #line 13654 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36394 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2297: #line 13655 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36400 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2298: #line 13656 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36406 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2299: #line 13657 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36412 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2300: #line 13658 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36418 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2301: #line 13659 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36424 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2302: #line 13660 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36430 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2303: #line 13661 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36436 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2304: #line 13662 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36442 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2305: #line 13663 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36448 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2306: #line 13664 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36454 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2307: #line 13665 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36460 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2308: #line 13666 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36466 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2309: #line 13667 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36472 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2310: #line 13668 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36478 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2311: #line 13669 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36484 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2312: #line 13670 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36490 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2313: #line 13671 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36496 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2314: #line 13672 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36502 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2315: #line 13673 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36508 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2316: #line 13674 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36514 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2317: #line 13675 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36520 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2318: #line 13676 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36526 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2319: #line 13677 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36532 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2320: #line 13678 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36538 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2321: #line 13679 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36544 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2322: #line 13680 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36550 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2323: #line 13681 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36556 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2324: #line 13682 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36562 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2325: #line 13683 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36568 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2326: #line 13684 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36574 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2327: #line 13685 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36580 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2328: #line 13686 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36586 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2329: #line 13687 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36592 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2330: #line 13688 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36598 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2331: #line 13689 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36604 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2332: #line 13690 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36610 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2333: #line 13691 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36616 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2334: #line 13692 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36622 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2335: #line 13693 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36628 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2336: #line 13694 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36634 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2337: #line 13695 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36640 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2338: #line 13696 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36646 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2339: #line 13697 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36652 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2340: #line 13698 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36658 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2341: #line 13699 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36664 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2342: #line 13700 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36670 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2343: #line 13701 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36676 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2344: #line 13702 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36682 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2345: #line 13703 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36688 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2346: #line 13704 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36694 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2347: #line 13705 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36700 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2348: #line 13706 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36706 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2349: #line 13707 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36712 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2350: #line 13708 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36718 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2351: #line 13709 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36724 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2352: #line 13710 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36730 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2353: #line 13711 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36736 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2354: #line 13712 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36742 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2355: #line 13713 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36748 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2356: #line 13714 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36754 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2357: #line 13715 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36760 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2358: #line 13716 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36766 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2359: #line 13717 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36772 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2360: #line 13718 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36778 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2361: #line 13719 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36784 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2362: #line 13720 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36790 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2363: #line 13721 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36796 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2364: #line 13722 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36802 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2365: #line 13723 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36808 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2366: #line 13724 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36814 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2367: #line 13725 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36820 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2368: #line 13726 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36826 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2369: #line 13727 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36832 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2370: #line 13728 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36838 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2371: #line 13729 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36844 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2372: #line 13730 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36850 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2373: #line 13731 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36856 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2374: #line 13732 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36862 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2375: #line 13733 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36868 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2376: #line 13734 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36874 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2377: #line 13735 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36880 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2378: #line 13736 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36886 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2379: #line 13737 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36892 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2380: #line 13738 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36898 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2381: #line 13739 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36904 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2382: #line 13740 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36910 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2383: #line 13741 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36916 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2384: #line 13742 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36922 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2385: #line 13743 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36928 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2386: #line 13744 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36934 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2387: #line 13745 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36940 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2388: #line 13746 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36946 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2389: #line 13747 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36952 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2390: #line 13748 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36958 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2391: #line 13749 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36964 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2392: #line 13750 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36970 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2393: #line 13751 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36976 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2394: #line 13752 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36982 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2395: #line 13753 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36988 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2396: #line 13754 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 36994 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2397: #line 13755 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37000 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2398: #line 13756 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37006 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2399: #line 13757 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37012 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2400: #line 13758 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37018 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2401: #line 13759 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37024 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2402: #line 13760 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37030 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2403: #line 13761 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37036 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2404: #line 13762 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37042 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2405: #line 13763 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37048 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2406: #line 13764 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37054 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2407: #line 13765 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37060 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2408: #line 13766 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37066 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2409: #line 13767 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37072 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2410: #line 13768 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37078 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2411: #line 13769 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37084 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2412: #line 13770 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37090 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2413: #line 13771 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37096 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2414: #line 13783 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.set)= NEW_PTN PT_set((yylsp[-1]), (yyvsp[0].start_option_value_list)); } #line 37104 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2415: #line 13792 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.start_option_value_list)= NEW_PTN PT_start_option_value_list_no_type((yyvsp[-1].option_value_no_option_type), (yylsp[-1]), (yyvsp[0].option_value_list)); } #line 37112 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2416: #line 13796 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.start_option_value_list)= NEW_PTN PT_start_option_value_list_transaction((yyvsp[0].transaction_characteristics), (yylsp[0])); } #line 37120 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2417: #line 13800 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.start_option_value_list)= NEW_PTN PT_start_option_value_list_type((yyvsp[-1].var_type), (yyvsp[0].start_option_value_list_following_option_type)); } #line 37128 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2418: #line 13804 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.start_option_value_list)= NEW_PTN PT_option_value_no_option_type_password((yyvsp[0].simple_string), (yylsp[0])); } #line 37136 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2419: #line 13808 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_deprecated_warn(YYTHD, "SET PASSWORD = " "PASSWORD('<plaintext_password>')", "SET PASSWORD = '<plaintext_password>'"); (yyval.start_option_value_list)= NEW_PTN PT_option_value_no_option_type_password((yyvsp[-1].simple_string), (yylsp[-1])); } #line 37147 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2420: #line 13815 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.start_option_value_list)= NEW_PTN PT_option_value_no_option_type_password_for((yyvsp[-2].lex_user), (yyvsp[0].simple_string), (yylsp[0])); } #line 37155 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2421: #line 13819 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { push_deprecated_warn(YYTHD, "SET PASSWORD FOR <user> = " "PASSWORD('<plaintext_password>')", "SET PASSWORD FOR <user> = " "'<plaintext_password>'"); (yyval.start_option_value_list)= NEW_PTN PT_option_value_no_option_type_password_for((yyvsp[-5].lex_user), (yyvsp[-1].simple_string), (yylsp[-1])); } #line 37167 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2422: #line 13832 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.start_option_value_list_following_option_type)= NEW_PTN PT_start_option_value_list_following_option_type_eq((yyvsp[-1].option_value_following_option_type), (yylsp[-1]), (yyvsp[0].option_value_list)); } #line 37178 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2423: #line 13839 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.start_option_value_list_following_option_type)= NEW_PTN PT_start_option_value_list_following_option_type_transaction((yyvsp[0].transaction_characteristics), (yylsp[0])); } #line 37188 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2424: #line 13848 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.option_value_list)= NULL; } #line 37194 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2425: #line 13849 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.option_value_list)= (yyvsp[0].option_value_list); } #line 37200 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2426: #line 13855 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.option_value_list)= NEW_PTN PT_option_value_list_head((yylsp[-1]), (yyvsp[0].node), (yylsp[0])); } #line 37208 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2427: #line 13859 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.option_value_list)= NEW_PTN PT_option_value_list((yyvsp[-2].option_value_list), (yylsp[-1]), (yyvsp[0].node), (yylsp[0])); } #line 37216 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2428: #line 13867 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_option_value_type((yyvsp[-1].var_type), (yyvsp[0].option_value_following_option_type)); } #line 37224 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2429: #line 13870 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= (yyvsp[0].option_value_no_option_type); } #line 37230 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2430: #line 13874 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.var_type)=OPT_GLOBAL; } #line 37236 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2431: #line 13875 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.var_type)=OPT_SESSION; } #line 37242 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2432: #line 13876 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.var_type)=OPT_SESSION; } #line 37248 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2433: #line 13880 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.var_type)=OPT_SESSION; } #line 37254 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2434: #line 13881 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.var_type)=OPT_GLOBAL; } #line 37260 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2435: #line 13882 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.var_type)=OPT_SESSION; } #line 37266 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2436: #line 13883 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.var_type)=OPT_SESSION; } #line 37272 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2437: #line 13887 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.var_type)=OPT_DEFAULT; } #line 37278 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2438: #line 13888 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.var_type)=OPT_GLOBAL; } #line 37284 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2439: #line 13889 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.var_type)=OPT_SESSION; } #line 37290 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2440: #line 13890 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.var_type)=OPT_SESSION; } #line 37296 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2441: #line 13896 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.option_value_following_option_type)= NEW_PTN PT_option_value_following_option_type((yyloc), (yyvsp[-2].internal_variable_name), (yyvsp[0].item)); } #line 37304 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2442: #line 13906 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.option_value_no_option_type)= NEW_PTN PT_option_value_no_option_type_internal((yyvsp[-2].internal_variable_name), (yyvsp[0].item), (yylsp[0])); } #line 37312 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2443: #line 13910 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.option_value_no_option_type)= NEW_PTN PT_option_value_no_option_type_user_var((yyvsp[-2].lex_str), (yyvsp[0].item)); } #line 37320 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2444: #line 13914 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.option_value_no_option_type)= NEW_PTN PT_option_value_no_option_type_sys_var((yyvsp[-3].var_type), (yyvsp[-2].internal_variable_name), (yyvsp[0].item)); } #line 37328 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2445: #line 13918 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.option_value_no_option_type)= NEW_PTN PT_option_value_no_option_type_charset((yyvsp[0].charset)); } #line 37336 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2446: #line 13922 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* Bad syntax, always fails with an error */ (yyval.option_value_no_option_type)= NEW_PTN PT_option_value_no_option_type_names((yylsp[-1])); } #line 37347 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2447: #line 13929 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.option_value_no_option_type)= NEW_PTN PT_option_value_no_option_type_names_charset((yyvsp[-1].charset), (yyvsp[0].charset)); } #line 37355 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2448: #line 13936 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.internal_variable_name)= NEW_PTN PT_internal_variable_name_1d((yyvsp[0].lex_str)); } #line 37363 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2449: #line 13940 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.internal_variable_name)= NEW_PTN PT_internal_variable_name_2d((yyloc), (yyvsp[-2].lex_str), (yyvsp[0].lex_str)); } #line 37371 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2450: #line 13944 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.internal_variable_name)= NEW_PTN PT_internal_variable_name_default((yyvsp[0].lex_str)); } #line 37379 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2451: #line 13951 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.transaction_characteristics)= NEW_PTN PT_transaction_characteristics((yyvsp[-1].transaction_access_mode), (yyvsp[0].isolation_level)); } #line 37387 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2452: #line 13955 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.transaction_characteristics)= NEW_PTN PT_transaction_characteristics((yyvsp[-1].isolation_level), (yyvsp[0].transaction_access_mode)); } #line 37395 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2453: #line 13962 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.transaction_access_mode)= NEW_PTN PT_transaction_access_mode((yyvsp[0].num)); } #line 37403 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2454: #line 13968 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.transaction_access_mode)= NULL; } #line 37409 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2455: #line 13969 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.transaction_access_mode)= (yyvsp[0].transaction_access_mode); } #line 37415 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2456: #line 13974 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.isolation_level)= NEW_PTN PT_isolation_level((yyvsp[0].tx_isolation)); } #line 37423 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2457: #line 13980 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.isolation_level)= NULL; } #line 37429 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2458: #line 13981 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.isolation_level)= (yyvsp[0].isolation_level); } #line 37435 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2459: #line 13985 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= true; } #line 37441 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2460: #line 13986 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= false; } #line 37447 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2461: #line 13990 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.tx_isolation)= ISO_READ_UNCOMMITTED; } #line 37453 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2462: #line 13991 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.tx_isolation)= ISO_READ_COMMITTED; } #line 37459 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2463: #line 13992 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.tx_isolation)= ISO_REPEATABLE_READ; } #line 37465 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2464: #line 13993 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.tx_isolation)= ISO_SERIALIZABLE; } #line 37471 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2465: #line 13998 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.simple_string)=(yyvsp[0].lex_str).str; Lex->contains_plaintext_password= true; } #line 37480 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2467: #line 14007 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NULL; } #line 37486 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2468: #line 14009 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_string((yyloc), "ON", 2, system_charset_info); } #line 37494 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2469: #line 14013 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_string((yyloc), "ALL", 3, system_charset_info); } #line 37502 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2470: #line 14017 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.item)= NEW_PTN Item_string((yyloc), "binary", 6, system_charset_info); } #line 37510 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2471: #line 14026 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->sphead) { my_error(ER_SP_BADSTATEMENT, MYF(0), "LOCK"); MYSQL_YYABORT; } lex->sql_command= SQLCOM_LOCK_TABLES; } #line 37525 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2472: #line 14037 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37531 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2477: #line 14052 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { thr_lock_type lock_type= (thr_lock_type) (yyvsp[0].num); enum_mdl_type mdl_lock_type; if (lock_type >= TL_WRITE_ALLOW_WRITE) { /* LOCK TABLE ... WRITE/LOW_PRIORITY WRITE */ mdl_lock_type= MDL_SHARED_NO_READ_WRITE; } else if (lock_type == TL_READ) { /* LOCK TABLE ... READ LOCAL */ mdl_lock_type= MDL_SHARED_READ; } else { /* LOCK TABLE ... READ */ mdl_lock_type= MDL_SHARED_READ_ONLY; } if (!Select->add_table_to_list(YYTHD, (yyvsp[-2].table), (yyvsp[-1].lex_str_ptr), 0, lock_type, mdl_lock_type)) MYSQL_YYABORT; } #line 37560 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2478: #line 14079 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= TL_READ_NO_INSERT; } #line 37566 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2479: #line 14080 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= TL_WRITE_DEFAULT; } #line 37572 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2480: #line 14082 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= TL_WRITE_LOW_PRIORITY; push_deprecated_warn(YYTHD, "LOW_PRIORITY WRITE", "WRITE"); } #line 37581 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2481: #line 14086 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)= TL_READ; } #line 37587 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2482: #line 14091 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->sphead) { my_error(ER_SP_BADSTATEMENT, MYF(0), "UNLOCK"); MYSQL_YYABORT; } lex->sql_command= SQLCOM_UNLOCK_TABLES; } #line 37602 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2483: #line 14102 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37608 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2484: #line 14108 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_SHUTDOWN; (yyval.statement)= NEW_PTN PT_shutdown(); } #line 37617 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2485: #line 14116 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_ALTER_INSTANCE; (yyval.statement)= NEW_PTN PT_alter_instance((yyvsp[0].alter_instance_action)); } #line 37626 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2486: #line 14123 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (!my_strcasecmp(system_charset_info, (yyvsp[-2].lex_str).str, "INNODB")) { (yyval.alter_instance_action)= ROTATE_INNODB_MASTER_KEY; } else { YYTHD->parse_error_at((yylsp[-2]), ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } } #line 37642 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2487: #line 14142 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; if (lex->sphead) { my_error(ER_SP_BADSTATEMENT, MYF(0), "HANDLER"); MYSQL_YYABORT; } 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; lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_handler_open(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 37662 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2488: #line 14158 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; if (lex->sphead) { my_error(ER_SP_BADSTATEMENT, MYF(0), "HANDLER"); MYSQL_YYABORT; } lex->sql_command = SQLCOM_HA_CLOSE; if (!lex->current_select()->add_table_to_list(thd, (yyvsp[-1].table), 0, 0)) MYSQL_YYABORT; lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_handler_close(); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 37682 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2489: #line 14176 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* #4 */ LEX *lex=Lex; if (lex->sphead) { my_error(ER_SP_BADSTATEMENT, MYF(0), "HANDLER"); MYSQL_YYABORT; } lex->expr_allows_subselect= FALSE; lex->sql_command = SQLCOM_HA_READ; Item *one= new (YYTHD->mem_root) Item_int((int32) 1); if (one == NULL) MYSQL_YYABORT; lex->current_select()->select_limit= one; lex->current_select()->offset_limit= 0; if (!lex->current_select()->add_table_to_list(lex->thd, (yyvsp[-1].table), 0, 0)) MYSQL_YYABORT; } #line 37704 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2490: #line 14196 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[-1].item) != NULL) ITEMIZE((yyvsp[-1].item), &(yyvsp[-1].item)); Select->set_where_cond((yyvsp[-1].item)); if ((yyvsp[0].limit_clause) != NULL) CONTEXTUALIZE((yyvsp[0].limit_clause)); THD *thd= YYTHD; LEX *lex= Lex; Lex->expr_allows_subselect= TRUE; /* 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; } lex->m_sql_cmd= new (thd->mem_root) Sql_cmd_handler_read((yyvsp[-2].ha_read_mode), lex->ident.str, lex->handler_insert_list, thd->m_parser_state->m_yacc.m_ha_rkey_mode); if (lex->m_sql_cmd == NULL) MYSQL_YYABORT; } #line 37733 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2491: #line 14223 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->ident= null_lex_str; (yyval.ha_read_mode)=(yyvsp[0].ha_read_mode); } #line 37739 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2492: #line 14224 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->ident= (yyvsp[-1].lex_str); (yyval.ha_read_mode)=(yyvsp[0].ha_read_mode); } #line 37745 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2493: #line 14228 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ha_read_mode)= RFIRST; } #line 37751 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2494: #line 14229 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ha_read_mode)= RNEXT; } #line 37757 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2495: #line 14233 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ha_read_mode)= RFIRST; } #line 37763 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2496: #line 14234 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ha_read_mode)= RNEXT; } #line 37769 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2497: #line 14235 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ha_read_mode)= RPREV; } #line 37775 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2498: #line 14236 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ha_read_mode)= RLAST; } #line 37781 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2499: #line 14238 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { YYTHD->m_parser_state->m_yacc.m_ha_rkey_mode= (yyvsp[0].ha_rkey_mode); } #line 37789 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2500: #line 14242 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { CONTEXTUALIZE((yyvsp[-1].item_list2)); Lex->handler_insert_list= &(yyvsp[-1].item_list2)->value; (yyval.ha_read_mode)= RKEY; } #line 37799 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2501: #line 14250 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ha_rkey_mode)=HA_READ_KEY_EXACT; } #line 37805 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2502: #line 14251 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_NEXT; } #line 37811 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2503: #line 14252 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ha_rkey_mode)=HA_READ_KEY_OR_PREV; } #line 37817 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2504: #line 14253 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ha_rkey_mode)=HA_READ_AFTER_KEY; } #line 37823 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2505: #line 14254 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ha_rkey_mode)=HA_READ_BEFORE_KEY; } #line 37829 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2506: #line 14260 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_REVOKE; } #line 37835 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2507: #line 14261 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37841 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2508: #line 14266 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->type= 0; } #line 37850 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2509: #line 14271 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->columns.elements) { my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } lex->type= TYPE_ENUM_FUNCTION; } #line 37864 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2510: #line 14281 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->columns.elements) { my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } lex->type= TYPE_ENUM_PROCEDURE; } #line 37878 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2511: #line 14291 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_REVOKE_ALL; } #line 37886 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2512: #line 14295 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->users_list.push_front ((yyvsp[-2].lex_user)); lex->type= TYPE_ENUM_PROXY; } #line 37896 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2513: #line 14303 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command= SQLCOM_GRANT; } #line 37902 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2514: #line 14304 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37908 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2515: #line 14310 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->type= 0; } #line 37917 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2516: #line 14316 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->columns.elements) { my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } lex->type= TYPE_ENUM_FUNCTION; } #line 37931 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2517: #line 14327 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->columns.elements) { my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } lex->type= TYPE_ENUM_PROCEDURE; } #line 37945 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2518: #line 14337 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->users_list.push_front ((yyvsp[-3].lex_user)); lex->type= TYPE_ENUM_PROXY; } #line 37955 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2521: #line 14351 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; if (lex->grant == GLOBAL_ACLS && lex->sql_command == SQLCOM_REVOKE) lex->sql_command= SQLCOM_REVOKE_ALL; } #line 37966 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2522: #line 14358 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->all_privileges= 1; Lex->grant= GLOBAL_ACLS; } #line 37975 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2527: #line 14376 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->which_columns = SELECT_ACL;} #line 37981 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2528: #line 14377 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37987 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2529: #line 14379 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->which_columns = INSERT_ACL;} #line 37993 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2530: #line 14380 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 37999 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2531: #line 14382 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->which_columns = UPDATE_ACL; } #line 38005 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2532: #line 14383 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38011 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2533: #line 14385 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->which_columns = REFERENCES_ACL;} #line 38017 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2534: #line 14386 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38023 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2535: #line 14387 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= DELETE_ACL;} #line 38029 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2536: #line 14388 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38035 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2537: #line 14389 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= INDEX_ACL;} #line 38041 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2538: #line 14390 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= ALTER_ACL;} #line 38047 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2539: #line 14391 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= CREATE_ACL;} #line 38053 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2540: #line 14392 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= DROP_ACL;} #line 38059 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2541: #line 14393 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= EXECUTE_ACL;} #line 38065 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2542: #line 14394 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= RELOAD_ACL;} #line 38071 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2543: #line 14395 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= SHUTDOWN_ACL;} #line 38077 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2544: #line 14396 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= PROCESS_ACL;} #line 38083 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2545: #line 14397 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= FILE_ACL;} #line 38089 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2546: #line 14398 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= GRANT_ACL;} #line 38095 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2547: #line 14399 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= SHOW_DB_ACL;} #line 38101 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2548: #line 14400 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= SUPER_ACL;} #line 38107 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2549: #line 14401 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= CREATE_TMP_ACL;} #line 38113 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2550: #line 14402 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= LOCK_TABLES_ACL; } #line 38119 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2551: #line 14403 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= REPL_SLAVE_ACL; } #line 38125 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2552: #line 14404 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= REPL_CLIENT_ACL; } #line 38131 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2553: #line 14405 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= CREATE_VIEW_ACL; } #line 38137 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2554: #line 14406 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= SHOW_VIEW_ACL; } #line 38143 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2555: #line 14407 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= CREATE_PROC_ACL; } #line 38149 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2556: #line 14408 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= ALTER_PROC_ACL; } #line 38155 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2557: #line 14409 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= CREATE_USER_ACL; } #line 38161 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2558: #line 14410 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= EVENT_ACL;} #line 38167 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2559: #line 14411 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= TRIGGER_ACL; } #line 38173 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2560: #line 14412 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= CREATE_TABLESPACE_ACL; } #line 38179 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2561: #line 14416 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38185 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2562: #line 14417 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38191 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2565: #line 14427 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; if (lex->x509_subject) { my_error(ER_DUP_ARGUMENT, MYF(0), "SUBJECT"); MYSQL_YYABORT; } lex->x509_subject=(yyvsp[0].lex_str).str; } #line 38205 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2566: #line 14437 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; if (lex->x509_issuer) { my_error(ER_DUP_ARGUMENT, MYF(0), "ISSUER"); MYSQL_YYABORT; } lex->x509_issuer=(yyvsp[0].lex_str).str; } #line 38219 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2567: #line 14447 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; if (lex->ssl_cipher) { my_error(ER_DUP_ARGUMENT, MYF(0), "CIPHER"); MYSQL_YYABORT; } lex->ssl_cipher=(yyvsp[0].lex_str).str; } #line 38233 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2568: #line 14460 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; size_t dummy; if (lex->copy_db_to(&lex->current_select()->db, &dummy)) MYSQL_YYABORT; if (lex->grant == GLOBAL_ACLS) lex->grant = DB_OP_ACLS; else if (lex->columns.elements) { my_message(ER_ILLEGAL_GRANT_FOR_TABLE, ER(ER_ILLEGAL_GRANT_FOR_TABLE), MYF(0)); MYSQL_YYABORT; } } #line 38252 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2569: #line 14475 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->current_select()->db = (yyvsp[-2].lex_str).str; if (lex->grant == GLOBAL_ACLS) lex->grant = DB_OP_ACLS; else if (lex->columns.elements) { my_message(ER_ILLEGAL_GRANT_FOR_TABLE, ER(ER_ILLEGAL_GRANT_FOR_TABLE), MYF(0)); MYSQL_YYABORT; } } #line 38269 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2570: #line 14488 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->current_select()->db = NULL; if (lex->grant == GLOBAL_ACLS) lex->grant= GLOBAL_ACLS & ~GRANT_ACL; else if (lex->columns.elements) { my_message(ER_ILLEGAL_GRANT_FOR_TABLE, ER(ER_ILLEGAL_GRANT_FOR_TABLE), MYF(0)); MYSQL_YYABORT; } } #line 38286 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2571: #line 14501 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; if (!lex->current_select()->add_table_to_list(lex->thd, (yyvsp[0].table),NULL, TL_OPTION_UPDATING)) MYSQL_YYABORT; if (lex->grant == GLOBAL_ACLS) lex->grant = TABLE_OP_ACLS; } #line 38299 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2572: #line 14513 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->users_list.push_back((yyvsp[0].lex_user))) MYSQL_YYABORT; } #line 38308 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2573: #line 14518 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->users_list.push_back((yyvsp[0].lex_user))) MYSQL_YYABORT; } #line 38317 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2574: #line 14526 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->users_list.push_back((yyvsp[0].lex_user))) MYSQL_YYABORT; } #line 38326 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2575: #line 14531 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->users_list.push_back((yyvsp[0].lex_user))) MYSQL_YYABORT; } #line 38335 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2576: #line 14539 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_user)=(yyvsp[-3].lex_user); (yyvsp[-3].lex_user)->auth.str= (yyvsp[0].lex_str).str; (yyvsp[-3].lex_user)->auth.length= (yyvsp[0].lex_str).length; (yyvsp[-3].lex_user)->uses_identified_by_clause= true; Lex->contains_plaintext_password= true; } #line 38347 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2577: #line 14547 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_user)= (yyvsp[-4].lex_user); (yyvsp[-4].lex_user)->auth.str= (yyvsp[0].lex_str).str; (yyvsp[-4].lex_user)->auth.length= (yyvsp[0].lex_str).length; (yyvsp[-4].lex_user)->uses_identified_by_password_clause= true; if (Lex->sql_command == SQLCOM_ALTER_USER) { my_syntax_error(ER_THD(YYTHD, ER_SYNTAX_ERROR)); MYSQL_YYABORT; } else push_deprecated_warn(YYTHD, "IDENTIFIED BY PASSWORD", "IDENTIFIED WITH <plugin> AS <hash>"); } #line 38366 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2578: #line 14562 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_user)= (yyvsp[-3].lex_user); (yyvsp[-3].lex_user)->plugin.str= (yyvsp[0].lex_str).str; (yyvsp[-3].lex_user)->plugin.length= (yyvsp[0].lex_str).length; (yyvsp[-3].lex_user)->auth= EMPTY_CSTR; (yyvsp[-3].lex_user)->uses_identified_with_clause= true; } #line 38378 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2579: #line 14570 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_user)= (yyvsp[-5].lex_user); (yyvsp[-5].lex_user)->plugin.str= (yyvsp[-2].lex_str).str; (yyvsp[-5].lex_user)->plugin.length= (yyvsp[-2].lex_str).length; (yyvsp[-5].lex_user)->auth.str= (yyvsp[0].lex_str).str; (yyvsp[-5].lex_user)->auth.length= (yyvsp[0].lex_str).length; (yyvsp[-5].lex_user)->uses_identified_with_clause= true; (yyvsp[-5].lex_user)->uses_authentication_string_clause= true; } #line 38392 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2580: #line 14580 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_user)= (yyvsp[-5].lex_user); (yyvsp[-5].lex_user)->plugin.str= (yyvsp[-2].lex_str).str; (yyvsp[-5].lex_user)->plugin.length= (yyvsp[-2].lex_str).length; (yyvsp[-5].lex_user)->auth.str= (yyvsp[0].lex_str).str; (yyvsp[-5].lex_user)->auth.length= (yyvsp[0].lex_str).length; (yyvsp[-5].lex_user)->uses_identified_with_clause= true; (yyvsp[-5].lex_user)->uses_identified_by_clause= true; Lex->contains_plaintext_password= true; } #line 38407 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2581: #line 14591 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.lex_user)= (yyvsp[0].lex_user); (yyvsp[0].lex_user)->auth= NULL_CSTR; } #line 38416 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2582: #line 14599 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->grant |= lex->which_columns; } #line 38425 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2586: #line 14613 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { String *new_str = new (YYTHD->mem_root) String((const char*) (yyvsp[0].lex_str).str,(yyvsp[0].lex_str).length,system_charset_info); if (new_str == NULL) MYSQL_YYABORT; List_iterator <LEX_COLUMN> iter(Lex->columns); class LEX_COLUMN *point; LEX *lex=Lex; while ((point=iter++)) { if (!my_strcasecmp(system_charset_info, point->column.ptr(), new_str->ptr())) break; } lex->grant_tot_col|= lex->which_columns; if (point) point->rights |= lex->which_columns; else { LEX_COLUMN *col= new LEX_COLUMN (*new_str,lex->which_columns); if (col == NULL) MYSQL_YYABORT; lex->columns.push_back(col); } } #line 38454 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2588: #line 14642 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->ssl_type=SSL_TYPE_SPECIFIED; } #line 38462 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2589: #line 14646 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->ssl_type=SSL_TYPE_ANY; } #line 38470 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2590: #line 14650 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->ssl_type=SSL_TYPE_X509; } #line 38478 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2591: #line 14654 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->ssl_type=SSL_TYPE_NONE; } #line 38486 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2592: #line 14660 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38492 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2594: #line 14665 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38498 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2595: #line 14666 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= GRANT_ACL;} #line 38504 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2596: #line 14670 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38510 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2597: #line 14671 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38516 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2598: #line 14675 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->grant |= GRANT_ACL;} #line 38522 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2599: #line 14677 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->mqh.questions=(yyvsp[0].ulong_num); lex->mqh.specified_limits|= USER_RESOURCES::QUERIES_PER_HOUR; } #line 38532 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2600: #line 14683 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->mqh.updates=(yyvsp[0].ulong_num); lex->mqh.specified_limits|= USER_RESOURCES::UPDATES_PER_HOUR; } #line 38542 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2601: #line 14689 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->mqh.conn_per_hour= (yyvsp[0].ulong_num); lex->mqh.specified_limits|= USER_RESOURCES::CONNECTIONS_PER_HOUR; } #line 38552 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2602: #line 14695 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->mqh.user_conn= (yyvsp[0].ulong_num); lex->mqh.specified_limits|= USER_RESOURCES::USER_CONNECTIONS; } #line 38562 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2603: #line 14704 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command = SQLCOM_BEGIN; lex->start_transaction_opt= 0; } #line 38572 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2604: #line 14709 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38578 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2605: #line 14713 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38584 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2606: #line 14714 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38590 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2607: #line 14719 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.m_yes_no_unk)= TVL_UNKNOWN; } #line 38596 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2608: #line 14720 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.m_yes_no_unk)= TVL_NO; } #line 38602 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2609: #line 14721 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.m_yes_no_unk)= TVL_YES; } #line 38608 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2610: #line 14726 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.m_yes_no_unk)= TVL_UNKNOWN; } #line 38614 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2611: #line 14727 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.m_yes_no_unk)= TVL_YES; } #line 38620 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2612: #line 14728 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.m_yes_no_unk)= TVL_NO; } #line 38626 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2613: #line 14732 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38632 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2614: #line 14733 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38638 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2615: #line 14738 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 38651 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2616: #line 14750 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { 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 38664 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2617: #line 14760 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_ROLLBACK_TO_SAVEPOINT; lex->ident= (yyvsp[0].lex_str); } #line 38674 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2618: #line 14769 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_SAVEPOINT; lex->ident= (yyvsp[0].lex_str); } #line 38684 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2619: #line 14778 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex=Lex; lex->sql_command= SQLCOM_RELEASE_SAVEPOINT; lex->ident= (yyvsp[0].lex_str); } #line 38694 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2620: #line 14791 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.union_list)= NULL; } #line 38700 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2622: #line 14797 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.union_list)= NEW_PTN PT_union_list((yyvsp[-1].num), (yyvsp[0].select_init)); } #line 38708 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2623: #line 14803 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NULL; } #line 38714 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2624: #line 14804 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= (yyvsp[0].union_list); } #line 38720 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2625: #line 14805 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= (yyvsp[0].union_order_or_limit); } #line 38726 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2626: #line 14809 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NULL; } #line 38732 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2627: #line 14810 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= (yyvsp[0].union_order_or_limit); } #line 38738 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2628: #line 14815 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.union_order_or_limit)= NEW_PTN PT_union_order_or_limit((yyvsp[0].node)); } #line 38746 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2629: #line 14822 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= NEW_PTN PT_order_or_limit_order((yyvsp[-1].order), (yyvsp[0].limit_clause)); } #line 38754 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2630: #line 14825 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.node)= (yyvsp[0].limit_clause); } #line 38760 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2631: #line 14829 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=1; } #line 38766 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2632: #line 14830 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=1; } #line 38772 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2633: #line 14831 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.num)=0; } #line 38778 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2634: #line 14836 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_lex2)= NEW_PTN PT_query_specification_select((yyvsp[-2].optimizer_hints), (yyvsp[-1].select_part2_derived), (yyvsp[0].table_expression)); } #line 38786 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2635: #line 14841 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_lex2)= NEW_PTN PT_query_specification_parenthesis((yyvsp[-2].select_paren_derived), (yyvsp[0].node)); } #line 38794 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2637: #line 14849 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.select_lex2)= NEW_PTN PT_query_expression_body_union((yyloc), (yyvsp[-3].select_lex2), (yyvsp[-1].num), (yyvsp[0].select_lex2)); } #line 38802 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2638: #line 14856 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* TODO: remove this semantic action (currently this removal adds reduce/reduce conflict) */ } #line 38813 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2639: #line 14863 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.subselect)= NEW_PTN PT_subselect((yyloc), (yyvsp[0].select_lex2)); } #line 38821 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2640: #line 14869 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulonglong_number)= 0; } #line 38827 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2642: #line 14875 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulonglong_number)= (yyvsp[-1].ulonglong_number) | (yyvsp[0].ulonglong_number); } #line 38835 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2644: #line 14882 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulonglong_number)= SELECT_STRAIGHT_JOIN; } #line 38841 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2645: #line 14883 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulonglong_number)= SELECT_HIGH_PRIORITY; } #line 38847 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2646: #line 14884 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulonglong_number)= SELECT_DISTINCT; } #line 38853 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2647: #line 14885 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulonglong_number)= SELECT_SMALL_RESULT; } #line 38859 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2648: #line 14886 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulonglong_number)= SELECT_BIG_RESULT; } #line 38865 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2649: #line 14887 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulonglong_number)= OPTION_BUFFER_RESULT; } #line 38871 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2650: #line 14888 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulonglong_number)= OPTION_FOUND_ROWS; } #line 38877 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2651: #line 14889 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.ulonglong_number)= SELECT_ALL; } #line 38883 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2652: #line 14900 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38889 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2653: #line 14902 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38895 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2654: #line 14904 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38901 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2668: #line 14937 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* 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). */ YYTHD->lex->definer= 0; } #line 38916 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2669: #line 14951 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { YYTHD->lex->definer= get_current_user(YYTHD, (yyvsp[0].lex_user)); } #line 38924 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2670: #line 14964 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38930 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2671: #line 14966 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38936 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2672: #line 14968 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 38942 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2673: #line 14973 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_mode= VIEW_CREATE_OR_REPLACE; } #line 38948 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2674: #line 14978 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_algorithm= VIEW_ALGORITHM_UNDEFINED; } #line 38954 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2675: #line 14980 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_algorithm= VIEW_ALGORITHM_MERGE; } #line 38960 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2676: #line 14982 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_algorithm= VIEW_ALGORITHM_TEMPTABLE; } #line 38966 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2677: #line 14987 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_suid= VIEW_SUID_DEFAULT; } #line 38972 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2678: #line 14989 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_suid= VIEW_SUID_DEFINER; } #line 38978 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2679: #line 14991 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_suid= VIEW_SUID_INVOKER; } #line 38984 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2680: #line 14996 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; lex->sql_command= SQLCOM_CREATE_VIEW; /* first table in list is target VIEW name */ if (!lex->select_lex->add_table_to_list(thd, (yyvsp[0].table), NULL, TL_OPTION_UPDATING, TL_IGNORE, MDL_EXCLUSIVE)) MYSQL_YYABORT; lex->query_tables->open_strategy= TABLE_LIST::OPEN_STUB; } #line 39001 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2682: #line 15013 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 39007 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2684: #line 15019 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->view_list.push_back((LEX_STRING*) sql_memdup(&(yyvsp[0].lex_str), sizeof(LEX_STRING))); } #line 39016 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2685: #line 15024 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->view_list.push_back((LEX_STRING*) sql_memdup(&(yyvsp[0].lex_str), sizeof(LEX_STRING))); } #line 39025 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2686: #line 15031 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->parsing_options.allows_variable= FALSE; lex->parsing_options.allows_select_into= FALSE; lex->parsing_options.allows_select_procedure= FALSE; } #line 39036 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2687: #line 15038 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= Lex; lex->create_view_select.str= const_cast<char *>((yylsp[-1]).cpp.start); size_t len= (yylsp[0]).cpp.end - lex->create_view_select.str; void *create_view_select= thd->memdup(lex->create_view_select.str, len); lex->create_view_select.length= len; lex->create_view_select.str= (char *) create_view_select; trim_whitespace(thd->charset(), &lex->create_view_select); lex->parsing_options.allows_variable= TRUE; lex->parsing_options.allows_select_into= TRUE; lex->parsing_options.allows_select_procedure= TRUE; } #line 39055 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2688: #line 15056 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (Lex->current_select()->set_braces(0)) { my_syntax_error(ER(ER_SYNTAX_ERROR)); MYSQL_YYABORT; } /* For statment as "CREATE VIEW v1 AS SELECT1 UNION SELECT2", parsing of Select query (SELECT1) is completed and UNION_CLAUSE is not yet parsed. So check for Lex->current_select()->master_unit()->first_select()->braces (as its done in "PT_select_init2::contextualize()) is not done here. */ } #line 39075 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2689: #line 15072 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].union_list) != NULL) CONTEXTUALIZE((yyvsp[0].union_list)); } #line 39084 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2690: #line 15077 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if ((yyvsp[0].node) != NULL) CONTEXTUALIZE((yyvsp[0].node)); } #line 39093 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2691: #line 15084 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->current_select()->set_braces(true); } #line 39101 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2692: #line 15088 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { if (setup_select_in_parentheses(Select)) MYSQL_YYABORT; } #line 39110 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2694: #line 15097 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->current_select()->table_list.save_and_clear(&Lex->save_list); } #line 39118 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2695: #line 15101 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { CONTEXTUALIZE((yyvsp[0].select_part2)); Lex->current_select()->table_list.push_front(&Lex->save_list); } #line 39128 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2696: #line 15110 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_check= VIEW_CHECK_NONE; } #line 39134 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2697: #line 15112 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_check= VIEW_CHECK_CASCADED; } #line 39140 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2698: #line 15114 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_check= VIEW_CHECK_CASCADED; } #line 39146 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2699: #line 15116 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->create_view_check= VIEW_CHECK_LOCAL; } #line 39152 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2700: #line 15127 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.trigger_action_order_type)= TRG_ORDER_FOLLOWS; } #line 39158 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2701: #line 15129 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.trigger_action_order_type)= TRG_ORDER_PRECEDES; } #line 39164 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2702: #line 15134 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.trg_characteristics).ordering_clause= TRG_ORDER_NONE; (yyval.trg_characteristics).anchor_trigger_name.str= NULL; (yyval.trg_characteristics).anchor_trigger_name.length= 0; } #line 39174 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2703: #line 15141 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.trg_characteristics).ordering_clause= (yyvsp[-1].trigger_action_order_type); (yyval.trg_characteristics).anchor_trigger_name= (yyvsp[0].lex_str); } #line 39183 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2704: #line 15158 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* $11 */ THD *thd= YYTHD; LEX *lex= thd->lex; if (lex->sphead) { my_error(ER_SP_NO_RECURSIVE_CREATE, MYF(0), "TRIGGER"); MYSQL_YYABORT; } lex->raw_trg_on_table_name_begin= (yylsp[-5]).raw.start; lex->raw_trg_on_table_name_end= (yylsp[-3]).raw.start; if ((yylsp[0]).is_empty()) { /* @10.is_empty() is true when a clause PRECEDES/FOLLOWS is absent. */ lex->trg_ordering_clause_begin= NULL; lex->trg_ordering_clause_end= NULL; } else { lex->trg_ordering_clause_begin= (yylsp[0]).cpp.start; lex->trg_ordering_clause_end= (yylsp[0]).cpp.end; } sp_head *sp= sp_start_parsing(thd, SP_TYPE_TRIGGER, (yyvsp[-8].spname)); if (!sp) MYSQL_YYABORT; sp->m_trg_chistics.action_time= (enum enum_trigger_action_time_type) (yyvsp[-7].num); sp->m_trg_chistics.event= (enum enum_trigger_event_type) (yyvsp[-6].num); sp->m_trg_chistics.ordering_clause= (yyvsp[0].trg_characteristics).ordering_clause; sp->m_trg_chistics.anchor_trigger_name= (yyvsp[0].trg_characteristics).anchor_trigger_name; lex->stmt_definition_begin= (yylsp[-9]).cpp.start; lex->ident.str= const_cast<char *>((yylsp[-4]).cpp.start); lex->ident.length= (yylsp[-2]).cpp.start - (yylsp[-4]).cpp.start; lex->sphead= sp; lex->spname= (yyvsp[-8].spname); memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics)); sp->m_chistics= &lex->sp_chistics; sp->set_body_start(thd, (yylsp[-1]).cpp.end); } #line 39237 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2705: #line 15208 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* $13 */ THD *thd= YYTHD; LEX *lex= Lex; sp_head *sp= lex->sphead; sp_finish_parsing(thd); lex->sql_command= SQLCOM_CREATE_TRIGGER; if (sp->is_not_allowed_in_function("trigger")) 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->select_lex->add_table_to_list(thd, (yyvsp[-6].table), (LEX_STRING*) 0, TL_OPTION_UPDATING, TL_READ_NO_INSERT, MDL_SHARED_NO_WRITE)) MYSQL_YYABORT; } #line 39266 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2706: #line 15243 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; if (is_native_function(thd, & (yyvsp[-4].lex_str))) { my_error(ER_NATIVE_FCT_NAME_COLLISION, MYF(0), (yyvsp[-4].lex_str).str); MYSQL_YYABORT; } lex->sql_command = SQLCOM_CREATE_FUNCTION; lex->udf.type= UDFTYPE_AGGREGATE; lex->stmt_definition_begin= (yylsp[-5]).cpp.start; lex->udf.name = (yyvsp[-4].lex_str); lex->udf.returns=(Item_result) (yyvsp[-2].num); lex->udf.dl=(yyvsp[0].lex_str).str; } #line 39287 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2707: #line 15261 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; if (is_native_function(thd, & (yyvsp[-4].lex_str))) { my_error(ER_NATIVE_FCT_NAME_COLLISION, MYF(0), (yyvsp[-4].lex_str).str); MYSQL_YYABORT; } lex->sql_command = SQLCOM_CREATE_FUNCTION; lex->udf.type= UDFTYPE_FUNCTION; lex->stmt_definition_begin= (yylsp[-5]).cpp.start; lex->udf.name = (yyvsp[-4].lex_str); lex->udf.returns=(Item_result) (yyvsp[-2].num); lex->udf.dl=(yyvsp[0].lex_str).str; } #line 39308 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2708: #line 15283 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* $4 */ THD *thd= YYTHD; LEX *lex= thd->lex; lex->stmt_definition_begin= (yylsp[-2]).cpp.start; lex->spname= (yyvsp[-1].spname); if (lex->sphead) { my_error(ER_SP_NO_RECURSIVE_CREATE, MYF(0), "FUNCTION"); MYSQL_YYABORT; } sp_head *sp= sp_start_parsing(thd, SP_TYPE_FUNCTION, lex->spname); if (!sp) MYSQL_YYABORT; lex->sphead= sp; sp->m_parser_data.set_parameter_start_ptr((yylsp[0]).cpp.end); } #line 39335 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2709: #line 15307 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* $7 */ Lex->sphead->m_parser_data.set_parameter_end_ptr((yylsp[0]).cpp.start); } #line 39343 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2710: #line 15311 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* $9 */ LEX *lex= Lex; lex->charset= NULL; lex->length= lex->dec= NULL; lex->interval_list.empty(); lex->type= 0; lex->gcol_info= 0; } #line 39356 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2711: #line 15320 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* $11 */ LEX *lex= Lex; sp_head *sp= lex->sphead; /* This was disabled in 5.1.12. See bug #20701 When collation support in SP is implemented, then this test should be removed. */ if (((yyvsp[0].num) == MYSQL_TYPE_STRING || (yyvsp[0].num) == MYSQL_TYPE_VARCHAR) && (lex->type & BINCMP_FLAG)) { my_error(ER_NOT_SUPPORTED_YET, MYF(0), "return value collation"); MYSQL_YYABORT; } if (fill_field_definition(YYTHD, sp, (enum enum_field_types) (yyvsp[0].num), &sp->m_return_field_def)) MYSQL_YYABORT; memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics)); } #line 39383 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2712: #line 15343 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /* $13 */ THD *thd= YYTHD; LEX *lex= thd->lex; lex->sphead->m_chistics= &lex->sp_chistics; lex->sphead->set_body_start(thd, yylloc.cpp.start); } #line 39395 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2713: #line 15351 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { THD *thd= YYTHD; LEX *lex= thd->lex; sp_head *sp= lex->sphead; if (sp->is_not_allowed_in_function("function")) MYSQL_YYABORT; sp_finish_parsing(thd); lex->sql_command= SQLCOM_CREATE_SPFUNCTION; if (!(sp->m_flags & sp_head::HAS_RETURN)) { my_error(ER_SP_NORETURN, MYF(0), sp->m_qname.str); MYSQL_YYABORT; } if (is_native_function(thd, & sp->m_name)) { /* This warning will be printed when [1] A client query is parsed, [2] A stored function is loaded by db_load_routine. Printing the warning for [2] is intentional, to cover the following scenario: - A user define a SF 'foo' using MySQL 5.N - An application uses select foo(), and works. - MySQL 5.{N+1} defines a new native function 'foo', as part of a new feature. - MySQL 5.{N+1} documentation is updated, and should mention that there is a potential incompatible change in case of existing stored function named 'foo'. - The user deploys 5.{N+1}. At this point, 'select foo()' means something different, and the user code is most likely broken (it's only safe if the code is 'select db.foo()'). With a warning printed when the SF is loaded (which has to occur before the call), the warning will provide a hint explaining the root cause of a later failure of 'select foo()'. With no warning printed, the user code will fail with no apparent reason. Printing a warning each time db_load_routine is executed for an ambiguous function is annoying, since that can happen a lot, but in practice should not happen unless there *are* name collisions. If a collision exists, it should not be silenced but fixed. */ push_warning_printf(thd, Sql_condition::SL_NOTE, ER_NATIVE_FCT_NAME_COLLISION, ER(ER_NATIVE_FCT_NAME_COLLISION), sp->m_name.str); } } #line 39454 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2714: #line 15410 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$3*/ THD *thd= YYTHD; LEX *lex= Lex; if (lex->sphead) { my_error(ER_SP_NO_RECURSIVE_CREATE, MYF(0), "PROCEDURE"); MYSQL_YYABORT; } lex->stmt_definition_begin= (yylsp[0]).cpp.start; sp_head *sp= sp_start_parsing(thd, SP_TYPE_PROCEDURE, (yyvsp[0].spname)); if (!sp) MYSQL_YYABORT; lex->sphead= sp; } #line 39478 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2715: #line 15430 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$5*/ Lex->sphead->m_parser_data.set_parameter_start_ptr((yylsp[0]).cpp.end); } #line 39486 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2716: #line 15435 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$8*/ THD *thd= YYTHD; LEX *lex= thd->lex; lex->sphead->m_parser_data.set_parameter_end_ptr((yylsp[0]).cpp.start); memset(&lex->sp_chistics, 0, sizeof(st_sp_chistics)); } #line 39498 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2717: #line 15443 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$10*/ THD *thd= YYTHD; LEX *lex= thd->lex; lex->sphead->m_chistics= &lex->sp_chistics; lex->sphead->set_body_start(thd, yylloc.cpp.start); } #line 39510 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2718: #line 15451 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { /*$12*/ THD *thd= YYTHD; LEX *lex= Lex; sp_finish_parsing(thd); lex->sql_command= SQLCOM_CREATE_PROCEDURE; } #line 39523 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2719: #line 15465 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_XA_START; Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_xa_start((yyvsp[-1].xid), (yyvsp[0].xa_option_type)); } #line 39532 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2720: #line 15470 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_XA_END; Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_xa_end((yyvsp[-1].xid), (yyvsp[0].xa_option_type)); } #line 39541 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2721: #line 15475 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_XA_PREPARE; Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_xa_prepare((yyvsp[0].xid)); } #line 39550 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2722: #line 15480 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_XA_COMMIT; Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_xa_commit((yyvsp[-1].xid), (yyvsp[0].xa_option_type)); } #line 39559 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2723: #line 15485 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_XA_ROLLBACK; Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_xa_rollback((yyvsp[0].xid)); } #line 39568 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2724: #line 15490 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { Lex->sql_command = SQLCOM_XA_RECOVER; Lex->m_sql_cmd= new (YYTHD->mem_root) Sql_cmd_xa_recover((yyvsp[0].is_not_empty)); } #line 39577 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2725: #line 15497 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.is_not_empty)= false; } #line 39583 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2726: #line 15498 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.is_not_empty)= true; } #line 39589 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2727: #line 15502 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MYSQL_YYABORT_UNLESS((yyvsp[0].string)->length() <= MAXGTRIDSIZE); XID *xid; if (!(xid= (XID *)YYTHD->alloc(sizeof(XID)))) MYSQL_YYABORT; xid->set(1L, (yyvsp[0].string)->ptr(), (yyvsp[0].string)->length(), 0, 0); (yyval.xid)= xid; } #line 39602 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2728: #line 15511 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { MYSQL_YYABORT_UNLESS((yyvsp[-2].string)->length() <= MAXGTRIDSIZE && (yyvsp[0].string)->length() <= MAXBQUALSIZE); XID *xid; if (!(xid= (XID *)YYTHD->alloc(sizeof(XID)))) MYSQL_YYABORT; xid->set(1L, (yyvsp[-2].string)->ptr(), (yyvsp[-2].string)->length(), (yyvsp[0].string)->ptr(), (yyvsp[0].string)->length()); (yyval.xid)= xid; } #line 39616 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2729: #line 15521 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { // check for overwflow of xid format id bool format_id_overflow_detected= ((yyvsp[0].ulong_num) > LONG_MAX); MYSQL_YYABORT_UNLESS((yyvsp[-4].string)->length() <= MAXGTRIDSIZE && (yyvsp[-2].string)->length() <= MAXBQUALSIZE && !format_id_overflow_detected); XID *xid; if (!(xid= (XID *)YYTHD->alloc(sizeof(XID)))) MYSQL_YYABORT; xid->set((yyvsp[0].ulong_num), (yyvsp[-4].string)->ptr(), (yyvsp[-4].string)->length(), (yyvsp[-2].string)->ptr(), (yyvsp[-2].string)->length()); (yyval.xid)= xid; } #line 39635 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2730: #line 15538 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 39641 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2731: #line 15539 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ {} #line 39647 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2732: #line 15543 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.xa_option_type)= XA_NONE; } #line 39653 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2733: #line 15544 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.xa_option_type)= XA_JOIN; } #line 39659 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2734: #line 15545 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.xa_option_type)= XA_RESUME; } #line 39665 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2735: #line 15549 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.xa_option_type)= XA_NONE; } #line 39671 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2736: #line 15550 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.xa_option_type)= XA_ONE_PHASE; } #line 39677 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2737: #line 15555 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.xa_option_type)= XA_NONE; } #line 39683 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2738: #line 15557 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.xa_option_type)= XA_SUSPEND; } #line 39689 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2739: #line 15559 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { (yyval.xa_option_type)= XA_FOR_MIGRATE; } #line 39695 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2740: #line 15564 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_INSTALL_PLUGIN; lex->m_sql_cmd= new Sql_cmd_install_plugin((yyvsp[-2].lex_str), (yyvsp[0].lex_str)); } #line 39705 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; case 2741: #line 15573 "/var/lib/pb2/sb_1-12949855-1697024657.5/mysql-5.7.44-release-export-3503200_gpl/sql/sql_yacc.yy" /* yacc.c:1646 */ { LEX *lex= Lex; lex->sql_command= SQLCOM_UNINSTALL_PLUGIN; lex->m_sql_cmd= new Sql_cmd_uninstall_plugin((yyvsp[0].lex_str)); } #line 39715 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ break; #line 39719 "/var/lib/pb2/sb_1-12949855-1697024657.5/dist_GPL/sql/sql_yacc.cc" /* yacc.c:1646 */ 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 ("-> $$ =", yyr1[yyn], &yyval, &yyloc); YYPOPSTACK (yylen); yylen = 0; YY_STACK_PRINT (yyss, yyssp); *++yyvsp = yyval; *++yylsp = yyloc; /* 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. */ yyn = yyr1[yyn]; yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) yystate = yytable[yystate]; else yystate = yydefgoto[yyn - YYNTOKENS]; 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 ? YYEMPTY : YYTRANSLATE (yychar); /* If not already recovering from an error, report this error. */ if (!yyerrstatus) { ++yynerrs; #if ! YYERROR_VERBOSE yyerror (&yylloc, YYTHD, YY_("syntax error")); #else # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \ yyssp, yytoken) { char const *yymsgp = YY_("syntax error"); int yysyntax_error_status; yysyntax_error_status = YYSYNTAX_ERROR; if (yysyntax_error_status == 0) yymsgp = yymsg; else if (yysyntax_error_status == 1) { if (yymsg != yymsgbuf) YYSTACK_FREE (yymsg); yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc); if (!yymsg) { yymsg = yymsgbuf; yymsg_alloc = sizeof yymsgbuf; yysyntax_error_status = 2; } else { yysyntax_error_status = YYSYNTAX_ERROR; yymsgp = yymsg; } } yyerror (&yylloc, YYTHD, yymsgp); if (yysyntax_error_status == 2) goto yyexhaustedlab; } # undef YYSYNTAX_ERROR #endif } yyerror_range[1] = yylloc; 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, &yylloc, YYTHD); 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 like GCC when the user code never invokes YYERROR and the label yyerrorlab therefore never appears in user code. */ if (/*CONSTCOND*/ 0) goto yyerrorlab; yyerror_range[1] = yylsp[1-yylen]; /* 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. */ for (;;) { yyn = yypact[yystate]; if (!yypact_value_is_default (yyn)) { yyn += YYTERROR; if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) { yyn = yytable[yyn]; if (0 < yyn) break; } } /* Pop the current state because it cannot handle the error token. */ if (yyssp == yyss) YYABORT; yyerror_range[1] = *yylsp; yydestruct ("Error: popping", yystos[yystate], yyvsp, yylsp, YYTHD); YYPOPSTACK (1); yystate = *yyssp; YY_STACK_PRINT (yyss, yyssp); } YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN *++yyvsp = yylval; YY_IGNORE_MAYBE_UNINITIALIZED_END yyerror_range[2] = yylloc; /* Using YYLLOC is tempting, but would change the location of the lookahead. YYLOC is available though. */ YYLLOC_DEFAULT (yyloc, yyerror_range, 2); *++yylsp = yyloc; /* Shift the error token. */ YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); yystate = yyn; goto yynewstate; /*-------------------------------------. | yyacceptlab -- YYACCEPT comes here. | `-------------------------------------*/ yyacceptlab: yyresult = 0; goto yyreturn; /*-----------------------------------. | yyabortlab -- YYABORT comes here. | `-----------------------------------*/ yyabortlab: yyresult = 1; goto yyreturn; #if !defined yyoverflow || YYERROR_VERBOSE /*-------------------------------------------------. | yyexhaustedlab -- memory exhaustion comes here. | `-------------------------------------------------*/ yyexhaustedlab: yyerror (&yylloc, YYTHD, YY_("memory exhausted")); yyresult = 2; /* Fall through. */ #endif yyreturn: 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, &yylloc, YYTHD); } /* 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", yystos[*yyssp], yyvsp, yylsp, YYTHD); YYPOPSTACK (1); } #ifndef yyoverflow if (yyss != yyssa) YYSTACK_FREE (yyss); #endif #if YYERROR_VERBOSE if (yymsg != yymsgbuf) YYSTACK_FREE (yymsg); #endif return yyresult; }