403Webshell
Server IP : 104.21.38.3  /  Your IP : 108.162.227.119
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 :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /www/server/mysql/src/sql/sql_yacc.cc
/* 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;
}

Youez - 2016 - github.com/yon3zu
LinuXploit