1/* A Bison parser, made by GNU Bison 3.0.4. */
2
3/* Bison implementation for Yacc-like parsers in C
4
5 Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
6
7 This program is free software: you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
11
12 This program is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16
17 You should have received a copy of the GNU General Public License
18 along with this program. If not, see <http://www.gnu.org/licenses/>. */
19
20/* As a special exception, you may create a larger work that contains
21 part or all of the Bison parser skeleton and distribute that work
22 under terms of your choice, so long as that work isn't itself a
23 parser generator using the skeleton or a modified version thereof
24 as a parser skeleton. Alternatively, if you modify or redistribute
25 the parser skeleton itself, you may (at your option) remove this
26 special exception, which will cause the skeleton and the resulting
27 Bison output files to be licensed under the GNU General Public
28 License without this special exception.
29
30 This special exception was added by the Free Software Foundation in
31 version 2.2 of Bison. */
32
33/* C LALR(1) parser skeleton written by Richard Stallman, by
34 simplifying the original so-called "semantic" parser. */
35
36/* All symbols defined below should begin with yy or YY, to avoid
37 infringing on user name space. This should be done even for local
38 variables, as they might otherwise be expanded by user macros.
39 There are some unavoidable exceptions within include files to
40 define necessary library symbols; they are noted "INFRINGES ON
41 USER NAME SPACE" below. */
42
43/* Identify Bison output. */
44#define YYBISON 1
45
46/* Bison version. */
47#define YYBISON_VERSION "3.0.4"
48
49/* Skeleton name. */
50#define YYSKELETON_NAME "yacc.c"
51
52/* Pure parsers. */
53#define YYPURE 1
54
55/* Push parsers. */
56#define YYPUSH 0
57
58/* Pull parsers. */
59#define YYPULL 1
60
61
62/* Substitute the variable and function names. */
63#define yyparse MYSQLparse
64#define yylex MYSQLlex
65#define yyerror MYSQLerror
66#define yydebug MYSQLdebug
67#define yynerrs MYSQLnerrs
68
69
70/* Copy the first part of user declarations. */
71#line 25 "/workspace/server/sql/sql_yacc.yy" /* yacc.c:339 */
72
73#define YYLIP (& thd->m_parser_state->m_lip)
74#define YYPS (& thd->m_parser_state->m_yacc)
75#define YYCSCL (thd->variables.character_set_client)
76
77#define MYSQL_YACC
78#define YYINITDEPTH 100
79#define YYMAXDEPTH 3200 /* Because of 64K stack */
80#define Lex (thd->lex)
81
82#define Select Lex->current_select
83#include "mariadb.h"
84#include "sql_priv.h"
85#include "sql_parse.h" /* comp_*_creator */
86#include "sql_table.h" /* primary_key_name */
87#include "sql_partition.h" /* partition_info, HASH_PARTITION */
88#include "sql_acl.h" /* *_ACL */
89#include "sql_class.h" /* Key_part_spec, enum_filetype, Diag_condition_item_name */
90#include "slave.h"
91#include "lex_symbol.h"
92#include "item_create.h"
93#include "sp_head.h"
94#include "sp_rcontext.h"
95#include "sp.h"
96#include "sql_show.h"
97#include "sql_alter.h" // Sql_cmd_alter_table*
98#include "sql_truncate.h" // Sql_cmd_truncate_table
99#include "sql_admin.h" // Sql_cmd_analyze/Check..._table
100#include "sql_partition_admin.h" // Sql_cmd_alter_table_*_part.
101#include "sql_handler.h" // Sql_cmd_handler_*
102#include "sql_signal.h"
103#include "sql_get_diagnostics.h" // Sql_cmd_get_diagnostics
104#include "sql_cte.h"
105#include "sql_window.h"
106#include "item_windowfunc.h"
107#include "event_parse_data.h"
108#include "create_options.h"
109#include <myisam.h>
110#include <myisammrg.h>
111#include "keycaches.h"
112#include "set_var.h"
113#include "rpl_mi.h"
114#include "lex_token.h"
115#include "sql_lex.h"
116#include "sql_sequence.h"
117#include "my_base.h"
118
119/* this is to get the bison compilation windows warnings out */
120#ifdef _MSC_VER
121/* warning C4065: switch statement contains 'default' but no 'case' labels */
122#pragma warning (disable : 4065)
123#endif
124
125int yylex(void *yylval, void *yythd);
126
127#define yyoverflow(A,B,C,D,E,F) \
128 { \
129 size_t val= *(F); \
130 if (unlikely(my_yyoverflow((B), (D), &val))) \
131 { \
132 yyerror(thd, (char*) (A)); \
133 return 2; \
134 } \
135 else \
136 { \
137 *(F)= (YYSIZE_T)val; \
138 } \
139 }
140
141#define MYSQL_YYABORT \
142 do \
143 { \
144 LEX::cleanup_lex_after_parse_error(thd); \
145 YYABORT; \
146 } while (0)
147
148#define MYSQL_YYABORT_UNLESS(A) \
149 if (unlikely(!(A))) \
150 { \
151 thd->parse_error(); \
152 MYSQL_YYABORT; \
153 }
154
155#define my_yyabort_error(A) \
156 do { my_error A; MYSQL_YYABORT; } while(0)
157
158#ifndef DBUG_OFF
159#define YYDEBUG 1
160#else
161#define YYDEBUG 0
162#endif
163
164
165/**
166 @brief Bison callback to report a syntax/OOM error
167
168 This function is invoked by the bison-generated parser
169 when a syntax error, a parse error or an out-of-memory
170 condition occurs. This function is not invoked when the
171 parser is requested to abort by semantic action code
172 by means of YYABORT or YYACCEPT macros. This is why these
173 macros should not be used (use MYSQL_YYABORT/MYSQL_YYACCEPT
174 instead).
175
176 The parser will abort immediately after invoking this callback.
177
178 This function is not for use in semantic actions and is internal to
179 the parser, as it performs some pre-return cleanup.
180 In semantic actions, please use thd->parse_error() or my_error to
181 push an error into the error stack and MYSQL_YYABORT
182 to abort from the parser.
183*/
184
185void MYSQLerror(THD *thd, const char *s)
186{
187 /*
188 Restore the original LEX if it was replaced when parsing
189 a stored procedure. We must ensure that a parsing error
190 does not leave any side effects in the THD.
191 */
192 LEX::cleanup_lex_after_parse_error(thd);
193
194 /* "parse error" changed into "syntax error" between bison 1.75 and 1.875 */
195 if (strcmp(s,"parse error") == 0 || strcmp(s,"syntax error") == 0)
196 s= ER_THD(thd, ER_SYNTAX_ERROR);
197 thd->parse_error(s, 0);
198}
199
200
201#ifndef DBUG_OFF
202void turn_parser_debug_on()
203{
204 /*
205 MYSQLdebug is in sql/sql_yacc.cc, in bison generated code.
206 Turning this option on is **VERY** verbose, and should be
207 used when investigating a syntax error problem only.
208
209 The syntax to run with bison traces is as follows :
210 - Starting a server manually :
211 mysqld --debug-dbug="d,parser_debug" ...
212 - Running a test :
213 mysql-test-run.pl --mysqld="--debug-dbug=d,parser_debug" ...
214
215 The result will be in the process stderr (var/log/master.err)
216 */
217
218 extern int yydebug;
219 yydebug= 1;
220}
221#endif
222
223
224/**
225 Helper action for a case expression statement (the expr in 'CASE expr').
226 This helper is used for 'searched' cases only.
227 @param lex the parser lex context
228 @param expr the parsed expression
229 @return 0 on success
230*/
231
232int LEX::case_stmt_action_expr(Item* expr)
233{
234 int case_expr_id= spcont->register_case_expr();
235 sp_instr_set_case_expr *i;
236
237 if (spcont->push_case_expr_id(case_expr_id))
238 return 1;
239
240 i= new (thd->mem_root)
241 sp_instr_set_case_expr(sphead->instructions(), spcont, case_expr_id, expr,
242 this);
243
244 sphead->add_cont_backpatch(i);
245 return sphead->add_instr(i);
246}
247
248/**
249 Helper action for a case when condition.
250 This helper is used for both 'simple' and 'searched' cases.
251 @param lex the parser lex context
252 @param when the parsed expression for the WHEN clause
253 @param simple true for simple cases, false for searched cases
254*/
255
256int LEX::case_stmt_action_when(Item *when, bool simple)
257{
258 uint ip= sphead->instructions();
259 sp_instr_jump_if_not *i;
260 Item_case_expr *var;
261 Item *expr;
262
263 if (simple)
264 {
265 var= new (thd->mem_root)
266 Item_case_expr(thd, spcont->get_current_case_expr_id());
267
268#ifdef DBUG_ASSERT_EXISTS
269 if (var)
270 {
271 var->m_sp= sphead;
272 }
273#endif
274
275 expr= new (thd->mem_root) Item_func_eq(thd, var, when);
276 i= new (thd->mem_root) sp_instr_jump_if_not(ip, spcont, expr, this);
277 }
278 else
279 i= new (thd->mem_root) sp_instr_jump_if_not(ip, spcont, when, this);
280
281 /*
282 BACKPATCH: Registering forward jump from
283 "case_stmt_action_when" to "case_stmt_action_then"
284 (jump_if_not from instruction 2 to 5, 5 to 8 ... in the example)
285 */
286
287 return
288 !MY_TEST(i) ||
289 sphead->push_backpatch(thd, i, spcont->push_label(thd, &empty_clex_str, 0)) ||
290 sphead->add_cont_backpatch(i) ||
291 sphead->add_instr(i);
292}
293
294/**
295 Helper action for a case then statements.
296 This helper is used for both 'simple' and 'searched' cases.
297 @param lex the parser lex context
298*/
299
300int LEX::case_stmt_action_then()
301{
302 uint ip= sphead->instructions();
303 sp_instr_jump *i= new (thd->mem_root) sp_instr_jump(ip, spcont);
304 if (!MY_TEST(i) || sphead->add_instr(i))
305 return 1;
306
307 /*
308 BACKPATCH: Resolving forward jump from
309 "case_stmt_action_when" to "case_stmt_action_then"
310 (jump_if_not from instruction 2 to 5, 5 to 8 ... in the example)
311 */
312
313 sphead->backpatch(spcont->pop_label());
314
315 /*
316 BACKPATCH: Registering forward jump from
317 "case_stmt_action_then" to after END CASE
318 (jump from instruction 4 to 12, 7 to 12 ... in the example)
319 */
320
321 return sphead->push_backpatch(thd, i, spcont->last_label());
322}
323
324
325/**
326 Helper action for a SET statement.
327 Used to push a system variable into the assignment list.
328
329 @param tmp the system variable with base name
330 @param var_type the scope of the variable
331 @param val the value being assigned to the variable
332
333 @return TRUE if error, FALSE otherwise.
334*/
335
336bool
337LEX::set_system_variable(enum enum_var_type var_type,
338 sys_var *sysvar, const LEX_CSTRING *base_name,
339 Item *val)
340{
341 set_var *setvar;
342
343 /* No AUTOCOMMIT from a stored function or trigger. */
344 if (spcont && sysvar == Sys_autocommit_ptr)
345 sphead->m_flags|= sp_head::HAS_SET_AUTOCOMMIT_STMT;
346
347 if (val && val->type() == Item::FIELD_ITEM &&
348 ((Item_field*)val)->table_name)
349 {
350 my_error(ER_WRONG_TYPE_FOR_VAR, MYF(0), sysvar->name.str);
351 return TRUE;
352 }
353
354 if (!(setvar= new (thd->mem_root) set_var(thd, var_type, sysvar,
355 base_name, val)))
356 return TRUE;
357
358 return var_list.push_back(setvar, thd->mem_root);
359}
360
361
362/**
363 Helper action for a SET statement.
364 Used to SET a field of NEW row.
365
366 @param name the field name
367 @param val the value being assigned to the row
368
369 @return TRUE if error, FALSE otherwise.
370*/
371
372bool LEX::set_trigger_new_row(const LEX_CSTRING *name, Item *val)
373{
374 Item_trigger_field *trg_fld;
375 sp_instr_set_trigger_field *sp_fld;
376
377 /* QQ: Shouldn't this be field's default value ? */
378 if (! val)
379 val= new (thd->mem_root) Item_null(thd);
380
381 DBUG_ASSERT(trg_chistics.action_time == TRG_ACTION_BEFORE &&
382 (trg_chistics.event == TRG_EVENT_INSERT ||
383 trg_chistics.event == TRG_EVENT_UPDATE));
384
385 trg_fld= new (thd->mem_root)
386 Item_trigger_field(thd, current_context(),
387 Item_trigger_field::NEW_ROW,
388 name, UPDATE_ACL, FALSE);
389
390 if (unlikely(trg_fld == NULL))
391 return TRUE;
392
393 sp_fld= new (thd->mem_root)
394 sp_instr_set_trigger_field(sphead->instructions(),
395 spcont, trg_fld, val, this);
396
397 if (unlikely(sp_fld == NULL))
398 return TRUE;
399
400 /*
401 Let us add this item to list of all Item_trigger_field
402 objects in trigger.
403 */
404 trg_table_fields.link_in_list(trg_fld, &trg_fld->next_trg_field);
405
406 return sphead->add_instr(sp_fld);
407}
408
409
410/**
411 Create an object to represent a SP variable in the Item-hierarchy.
412
413 @param name The SP variable name.
414 @param spvar The SP variable (optional).
415 @param start_in_q Start position of the SP variable name in the query.
416 @param end_in_q End position of the SP variable name in the query.
417
418 @remark If spvar is not specified, the name is used to search for the
419 variable in the parse-time context. If the variable does not
420 exist, a error is set and NULL is returned to the caller.
421
422 @return An Item_splocal object representing the SP variable, or NULL on error.
423*/
424Item_splocal*
425LEX::create_item_for_sp_var(const Lex_ident_cli_st *cname, sp_variable *spvar)
426{
427 const Sp_rcontext_handler *rh;
428 Item_splocal *item;
429 const char *start_in_q= cname->pos();
430 const char *end_in_q= cname->end();
431 uint pos_in_q, len_in_q;
432 Lex_ident_sys name(thd, cname);
433
434 if (name.is_null())
435 return NULL; // EOM
436
437 /* If necessary, look for the variable. */
438 if (spcont && !spvar)
439 spvar= find_variable(&name, &rh);
440
441 if (!spvar)
442 {
443 my_error(ER_SP_UNDECLARED_VAR, MYF(0), name.str);
444 return NULL;
445 }
446
447 DBUG_ASSERT(spcont && spvar);
448
449 /* Position and length of the SP variable name in the query. */
450 pos_in_q= (uint)(start_in_q - sphead->m_tmp_query);
451 len_in_q= (uint)(end_in_q - start_in_q);
452
453 item= new (thd->mem_root)
454 Item_splocal(thd, rh, &name, spvar->offset, spvar->type_handler(),
455 pos_in_q, len_in_q);
456
457#ifdef DBUG_ASSERT_EXISTS
458 if (item)
459 item->m_sp= sphead;
460#endif
461
462 return item;
463}
464
465/**
466 Helper to resolve the SQL:2003 Syntax exception 1) in <in predicate>.
467 See SQL:2003, Part 2, section 8.4 <in predicate>, Note 184, page 383.
468 This function returns the proper item for the SQL expression
469 <code>left [NOT] IN ( expr )</code>
470 @param thd the current thread
471 @param left the in predicand
472 @param equal true for IN predicates, false for NOT IN predicates
473 @param expr first and only expression of the in value list
474 @return an expression representing the IN predicate.
475*/
476Item* handle_sql2003_note184_exception(THD *thd, Item* left, bool equal,
477 Item *expr)
478{
479 /*
480 Relevant references for this issue:
481 - SQL:2003, Part 2, section 8.4 <in predicate>, page 383,
482 - SQL:2003, Part 2, section 7.2 <row value expression>, page 296,
483 - SQL:2003, Part 2, section 6.3 <value expression primary>, page 174,
484 - SQL:2003, Part 2, section 7.15 <subquery>, page 370,
485 - SQL:2003 Feature F561, "Full value expressions".
486
487 The exception in SQL:2003 Note 184 means:
488 Item_singlerow_subselect, which corresponds to a <scalar subquery>,
489 should be re-interpreted as an Item_in_subselect, which corresponds
490 to a <table subquery> when used inside an <in predicate>.
491
492 Our reading of Note 184 is reccursive, so that all:
493 - IN (( <subquery> ))
494 - IN ((( <subquery> )))
495 - IN '('^N <subquery> ')'^N
496 - etc
497 should be interpreted as a <table subquery>, no matter how deep in the
498 expression the <subquery> is.
499 */
500
501 Item *result;
502
503 DBUG_ENTER("handle_sql2003_note184_exception");
504
505 if (expr->type() == Item::SUBSELECT_ITEM)
506 {
507 Item_subselect *expr2 = (Item_subselect*) expr;
508
509 if (expr2->substype() == Item_subselect::SINGLEROW_SUBS)
510 {
511 Item_singlerow_subselect *expr3 = (Item_singlerow_subselect*) expr2;
512 st_select_lex *subselect;
513
514 /*
515 Implement the mandated change, by altering the semantic tree:
516 left IN Item_singlerow_subselect(subselect)
517 is modified to
518 left IN (subselect)
519 which is represented as
520 Item_in_subselect(left, subselect)
521 */
522 subselect= expr3->invalidate_and_restore_select_lex();
523 result= new (thd->mem_root) Item_in_subselect(thd, left, subselect);
524
525 if (! equal)
526 result = negate_expression(thd, result);
527
528 DBUG_RETURN(result);
529 }
530 }
531
532 if (equal)
533 result= new (thd->mem_root) Item_func_eq(thd, left, expr);
534 else
535 result= new (thd->mem_root) Item_func_ne(thd, left, expr);
536
537 DBUG_RETURN(result);
538}
539
540/**
541 @brief Creates a new SELECT_LEX for a UNION branch.
542
543 Sets up and initializes a SELECT_LEX structure for a query once the parser
544 discovers a UNION token. The current SELECT_LEX is pushed on the stack and
545 the new SELECT_LEX becomes the current one.
546
547 @param lex The parser state.
548
549 @param is_union_distinct True if the union preceding the new select
550 statement uses UNION DISTINCT.
551
552 @param is_top_level This should be @c TRUE if the newly created SELECT_LEX
553 is a non-nested statement.
554
555 @return <code>false</code> if successful, <code>true</code> if an error was
556 reported. In the latter case parsing should stop.
557 */
558bool LEX::add_select_to_union_list(bool is_union_distinct,
559 enum sub_select_type type,
560 bool is_top_level)
561{
562 const char *type_name= (type == INTERSECT_TYPE ? "INTERSECT" :
563 (type == EXCEPT_TYPE ? "EXCEPT" : "UNION"));
564 /*
565 Only the last SELECT can have INTO. Since the grammar won't allow INTO in
566 a nested SELECT, we make this check only when creating a top-level SELECT.
567 */
568 if (is_top_level && result)
569 {
570 my_error(ER_WRONG_USAGE, MYF(0), type_name, "INTO");
571 return TRUE;
572 }
573 if (current_select->order_list.first && !current_select->braces)
574 {
575 my_error(ER_WRONG_USAGE, MYF(0), type_name, "ORDER BY");
576 return TRUE;
577 }
578
579 if (current_select->explicit_limit && !current_select->braces)
580 {
581 my_error(ER_WRONG_USAGE, MYF(0), type_name, "LIMIT");
582 return TRUE;
583 }
584 if (current_select->linkage == GLOBAL_OPTIONS_TYPE)
585 {
586 thd->parse_error();
587 return TRUE;
588 }
589 if (!is_union_distinct && (type == INTERSECT_TYPE || type == EXCEPT_TYPE))
590 {
591 my_error(ER_WRONG_USAGE, MYF(0), type_name, "ALL");
592 return TRUE;
593 }
594 /*
595 Priority implementation, but also trying to keep things as flat
596 as possible */
597 if (type == INTERSECT_TYPE &&
598 (current_select->linkage != INTERSECT_TYPE &&
599 current_select != current_select->master_unit()->first_select())
600 && !(thd->variables.sql_mode & MODE_ORACLE))
601 {
602 /*
603 This and previous SELECTs should go one level down because of
604 priority
605 */
606 SELECT_LEX *prev= exclude_last_select();
607 if (add_unit_in_brackets(prev))
608 return TRUE;
609 return add_select_to_union_list(is_union_distinct, type, 0);
610 }
611 else
612 {
613 check_automatic_up(type);
614 }
615 /* This counter shouldn't be incremented for UNION parts */
616 nest_level--;
617 if (mysql_new_select(this, 0, NULL))
618 return TRUE;
619 mysql_init_select(this);
620 current_select->linkage= type;
621 current_select->with_all_modifier= !is_union_distinct;
622 if (is_union_distinct) /* UNION DISTINCT - remember position */
623 current_select->master_unit()->union_distinct= current_select;
624 else
625 DBUG_ASSERT(type == UNION_TYPE);
626 return FALSE;
627}
628
629
630/**
631 Create a separate LEX for each assignment if in SP.
632
633 If we are in SP we want have own LEX for each assignment.
634 This is mostly because it is hard for several sp_instr_set
635 and sp_instr_set_trigger instructions share one LEX.
636 (Well, it is theoretically possible but adds some extra
637 overhead on preparation for execution stage and IMO less
638 robust).
639
640 QQ: May be we should simply prohibit group assignments in SP?
641
642 @see sp_create_assignment_instr
643
644 @param thd Thread context
645 @param no_lookahead True if the parser has no lookahead
646*/
647
648void sp_create_assignment_lex(THD *thd, bool no_lookahead)
649{
650 LEX *lex= thd->lex;
651
652 if (lex->sphead)
653 {
654 Lex_input_stream *lip= &thd->m_parser_state->m_lip;
655 LEX *old_lex= lex;
656 lex->sphead->reset_lex(thd);
657 lex= thd->lex;
658
659 /* Set new LEX as if we at start of set rule. */
660 lex->sql_command= SQLCOM_SET_OPTION;
661 mysql_init_select(lex);
662 lex->var_list.empty();
663 lex->autocommit= 0;
664 /* get_ptr() is only correct with no lookahead. */
665 if (no_lookahead)
666 lex->sphead->m_tmp_query= lip->get_ptr();
667 else
668 lex->sphead->m_tmp_query= lip->get_tok_end();
669 /* Inherit from outer lex. */
670 lex->option_type= old_lex->option_type;
671 }
672}
673
674
675/**
676 Create a SP instruction for a SET assignment.
677
678 @see sp_create_assignment_lex
679
680 @param thd Thread context
681 @param no_lookahead True if the parser has no lookahead
682
683 @return false if success, true otherwise.
684*/
685
686bool sp_create_assignment_instr(THD *thd, bool no_lookahead)
687{
688 LEX *lex= thd->lex;
689
690 if (lex->sphead)
691 {
692 sp_head *sp= lex->sphead;
693
694 if (!lex->var_list.is_empty())
695 {
696 /*
697 We have assignment to user or system variable or
698 option setting, so we should construct sp_instr_stmt
699 for it.
700 */
701 LEX_STRING qbuff;
702 sp_instr_stmt *i;
703 Lex_input_stream *lip= &thd->m_parser_state->m_lip;
704
705 if (!(i= new (thd->mem_root)
706 sp_instr_stmt(sp->instructions(), lex->spcont, lex)))
707 return true;
708
709 /*
710 Extract the query statement from the tokenizer. The
711 end is either lip->ptr, if there was no lookahead,
712 lip->tok_end otherwise.
713 */
714 if (no_lookahead)
715 qbuff.length= lip->get_ptr() - sp->m_tmp_query;
716 else
717 qbuff.length= lip->get_tok_end() - sp->m_tmp_query;
718
719 if (!(qbuff.str= (char*) alloc_root(thd->mem_root,
720 qbuff.length + 5)))
721 return true;
722
723 strmake(strmake(qbuff.str, "SET ", 4), sp->m_tmp_query,
724 qbuff.length);
725 qbuff.length+= 4;
726 i->m_query= qbuff;
727 if (sp->add_instr(i))
728 return true;
729 }
730 enum_var_type inner_option_type= lex->option_type;
731 if (lex->sphead->restore_lex(thd))
732 return true;
733 /* Copy option_type to outer lex in case it has changed. */
734 thd->lex->option_type= inner_option_type;
735 }
736 return false;
737}
738
739void LEX::add_key_to_list(LEX_CSTRING *field_name,
740 enum Key::Keytype type, bool check_exists)
741{
742 Key *key;
743 MEM_ROOT *mem_root= thd->mem_root;
744 key= new (mem_root)
745 Key(type, &null_clex_str, HA_KEY_ALG_UNDEF, false,
746 DDL_options(check_exists ?
747 DDL_options::OPT_IF_NOT_EXISTS :
748 DDL_options::OPT_NONE));
749 key->columns.push_back(new (mem_root) Key_part_spec(field_name, 0),
750 mem_root);
751 alter_info.key_list.push_back(key, mem_root);
752}
753
754bool LEX::add_alter_list(const char *name, Virtual_column_info *expr,
755 bool exists)
756{
757 MEM_ROOT *mem_root= thd->mem_root;
758 Alter_column *ac= new (mem_root) Alter_column(name, expr, exists);
759 if (unlikely(ac == NULL))
760 return true;
761 alter_info.alter_list.push_back(ac, mem_root);
762 alter_info.flags|= ALTER_CHANGE_COLUMN_DEFAULT;
763 return false;
764}
765
766void LEX::init_last_field(Column_definition *field,
767 const LEX_CSTRING *field_name,
768 const CHARSET_INFO *cs)
769{
770 last_field= field;
771
772 field->field_name= *field_name;
773
774 /* reset LEX fields that are used in Create_field::set_and_check() */
775 charset= cs;
776}
777
778
779bool LEX::set_bincmp(CHARSET_INFO *cs, bool bin)
780{
781 /*
782 if charset is NULL - we're parsing a field declaration.
783 we cannot call find_bin_collation for a field here, because actual
784 field charset is determined in get_sql_field_charset() much later.
785 so we only set a flag.
786 */
787 if (!charset)
788 {
789 charset= cs;
790 last_field->flags|= bin ? BINCMP_FLAG : 0;
791 return false;
792 }
793
794 charset= bin ? find_bin_collation(cs ? cs : charset)
795 : cs ? cs : charset;
796 return charset == NULL;
797}
798
799#define bincmp_collation(X,Y) \
800 do \
801 { \
802 if (unlikely(Lex->set_bincmp(X,Y))) \
803 MYSQL_YYABORT; \
804 } while(0)
805
806
807Virtual_column_info *add_virtual_expression(THD *thd, Item *expr)
808{
809 Virtual_column_info *v= new (thd->mem_root) Virtual_column_info();
810 if (unlikely(!v))
811 return 0;
812 v->expr= expr;
813 v->utf8= 0; /* connection charset */
814 return v;
815}
816
817
818#line 819 "/workspace/server/build/sql/sql_yacc.cc" /* yacc.c:339 */
819
820# ifndef YY_NULLPTR
821# if defined __cplusplus && 201103L <= __cplusplus
822# define YY_NULLPTR nullptr
823# else
824# define YY_NULLPTR 0
825# endif
826# endif
827
828/* Enabling verbose error messages. */
829#ifdef YYERROR_VERBOSE
830# undef YYERROR_VERBOSE
831# define YYERROR_VERBOSE 1
832#else
833# define YYERROR_VERBOSE 0
834#endif
835
836/* In a future release of Bison, this section will be replaced
837 by #include "sql_yacc.h". */
838#ifndef YY_MYSQL_WORKSPACE_SERVER_BUILD_SQL_SQL_YACC_H_INCLUDED
839# define YY_MYSQL_WORKSPACE_SERVER_BUILD_SQL_SQL_YACC_H_INCLUDED
840/* Debug traces. */
841#ifndef YYDEBUG
842# define YYDEBUG 0
843#endif
844#if YYDEBUG
845extern int MYSQLdebug;
846#endif
847
848/* Token type. */
849#ifndef YYTOKENTYPE
850# define YYTOKENTYPE
851 enum yytokentype
852 {
853 ABORT_SYM = 258,
854 ACCESSIBLE_SYM = 259,
855 ADD = 260,
856 ALL = 261,
857 ALTER = 262,
858 ANALYZE_SYM = 263,
859 AND_AND_SYM = 264,
860 AND_SYM = 265,
861 AS = 266,
862 ASC = 267,
863 ASENSITIVE_SYM = 268,
864 BEFORE_SYM = 269,
865 BETWEEN_SYM = 270,
866 BIGINT = 271,
867 BINARY = 272,
868 BIN_NUM = 273,
869 BIT_AND = 274,
870 BIT_OR = 275,
871 BIT_XOR = 276,
872 BLOB_SYM = 277,
873 BOTH = 278,
874 BY = 279,
875 CALL_SYM = 280,
876 CASCADE = 281,
877 CASE_SYM = 282,
878 CAST_SYM = 283,
879 CHANGE = 284,
880 CHAR_SYM = 285,
881 CHECK_SYM = 286,
882 COLLATE_SYM = 287,
883 CONDITION_SYM = 288,
884 CONSTRAINT = 289,
885 CONTINUE_SYM = 290,
886 CONVERT_SYM = 291,
887 COUNT_SYM = 292,
888 CREATE = 293,
889 CROSS = 294,
890 CUME_DIST_SYM = 295,
891 CURDATE = 296,
892 CURRENT_USER = 297,
893 CURRENT_ROLE = 298,
894 CURSOR_SYM = 299,
895 CURTIME = 300,
896 DATABASE = 301,
897 DATABASES = 302,
898 DATE_ADD_INTERVAL = 303,
899 DATE_SUB_INTERVAL = 304,
900 DAY_HOUR_SYM = 305,
901 DAY_MICROSECOND_SYM = 306,
902 DAY_MINUTE_SYM = 307,
903 DAY_SECOND_SYM = 308,
904 DECIMAL_NUM = 309,
905 DECIMAL_SYM = 310,
906 DECLARE_SYM = 311,
907 DEFAULT = 312,
908 DELETE_DOMAIN_ID_SYM = 313,
909 DELETE_SYM = 314,
910 DENSE_RANK_SYM = 315,
911 DESC = 316,
912 DESCRIBE = 317,
913 DETERMINISTIC_SYM = 318,
914 DISTINCT = 319,
915 DIV_SYM = 320,
916 DOUBLE_SYM = 321,
917 DO_DOMAIN_IDS_SYM = 322,
918 DOT_DOT_SYM = 323,
919 DROP = 324,
920 DUAL_SYM = 325,
921 EACH_SYM = 326,
922 ELSE = 327,
923 ELSEIF_SYM = 328,
924 ENCLOSED = 329,
925 END_OF_INPUT = 330,
926 EQUAL_SYM = 331,
927 ESCAPED = 332,
928 EXCEPT_SYM = 333,
929 EXISTS = 334,
930 EXTRACT_SYM = 335,
931 FALSE_SYM = 336,
932 FETCH_SYM = 337,
933 FIRST_VALUE_SYM = 338,
934 FLOAT_NUM = 339,
935 FLOAT_SYM = 340,
936 FOREIGN = 341,
937 FOR_SYM = 342,
938 FOR_SYSTEM_TIME_SYM = 343,
939 FROM = 344,
940 FULLTEXT_SYM = 345,
941 GE = 346,
942 GRANT = 347,
943 GROUP_SYM = 348,
944 GROUP_CONCAT_SYM = 349,
945 LAG_SYM = 350,
946 LEAD_SYM = 351,
947 HAVING = 352,
948 HEX_NUM = 353,
949 HEX_STRING = 354,
950 HOUR_MICROSECOND_SYM = 355,
951 HOUR_MINUTE_SYM = 356,
952 HOUR_SECOND_SYM = 357,
953 IDENT = 358,
954 IDENT_QUOTED = 359,
955 IF_SYM = 360,
956 IGNORE_DOMAIN_IDS_SYM = 361,
957 IGNORE_SYM = 362,
958 INDEX_SYM = 363,
959 INFILE = 364,
960 INNER_SYM = 365,
961 INOUT_SYM = 366,
962 INSENSITIVE_SYM = 367,
963 INSERT = 368,
964 INTERSECT_SYM = 369,
965 INTERVAL_SYM = 370,
966 INTO = 371,
967 INT_SYM = 372,
968 IN_SYM = 373,
969 IS = 374,
970 ITERATE_SYM = 375,
971 JOIN_SYM = 376,
972 KEYS = 377,
973 KEY_SYM = 378,
974 KILL_SYM = 379,
975 LE = 380,
976 LEADING = 381,
977 LEAVE_SYM = 382,
978 LEFT = 383,
979 LEX_HOSTNAME = 384,
980 LIKE = 385,
981 LIMIT = 386,
982 LINEAR_SYM = 387,
983 LINES = 388,
984 LOAD = 389,
985 LOCATOR_SYM = 390,
986 LOCK_SYM = 391,
987 LONGBLOB = 392,
988 LONGTEXT = 393,
989 LONG_NUM = 394,
990 LONG_SYM = 395,
991 LOOP_SYM = 396,
992 LOW_PRIORITY = 397,
993 MASTER_SSL_VERIFY_SERVER_CERT_SYM = 398,
994 MATCH = 399,
995 MAX_SYM = 400,
996 MAXVALUE_SYM = 401,
997 MEDIAN_SYM = 402,
998 MEDIUMBLOB = 403,
999 MEDIUMINT = 404,
1000 MEDIUMTEXT = 405,
1001 MINUTE_MICROSECOND_SYM = 406,
1002 MINUTE_SECOND_SYM = 407,
1003 MIN_SYM = 408,
1004 MODIFIES_SYM = 409,
1005 MOD_SYM = 410,
1006 MYSQL_CONCAT_SYM = 411,
1007 NATURAL = 412,
1008 NCHAR_STRING = 413,
1009 NE = 414,
1010 NEG = 415,
1011 NOT2_SYM = 416,
1012 NOT_SYM = 417,
1013 NOW_SYM = 418,
1014 NO_WRITE_TO_BINLOG = 419,
1015 NTILE_SYM = 420,
1016 NULL_SYM = 421,
1017 NUM = 422,
1018 NUMERIC_SYM = 423,
1019 NTH_VALUE_SYM = 424,
1020 ON = 425,
1021 OPTIMIZE = 426,
1022 OPTIONALLY = 427,
1023 ORACLE_CONCAT_SYM = 428,
1024 OR2_SYM = 429,
1025 ORDER_SYM = 430,
1026 OR_SYM = 431,
1027 OUTER = 432,
1028 OUTFILE = 433,
1029 OUT_SYM = 434,
1030 OVER_SYM = 435,
1031 PAGE_CHECKSUM_SYM = 436,
1032 PARAM_MARKER = 437,
1033 PARSE_VCOL_EXPR_SYM = 438,
1034 PARTITION_SYM = 439,
1035 PERCENT_RANK_SYM = 440,
1036 PERCENTILE_CONT_SYM = 441,
1037 PERCENTILE_DISC_SYM = 442,
1038 POSITION_SYM = 443,
1039 PRECISION = 444,
1040 PRIMARY_SYM = 445,
1041 PROCEDURE_SYM = 446,
1042 PURGE = 447,
1043 RANGE_SYM = 448,
1044 RANK_SYM = 449,
1045 READS_SYM = 450,
1046 READ_SYM = 451,
1047 READ_WRITE_SYM = 452,
1048 REAL = 453,
1049 RECURSIVE_SYM = 454,
1050 REF_SYSTEM_ID_SYM = 455,
1051 REFERENCES = 456,
1052 REGEXP = 457,
1053 RELEASE_SYM = 458,
1054 RENAME = 459,
1055 REPEAT_SYM = 460,
1056 REPLACE = 461,
1057 REQUIRE_SYM = 462,
1058 RESIGNAL_SYM = 463,
1059 RESTRICT = 464,
1060 RETURNING_SYM = 465,
1061 RETURN_SYM = 466,
1062 REVOKE = 467,
1063 RIGHT = 468,
1064 ROWS_SYM = 469,
1065 ROW_NUMBER_SYM = 470,
1066 SECOND_MICROSECOND_SYM = 471,
1067 SELECT_SYM = 472,
1068 SENSITIVE_SYM = 473,
1069 SEPARATOR_SYM = 474,
1070 SERVER_OPTIONS = 475,
1071 SET = 476,
1072 SET_VAR = 477,
1073 SHIFT_LEFT = 478,
1074 SHIFT_RIGHT = 479,
1075 SHOW = 480,
1076 SIGNAL_SYM = 481,
1077 SMALLINT = 482,
1078 SPATIAL_SYM = 483,
1079 SPECIFIC_SYM = 484,
1080 SQLEXCEPTION_SYM = 485,
1081 SQLSTATE_SYM = 486,
1082 SQLWARNING_SYM = 487,
1083 SQL_BIG_RESULT = 488,
1084 SQL_SMALL_RESULT = 489,
1085 SQL_SYM = 490,
1086 SSL_SYM = 491,
1087 STARTING = 492,
1088 STATS_AUTO_RECALC_SYM = 493,
1089 STATS_PERSISTENT_SYM = 494,
1090 STATS_SAMPLE_PAGES_SYM = 495,
1091 STDDEV_SAMP_SYM = 496,
1092 STD_SYM = 497,
1093 STRAIGHT_JOIN = 498,
1094 SUBSTRING = 499,
1095 SUM_SYM = 500,
1096 SYSDATE = 501,
1097 TABLE_REF_PRIORITY = 502,
1098 TABLE_SYM = 503,
1099 TERMINATED = 504,
1100 TEXT_STRING = 505,
1101 THEN_SYM = 506,
1102 TINYBLOB = 507,
1103 TINYINT = 508,
1104 TINYTEXT = 509,
1105 TO_SYM = 510,
1106 TRAILING = 511,
1107 TRIGGER_SYM = 512,
1108 TRIM = 513,
1109 TRUE_SYM = 514,
1110 ULONGLONG_NUM = 515,
1111 UNDERSCORE_CHARSET = 516,
1112 UNDO_SYM = 517,
1113 UNION_SYM = 518,
1114 UNIQUE_SYM = 519,
1115 UNLOCK_SYM = 520,
1116 UNSIGNED = 521,
1117 UPDATE_SYM = 522,
1118 USAGE = 523,
1119 USE_SYM = 524,
1120 USING = 525,
1121 UTC_DATE_SYM = 526,
1122 UTC_TIMESTAMP_SYM = 527,
1123 UTC_TIME_SYM = 528,
1124 VALUES = 529,
1125 VALUES_IN_SYM = 530,
1126 VALUES_LESS_SYM = 531,
1127 VARBINARY = 532,
1128 VARCHAR = 533,
1129 VARIANCE_SYM = 534,
1130 VARYING = 535,
1131 VAR_SAMP_SYM = 536,
1132 WHEN_SYM = 537,
1133 WHERE = 538,
1134 WHILE_SYM = 539,
1135 WITH = 540,
1136 WITH_CUBE_SYM = 541,
1137 WITH_ROLLUP_SYM = 542,
1138 WITH_SYSTEM_SYM = 543,
1139 XOR = 544,
1140 YEAR_MONTH_SYM = 545,
1141 ZEROFILL = 546,
1142 IMPOSSIBLE_ACTION = 547,
1143 BODY_SYM = 548,
1144 COMMENT_SYM = 549,
1145 ELSIF_SYM = 550,
1146 GOTO_SYM = 551,
1147 OTHERS_SYM = 552,
1148 PACKAGE_SYM = 553,
1149 RAISE_SYM = 554,
1150 ROWTYPE_SYM = 555,
1151 ACTION = 556,
1152 ADMIN_SYM = 557,
1153 ADDDATE_SYM = 558,
1154 AFTER_SYM = 559,
1155 AGAINST = 560,
1156 AGGREGATE_SYM = 561,
1157 ALGORITHM_SYM = 562,
1158 ALWAYS_SYM = 563,
1159 ANY_SYM = 564,
1160 ASCII_SYM = 565,
1161 AT_SYM = 566,
1162 ATOMIC_SYM = 567,
1163 AUTHORS_SYM = 568,
1164 AUTOEXTEND_SIZE_SYM = 569,
1165 AUTO_INC = 570,
1166 AUTO_SYM = 571,
1167 AVG_ROW_LENGTH = 572,
1168 AVG_SYM = 573,
1169 BACKUP_SYM = 574,
1170 BEGIN_SYM = 575,
1171 BINLOG_SYM = 576,
1172 BIT_SYM = 577,
1173 BLOCK_SYM = 578,
1174 BOOL_SYM = 579,
1175 BOOLEAN_SYM = 580,
1176 BTREE_SYM = 581,
1177 BYTE_SYM = 582,
1178 CACHE_SYM = 583,
1179 CASCADED = 584,
1180 CATALOG_NAME_SYM = 585,
1181 CHAIN_SYM = 586,
1182 CHANGED = 587,
1183 CHARSET = 588,
1184 CHECKPOINT_SYM = 589,
1185 CHECKSUM_SYM = 590,
1186 CIPHER_SYM = 591,
1187 CLASS_ORIGIN_SYM = 592,
1188 CLIENT_SYM = 593,
1189 CLOB = 594,
1190 CLOSE_SYM = 595,
1191 COALESCE = 596,
1192 CODE_SYM = 597,
1193 COLLATION_SYM = 598,
1194 COLUMNS = 599,
1195 COLUMN_ADD_SYM = 600,
1196 COLUMN_CHECK_SYM = 601,
1197 COLUMN_CREATE_SYM = 602,
1198 COLUMN_DELETE_SYM = 603,
1199 COLUMN_GET_SYM = 604,
1200 COLUMN_SYM = 605,
1201 COLUMN_NAME_SYM = 606,
1202 COMMITTED_SYM = 607,
1203 COMMIT_SYM = 608,
1204 COMPACT_SYM = 609,
1205 COMPLETION_SYM = 610,
1206 COMPRESSED_SYM = 611,
1207 CONCURRENT = 612,
1208 CONNECTION_SYM = 613,
1209 CONSISTENT_SYM = 614,
1210 CONSTRAINT_CATALOG_SYM = 615,
1211 CONSTRAINT_NAME_SYM = 616,
1212 CONSTRAINT_SCHEMA_SYM = 617,
1213 CONTAINS_SYM = 618,
1214 CONTEXT_SYM = 619,
1215 CONTRIBUTORS_SYM = 620,
1216 CPU_SYM = 621,
1217 CUBE_SYM = 622,
1218 CURRENT_SYM = 623,
1219 CURRENT_POS_SYM = 624,
1220 CURSOR_NAME_SYM = 625,
1221 CYCLE_SYM = 626,
1222 DATAFILE_SYM = 627,
1223 DATA_SYM = 628,
1224 DATETIME = 629,
1225 DATE_FORMAT_SYM = 630,
1226 DATE_SYM = 631,
1227 DAY_SYM = 632,
1228 DEALLOCATE_SYM = 633,
1229 DECODE_SYM = 634,
1230 DEFINER_SYM = 635,
1231 DELAYED_SYM = 636,
1232 DELAY_KEY_WRITE_SYM = 637,
1233 DES_KEY_FILE = 638,
1234 DIAGNOSTICS_SYM = 639,
1235 DIRECTORY_SYM = 640,
1236 DISABLE_SYM = 641,
1237 DISCARD = 642,
1238 DISK_SYM = 643,
1239 DO_SYM = 644,
1240 DUMPFILE = 645,
1241 DUPLICATE_SYM = 646,
1242 DYNAMIC_SYM = 647,
1243 ENABLE_SYM = 648,
1244 END = 649,
1245 ENDS_SYM = 650,
1246 ENGINES_SYM = 651,
1247 ENGINE_SYM = 652,
1248 ENUM = 653,
1249 ERROR_SYM = 654,
1250 ERRORS = 655,
1251 ESCAPE_SYM = 656,
1252 EVENTS_SYM = 657,
1253 EVENT_SYM = 658,
1254 EVERY_SYM = 659,
1255 EXCHANGE_SYM = 660,
1256 EXAMINED_SYM = 661,
1257 EXCLUDE_SYM = 662,
1258 EXECUTE_SYM = 663,
1259 EXCEPTION_SYM = 664,
1260 EXIT_SYM = 665,
1261 EXPANSION_SYM = 666,
1262 EXPORT_SYM = 667,
1263 EXTENDED_SYM = 668,
1264 EXTENT_SIZE_SYM = 669,
1265 FAST_SYM = 670,
1266 FAULTS_SYM = 671,
1267 FILE_SYM = 672,
1268 FIRST_SYM = 673,
1269 FIXED_SYM = 674,
1270 FLUSH_SYM = 675,
1271 FOLLOWS_SYM = 676,
1272 FOLLOWING_SYM = 677,
1273 FORCE_SYM = 678,
1274 FORMAT_SYM = 679,
1275 FOUND_SYM = 680,
1276 FULL = 681,
1277 FUNCTION_SYM = 682,
1278 GENERAL = 683,
1279 GENERATED_SYM = 684,
1280 GEOMETRYCOLLECTION = 685,
1281 GEOMETRY_SYM = 686,
1282 GET_FORMAT = 687,
1283 GET_SYM = 688,
1284 GLOBAL_SYM = 689,
1285 GRANTS = 690,
1286 HANDLER_SYM = 691,
1287 HARD_SYM = 692,
1288 HASH_SYM = 693,
1289 HELP_SYM = 694,
1290 HIGH_PRIORITY = 695,
1291 HISTORY_SYM = 696,
1292 HOST_SYM = 697,
1293 HOSTS_SYM = 698,
1294 HOUR_SYM = 699,
1295 ID_SYM = 700,
1296 IDENTIFIED_SYM = 701,
1297 IGNORE_SERVER_IDS_SYM = 702,
1298 IMMEDIATE_SYM = 703,
1299 IMPORT = 704,
1300 INCREMENT_SYM = 705,
1301 INDEXES = 706,
1302 INITIAL_SIZE_SYM = 707,
1303 INSERT_METHOD = 708,
1304 INSTALL_SYM = 709,
1305 INVOKER_SYM = 710,
1306 IO_SYM = 711,
1307 IPC_SYM = 712,
1308 ISOLATION = 713,
1309 ISOPEN_SYM = 714,
1310 ISSUER_SYM = 715,
1311 INVISIBLE_SYM = 716,
1312 JSON_SYM = 717,
1313 KEY_BLOCK_SIZE = 718,
1314 LANGUAGE_SYM = 719,
1315 LAST_SYM = 720,
1316 LAST_VALUE = 721,
1317 LASTVAL_SYM = 722,
1318 LEAVES = 723,
1319 LESS_SYM = 724,
1320 LEVEL_SYM = 725,
1321 LINESTRING = 726,
1322 LIST_SYM = 727,
1323 LOCAL_SYM = 728,
1324 LOCKS_SYM = 729,
1325 LOGFILE_SYM = 730,
1326 LOGS_SYM = 731,
1327 MASTER_CONNECT_RETRY_SYM = 732,
1328 MASTER_DELAY_SYM = 733,
1329 MASTER_GTID_POS_SYM = 734,
1330 MASTER_HOST_SYM = 735,
1331 MASTER_LOG_FILE_SYM = 736,
1332 MASTER_LOG_POS_SYM = 737,
1333 MASTER_PASSWORD_SYM = 738,
1334 MASTER_PORT_SYM = 739,
1335 MASTER_SERVER_ID_SYM = 740,
1336 MASTER_SSL_CAPATH_SYM = 741,
1337 MASTER_SSL_CA_SYM = 742,
1338 MASTER_SSL_CERT_SYM = 743,
1339 MASTER_SSL_CIPHER_SYM = 744,
1340 MASTER_SSL_CRL_SYM = 745,
1341 MASTER_SSL_CRLPATH_SYM = 746,
1342 MASTER_SSL_KEY_SYM = 747,
1343 MASTER_SSL_SYM = 748,
1344 MASTER_SYM = 749,
1345 MASTER_USER_SYM = 750,
1346 MASTER_USE_GTID_SYM = 751,
1347 MASTER_HEARTBEAT_PERIOD_SYM = 752,
1348 MAX_CONNECTIONS_PER_HOUR = 753,
1349 MAX_QUERIES_PER_HOUR = 754,
1350 MAX_ROWS = 755,
1351 MAX_SIZE_SYM = 756,
1352 MAX_UPDATES_PER_HOUR = 757,
1353 MAX_STATEMENT_TIME_SYM = 758,
1354 MAX_USER_CONNECTIONS_SYM = 759,
1355 MEDIUM_SYM = 760,
1356 MEMORY_SYM = 761,
1357 MERGE_SYM = 762,
1358 MESSAGE_TEXT_SYM = 763,
1359 MICROSECOND_SYM = 764,
1360 MIGRATE_SYM = 765,
1361 MINUTE_SYM = 766,
1362 MINVALUE_SYM = 767,
1363 MIN_ROWS = 768,
1364 MODE_SYM = 769,
1365 MODIFY_SYM = 770,
1366 MONTH_SYM = 771,
1367 MULTILINESTRING = 772,
1368 MULTIPOINT = 773,
1369 MULTIPOLYGON = 774,
1370 MUTEX_SYM = 775,
1371 MYSQL_SYM = 776,
1372 MYSQL_ERRNO_SYM = 777,
1373 NAMES_SYM = 778,
1374 NAME_SYM = 779,
1375 NATIONAL_SYM = 780,
1376 NCHAR_SYM = 781,
1377 NEW_SYM = 782,
1378 NEXT_SYM = 783,
1379 NEXTVAL_SYM = 784,
1380 NOCACHE_SYM = 785,
1381 NOCYCLE_SYM = 786,
1382 NODEGROUP_SYM = 787,
1383 NONE_SYM = 788,
1384 NOTFOUND_SYM = 789,
1385 NO_SYM = 790,
1386 NOMAXVALUE_SYM = 791,
1387 NOMINVALUE_SYM = 792,
1388 NO_WAIT_SYM = 793,
1389 NOWAIT_SYM = 794,
1390 NUMBER_SYM = 795,
1391 NVARCHAR_SYM = 796,
1392 OF_SYM = 797,
1393 OFFSET_SYM = 798,
1394 OLD_PASSWORD_SYM = 799,
1395 ONE_SYM = 800,
1396 ONLY_SYM = 801,
1397 ONLINE_SYM = 802,
1398 OPEN_SYM = 803,
1399 OPTIONS_SYM = 804,
1400 OPTION = 805,
1401 OWNER_SYM = 806,
1402 PACK_KEYS_SYM = 807,
1403 PAGE_SYM = 808,
1404 PARSER_SYM = 809,
1405 PARTIAL = 810,
1406 PARTITIONS_SYM = 811,
1407 PARTITIONING_SYM = 812,
1408 PASSWORD_SYM = 813,
1409 PERIOD_SYM = 814,
1410 PERSISTENT_SYM = 815,
1411 PHASE_SYM = 816,
1412 PLUGINS_SYM = 817,
1413 PLUGIN_SYM = 818,
1414 POINT_SYM = 819,
1415 POLYGON = 820,
1416 PORT_SYM = 821,
1417 PRECEDES_SYM = 822,
1418 PRECEDING_SYM = 823,
1419 PREPARE_SYM = 824,
1420 PRESERVE_SYM = 825,
1421 PREV_SYM = 826,
1422 PREVIOUS_SYM = 827,
1423 PRIVILEGES = 828,
1424 PROCESS = 829,
1425 PROCESSLIST_SYM = 830,
1426 PROFILE_SYM = 831,
1427 PROFILES_SYM = 832,
1428 PROXY_SYM = 833,
1429 QUARTER_SYM = 834,
1430 QUERY_SYM = 835,
1431 QUICK = 836,
1432 RAW = 837,
1433 READ_ONLY_SYM = 838,
1434 REBUILD_SYM = 839,
1435 RECOVER_SYM = 840,
1436 REDOFILE_SYM = 841,
1437 REDO_BUFFER_SIZE_SYM = 842,
1438 REDUNDANT_SYM = 843,
1439 RELAY = 844,
1440 RELAYLOG_SYM = 845,
1441 RELAY_LOG_FILE_SYM = 846,
1442 RELAY_LOG_POS_SYM = 847,
1443 RELAY_THREAD = 848,
1444 RELOAD = 849,
1445 REMOVE_SYM = 850,
1446 REORGANIZE_SYM = 851,
1447 REPAIR = 852,
1448 REPEATABLE_SYM = 853,
1449 REPLICATION = 854,
1450 RESET_SYM = 855,
1451 RESTART_SYM = 856,
1452 RESOURCES = 857,
1453 RESTORE_SYM = 858,
1454 RESUME_SYM = 859,
1455 RETURNED_SQLSTATE_SYM = 860,
1456 RETURNS_SYM = 861,
1457 REUSE_SYM = 862,
1458 REVERSE_SYM = 863,
1459 ROLE_SYM = 864,
1460 ROLLBACK_SYM = 865,
1461 ROLLUP_SYM = 866,
1462 ROUTINE_SYM = 867,
1463 ROWCOUNT_SYM = 868,
1464 ROW_SYM = 869,
1465 ROW_COUNT_SYM = 870,
1466 ROW_FORMAT_SYM = 871,
1467 RTREE_SYM = 872,
1468 SAVEPOINT_SYM = 873,
1469 SCHEDULE_SYM = 874,
1470 SCHEMA_NAME_SYM = 875,
1471 SECOND_SYM = 876,
1472 SECURITY_SYM = 877,
1473 SEQUENCE_SYM = 878,
1474 SERIALIZABLE_SYM = 879,
1475 SERIAL_SYM = 880,
1476 SESSION_SYM = 881,
1477 SERVER_SYM = 882,
1478 SETVAL_SYM = 883,
1479 SHARE_SYM = 884,
1480 SHUTDOWN = 885,
1481 SIGNED_SYM = 886,
1482 SIMPLE_SYM = 887,
1483 SLAVE = 888,
1484 SLAVES = 889,
1485 SLAVE_POS_SYM = 890,
1486 SLOW = 891,
1487 SNAPSHOT_SYM = 892,
1488 SOCKET_SYM = 893,
1489 SOFT_SYM = 894,
1490 SONAME_SYM = 895,
1491 SOUNDS_SYM = 896,
1492 SOURCE_SYM = 897,
1493 SQL_BUFFER_RESULT = 898,
1494 SQL_CACHE_SYM = 899,
1495 SQL_CALC_FOUND_ROWS = 900,
1496 SQL_NO_CACHE_SYM = 901,
1497 SQL_THREAD = 902,
1498 STARTS_SYM = 903,
1499 START_SYM = 904,
1500 STATEMENT_SYM = 905,
1501 STATUS_SYM = 906,
1502 STOP_SYM = 907,
1503 STORAGE_SYM = 908,
1504 STORED_SYM = 909,
1505 STRING_SYM = 910,
1506 SUBCLASS_ORIGIN_SYM = 911,
1507 SUBDATE_SYM = 912,
1508 SUBJECT_SYM = 913,
1509 SUBPARTITIONS_SYM = 914,
1510 SUBPARTITION_SYM = 915,
1511 SUPER_SYM = 916,
1512 SUSPEND_SYM = 917,
1513 SWAPS_SYM = 918,
1514 SWITCHES_SYM = 919,
1515 SYSTEM = 920,
1516 SYSTEM_TIME_SYM = 921,
1517 TABLES = 922,
1518 TABLESPACE = 923,
1519 TABLE_CHECKSUM_SYM = 924,
1520 TABLE_NAME_SYM = 925,
1521 TEMPORARY = 926,
1522 TEMPTABLE_SYM = 927,
1523 TEXT_SYM = 928,
1524 THAN_SYM = 929,
1525 TIES_SYM = 930,
1526 TIMESTAMP = 931,
1527 TIMESTAMP_ADD = 932,
1528 TIMESTAMP_DIFF = 933,
1529 TIME_SYM = 934,
1530 TRANSACTION_SYM = 935,
1531 TRANSACTIONAL_SYM = 936,
1532 TRIGGERS_SYM = 937,
1533 TRIM_ORACLE = 938,
1534 TRUNCATE_SYM = 939,
1535 TYPES_SYM = 940,
1536 TYPE_SYM = 941,
1537 UDF_RETURNS_SYM = 942,
1538 UNBOUNDED_SYM = 943,
1539 UNCOMMITTED_SYM = 944,
1540 UNDEFINED_SYM = 945,
1541 UNDOFILE_SYM = 946,
1542 UNDO_BUFFER_SIZE_SYM = 947,
1543 UNICODE_SYM = 948,
1544 UNINSTALL_SYM = 949,
1545 UNKNOWN_SYM = 950,
1546 UNTIL_SYM = 951,
1547 UPGRADE_SYM = 952,
1548 USER_SYM = 953,
1549 USE_FRM = 954,
1550 VALUE_SYM = 955,
1551 VARCHAR2 = 956,
1552 VARIABLES = 957,
1553 VERSIONING_SYM = 958,
1554 VIA_SYM = 959,
1555 VIEW_SYM = 960,
1556 VIRTUAL_SYM = 961,
1557 WAIT_SYM = 962,
1558 WARNINGS = 963,
1559 WEEK_SYM = 964,
1560 WEIGHT_STRING_SYM = 965,
1561 WINDOW_SYM = 966,
1562 WITHIN = 967,
1563 WITHOUT = 968,
1564 WORK_SYM = 969,
1565 WRAPPER_SYM = 970,
1566 WRITE_SYM = 971,
1567 X509_SYM = 972,
1568 XA_SYM = 973,
1569 XML_SYM = 974,
1570 YEAR_SYM = 975,
1571 PREC_BELOW_NOT = 976,
1572 PREC_BELOW_IDENTIFIER_OPT_SPECIAL_CASE = 977,
1573 PREC_BELOW_CONTRACTION_TOKEN2 = 978
1574 };
1575#endif
1576/* Tokens. */
1577#define ABORT_SYM 258
1578#define ACCESSIBLE_SYM 259
1579#define ADD 260
1580#define ALL 261
1581#define ALTER 262
1582#define ANALYZE_SYM 263
1583#define AND_AND_SYM 264
1584#define AND_SYM 265
1585#define AS 266
1586#define ASC 267
1587#define ASENSITIVE_SYM 268
1588#define BEFORE_SYM 269
1589#define BETWEEN_SYM 270
1590#define BIGINT 271
1591#define BINARY 272
1592#define BIN_NUM 273
1593#define BIT_AND 274
1594#define BIT_OR 275
1595#define BIT_XOR 276
1596#define BLOB_SYM 277
1597#define BOTH 278
1598#define BY 279
1599#define CALL_SYM 280
1600#define CASCADE 281
1601#define CASE_SYM 282
1602#define CAST_SYM 283
1603#define CHANGE 284
1604#define CHAR_SYM 285
1605#define CHECK_SYM 286
1606#define COLLATE_SYM 287
1607#define CONDITION_SYM 288
1608#define CONSTRAINT 289
1609#define CONTINUE_SYM 290
1610#define CONVERT_SYM 291
1611#define COUNT_SYM 292
1612#define CREATE 293
1613#define CROSS 294
1614#define CUME_DIST_SYM 295
1615#define CURDATE 296
1616#define CURRENT_USER 297
1617#define CURRENT_ROLE 298
1618#define CURSOR_SYM 299
1619#define CURTIME 300
1620#define DATABASE 301
1621#define DATABASES 302
1622#define DATE_ADD_INTERVAL 303
1623#define DATE_SUB_INTERVAL 304
1624#define DAY_HOUR_SYM 305
1625#define DAY_MICROSECOND_SYM 306
1626#define DAY_MINUTE_SYM 307
1627#define DAY_SECOND_SYM 308
1628#define DECIMAL_NUM 309
1629#define DECIMAL_SYM 310
1630#define DECLARE_SYM 311
1631#define DEFAULT 312
1632#define DELETE_DOMAIN_ID_SYM 313
1633#define DELETE_SYM 314
1634#define DENSE_RANK_SYM 315
1635#define DESC 316
1636#define DESCRIBE 317
1637#define DETERMINISTIC_SYM 318
1638#define DISTINCT 319
1639#define DIV_SYM 320
1640#define DOUBLE_SYM 321
1641#define DO_DOMAIN_IDS_SYM 322
1642#define DOT_DOT_SYM 323
1643#define DROP 324
1644#define DUAL_SYM 325
1645#define EACH_SYM 326
1646#define ELSE 327
1647#define ELSEIF_SYM 328
1648#define ENCLOSED 329
1649#define END_OF_INPUT 330
1650#define EQUAL_SYM 331
1651#define ESCAPED 332
1652#define EXCEPT_SYM 333
1653#define EXISTS 334
1654#define EXTRACT_SYM 335
1655#define FALSE_SYM 336
1656#define FETCH_SYM 337
1657#define FIRST_VALUE_SYM 338
1658#define FLOAT_NUM 339
1659#define FLOAT_SYM 340
1660#define FOREIGN 341
1661#define FOR_SYM 342
1662#define FOR_SYSTEM_TIME_SYM 343
1663#define FROM 344
1664#define FULLTEXT_SYM 345
1665#define GE 346
1666#define GRANT 347
1667#define GROUP_SYM 348
1668#define GROUP_CONCAT_SYM 349
1669#define LAG_SYM 350
1670#define LEAD_SYM 351
1671#define HAVING 352
1672#define HEX_NUM 353
1673#define HEX_STRING 354
1674#define HOUR_MICROSECOND_SYM 355
1675#define HOUR_MINUTE_SYM 356
1676#define HOUR_SECOND_SYM 357
1677#define IDENT 358
1678#define IDENT_QUOTED 359
1679#define IF_SYM 360
1680#define IGNORE_DOMAIN_IDS_SYM 361
1681#define IGNORE_SYM 362
1682#define INDEX_SYM 363
1683#define INFILE 364
1684#define INNER_SYM 365
1685#define INOUT_SYM 366
1686#define INSENSITIVE_SYM 367
1687#define INSERT 368
1688#define INTERSECT_SYM 369
1689#define INTERVAL_SYM 370
1690#define INTO 371
1691#define INT_SYM 372
1692#define IN_SYM 373
1693#define IS 374
1694#define ITERATE_SYM 375
1695#define JOIN_SYM 376
1696#define KEYS 377
1697#define KEY_SYM 378
1698#define KILL_SYM 379
1699#define LE 380
1700#define LEADING 381
1701#define LEAVE_SYM 382
1702#define LEFT 383
1703#define LEX_HOSTNAME 384
1704#define LIKE 385
1705#define LIMIT 386
1706#define LINEAR_SYM 387
1707#define LINES 388
1708#define LOAD 389
1709#define LOCATOR_SYM 390
1710#define LOCK_SYM 391
1711#define LONGBLOB 392
1712#define LONGTEXT 393
1713#define LONG_NUM 394
1714#define LONG_SYM 395
1715#define LOOP_SYM 396
1716#define LOW_PRIORITY 397
1717#define MASTER_SSL_VERIFY_SERVER_CERT_SYM 398
1718#define MATCH 399
1719#define MAX_SYM 400
1720#define MAXVALUE_SYM 401
1721#define MEDIAN_SYM 402
1722#define MEDIUMBLOB 403
1723#define MEDIUMINT 404
1724#define MEDIUMTEXT 405
1725#define MINUTE_MICROSECOND_SYM 406
1726#define MINUTE_SECOND_SYM 407
1727#define MIN_SYM 408
1728#define MODIFIES_SYM 409
1729#define MOD_SYM 410
1730#define MYSQL_CONCAT_SYM 411
1731#define NATURAL 412
1732#define NCHAR_STRING 413
1733#define NE 414
1734#define NEG 415
1735#define NOT2_SYM 416
1736#define NOT_SYM 417
1737#define NOW_SYM 418
1738#define NO_WRITE_TO_BINLOG 419
1739#define NTILE_SYM 420
1740#define NULL_SYM 421
1741#define NUM 422
1742#define NUMERIC_SYM 423
1743#define NTH_VALUE_SYM 424
1744#define ON 425
1745#define OPTIMIZE 426
1746#define OPTIONALLY 427
1747#define ORACLE_CONCAT_SYM 428
1748#define OR2_SYM 429
1749#define ORDER_SYM 430
1750#define OR_SYM 431
1751#define OUTER 432
1752#define OUTFILE 433
1753#define OUT_SYM 434
1754#define OVER_SYM 435
1755#define PAGE_CHECKSUM_SYM 436
1756#define PARAM_MARKER 437
1757#define PARSE_VCOL_EXPR_SYM 438
1758#define PARTITION_SYM 439
1759#define PERCENT_RANK_SYM 440
1760#define PERCENTILE_CONT_SYM 441
1761#define PERCENTILE_DISC_SYM 442
1762#define POSITION_SYM 443
1763#define PRECISION 444
1764#define PRIMARY_SYM 445
1765#define PROCEDURE_SYM 446
1766#define PURGE 447
1767#define RANGE_SYM 448
1768#define RANK_SYM 449
1769#define READS_SYM 450
1770#define READ_SYM 451
1771#define READ_WRITE_SYM 452
1772#define REAL 453
1773#define RECURSIVE_SYM 454
1774#define REF_SYSTEM_ID_SYM 455
1775#define REFERENCES 456
1776#define REGEXP 457
1777#define RELEASE_SYM 458
1778#define RENAME 459
1779#define REPEAT_SYM 460
1780#define REPLACE 461
1781#define REQUIRE_SYM 462
1782#define RESIGNAL_SYM 463
1783#define RESTRICT 464
1784#define RETURNING_SYM 465
1785#define RETURN_SYM 466
1786#define REVOKE 467
1787#define RIGHT 468
1788#define ROWS_SYM 469
1789#define ROW_NUMBER_SYM 470
1790#define SECOND_MICROSECOND_SYM 471
1791#define SELECT_SYM 472
1792#define SENSITIVE_SYM 473
1793#define SEPARATOR_SYM 474
1794#define SERVER_OPTIONS 475
1795#define SET 476
1796#define SET_VAR 477
1797#define SHIFT_LEFT 478
1798#define SHIFT_RIGHT 479
1799#define SHOW 480
1800#define SIGNAL_SYM 481
1801#define SMALLINT 482
1802#define SPATIAL_SYM 483
1803#define SPECIFIC_SYM 484
1804#define SQLEXCEPTION_SYM 485
1805#define SQLSTATE_SYM 486
1806#define SQLWARNING_SYM 487
1807#define SQL_BIG_RESULT 488
1808#define SQL_SMALL_RESULT 489
1809#define SQL_SYM 490
1810#define SSL_SYM 491
1811#define STARTING 492
1812#define STATS_AUTO_RECALC_SYM 493
1813#define STATS_PERSISTENT_SYM 494
1814#define STATS_SAMPLE_PAGES_SYM 495
1815#define STDDEV_SAMP_SYM 496
1816#define STD_SYM 497
1817#define STRAIGHT_JOIN 498
1818#define SUBSTRING 499
1819#define SUM_SYM 500
1820#define SYSDATE 501
1821#define TABLE_REF_PRIORITY 502
1822#define TABLE_SYM 503
1823#define TERMINATED 504
1824#define TEXT_STRING 505
1825#define THEN_SYM 506
1826#define TINYBLOB 507
1827#define TINYINT 508
1828#define TINYTEXT 509
1829#define TO_SYM 510
1830#define TRAILING 511
1831#define TRIGGER_SYM 512
1832#define TRIM 513
1833#define TRUE_SYM 514
1834#define ULONGLONG_NUM 515
1835#define UNDERSCORE_CHARSET 516
1836#define UNDO_SYM 517
1837#define UNION_SYM 518
1838#define UNIQUE_SYM 519
1839#define UNLOCK_SYM 520
1840#define UNSIGNED 521
1841#define UPDATE_SYM 522
1842#define USAGE 523
1843#define USE_SYM 524
1844#define USING 525
1845#define UTC_DATE_SYM 526
1846#define UTC_TIMESTAMP_SYM 527
1847#define UTC_TIME_SYM 528
1848#define VALUES 529
1849#define VALUES_IN_SYM 530
1850#define VALUES_LESS_SYM 531
1851#define VARBINARY 532
1852#define VARCHAR 533
1853#define VARIANCE_SYM 534
1854#define VARYING 535
1855#define VAR_SAMP_SYM 536
1856#define WHEN_SYM 537
1857#define WHERE 538
1858#define WHILE_SYM 539
1859#define WITH 540
1860#define WITH_CUBE_SYM 541
1861#define WITH_ROLLUP_SYM 542
1862#define WITH_SYSTEM_SYM 543
1863#define XOR 544
1864#define YEAR_MONTH_SYM 545
1865#define ZEROFILL 546
1866#define IMPOSSIBLE_ACTION 547
1867#define BODY_SYM 548
1868#define COMMENT_SYM 549
1869#define ELSIF_SYM 550
1870#define GOTO_SYM 551
1871#define OTHERS_SYM 552
1872#define PACKAGE_SYM 553
1873#define RAISE_SYM 554
1874#define ROWTYPE_SYM 555
1875#define ACTION 556
1876#define ADMIN_SYM 557
1877#define ADDDATE_SYM 558
1878#define AFTER_SYM 559
1879#define AGAINST 560
1880#define AGGREGATE_SYM 561
1881#define ALGORITHM_SYM 562
1882#define ALWAYS_SYM 563
1883#define ANY_SYM 564
1884#define ASCII_SYM 565
1885#define AT_SYM 566
1886#define ATOMIC_SYM 567
1887#define AUTHORS_SYM 568
1888#define AUTOEXTEND_SIZE_SYM 569
1889#define AUTO_INC 570
1890#define AUTO_SYM 571
1891#define AVG_ROW_LENGTH 572
1892#define AVG_SYM 573
1893#define BACKUP_SYM 574
1894#define BEGIN_SYM 575
1895#define BINLOG_SYM 576
1896#define BIT_SYM 577
1897#define BLOCK_SYM 578
1898#define BOOL_SYM 579
1899#define BOOLEAN_SYM 580
1900#define BTREE_SYM 581
1901#define BYTE_SYM 582
1902#define CACHE_SYM 583
1903#define CASCADED 584
1904#define CATALOG_NAME_SYM 585
1905#define CHAIN_SYM 586
1906#define CHANGED 587
1907#define CHARSET 588
1908#define CHECKPOINT_SYM 589
1909#define CHECKSUM_SYM 590
1910#define CIPHER_SYM 591
1911#define CLASS_ORIGIN_SYM 592
1912#define CLIENT_SYM 593
1913#define CLOB 594
1914#define CLOSE_SYM 595
1915#define COALESCE 596
1916#define CODE_SYM 597
1917#define COLLATION_SYM 598
1918#define COLUMNS 599
1919#define COLUMN_ADD_SYM 600
1920#define COLUMN_CHECK_SYM 601
1921#define COLUMN_CREATE_SYM 602
1922#define COLUMN_DELETE_SYM 603
1923#define COLUMN_GET_SYM 604
1924#define COLUMN_SYM 605
1925#define COLUMN_NAME_SYM 606
1926#define COMMITTED_SYM 607
1927#define COMMIT_SYM 608
1928#define COMPACT_SYM 609
1929#define COMPLETION_SYM 610
1930#define COMPRESSED_SYM 611
1931#define CONCURRENT 612
1932#define CONNECTION_SYM 613
1933#define CONSISTENT_SYM 614
1934#define CONSTRAINT_CATALOG_SYM 615
1935#define CONSTRAINT_NAME_SYM 616
1936#define CONSTRAINT_SCHEMA_SYM 617
1937#define CONTAINS_SYM 618
1938#define CONTEXT_SYM 619
1939#define CONTRIBUTORS_SYM 620
1940#define CPU_SYM 621
1941#define CUBE_SYM 622
1942#define CURRENT_SYM 623
1943#define CURRENT_POS_SYM 624
1944#define CURSOR_NAME_SYM 625
1945#define CYCLE_SYM 626
1946#define DATAFILE_SYM 627
1947#define DATA_SYM 628
1948#define DATETIME 629
1949#define DATE_FORMAT_SYM 630
1950#define DATE_SYM 631
1951#define DAY_SYM 632
1952#define DEALLOCATE_SYM 633
1953#define DECODE_SYM 634
1954#define DEFINER_SYM 635
1955#define DELAYED_SYM 636
1956#define DELAY_KEY_WRITE_SYM 637
1957#define DES_KEY_FILE 638
1958#define DIAGNOSTICS_SYM 639
1959#define DIRECTORY_SYM 640
1960#define DISABLE_SYM 641
1961#define DISCARD 642
1962#define DISK_SYM 643
1963#define DO_SYM 644
1964#define DUMPFILE 645
1965#define DUPLICATE_SYM 646
1966#define DYNAMIC_SYM 647
1967#define ENABLE_SYM 648
1968#define END 649
1969#define ENDS_SYM 650
1970#define ENGINES_SYM 651
1971#define ENGINE_SYM 652
1972#define ENUM 653
1973#define ERROR_SYM 654
1974#define ERRORS 655
1975#define ESCAPE_SYM 656
1976#define EVENTS_SYM 657
1977#define EVENT_SYM 658
1978#define EVERY_SYM 659
1979#define EXCHANGE_SYM 660
1980#define EXAMINED_SYM 661
1981#define EXCLUDE_SYM 662
1982#define EXECUTE_SYM 663
1983#define EXCEPTION_SYM 664
1984#define EXIT_SYM 665
1985#define EXPANSION_SYM 666
1986#define EXPORT_SYM 667
1987#define EXTENDED_SYM 668
1988#define EXTENT_SIZE_SYM 669
1989#define FAST_SYM 670
1990#define FAULTS_SYM 671
1991#define FILE_SYM 672
1992#define FIRST_SYM 673
1993#define FIXED_SYM 674
1994#define FLUSH_SYM 675
1995#define FOLLOWS_SYM 676
1996#define FOLLOWING_SYM 677
1997#define FORCE_SYM 678
1998#define FORMAT_SYM 679
1999#define FOUND_SYM 680
2000#define FULL 681
2001#define FUNCTION_SYM 682
2002#define GENERAL 683
2003#define GENERATED_SYM 684
2004#define GEOMETRYCOLLECTION 685
2005#define GEOMETRY_SYM 686
2006#define GET_FORMAT 687
2007#define GET_SYM 688
2008#define GLOBAL_SYM 689
2009#define GRANTS 690
2010#define HANDLER_SYM 691
2011#define HARD_SYM 692
2012#define HASH_SYM 693
2013#define HELP_SYM 694
2014#define HIGH_PRIORITY 695
2015#define HISTORY_SYM 696
2016#define HOST_SYM 697
2017#define HOSTS_SYM 698
2018#define HOUR_SYM 699
2019#define ID_SYM 700
2020#define IDENTIFIED_SYM 701
2021#define IGNORE_SERVER_IDS_SYM 702
2022#define IMMEDIATE_SYM 703
2023#define IMPORT 704
2024#define INCREMENT_SYM 705
2025#define INDEXES 706
2026#define INITIAL_SIZE_SYM 707
2027#define INSERT_METHOD 708
2028#define INSTALL_SYM 709
2029#define INVOKER_SYM 710
2030#define IO_SYM 711
2031#define IPC_SYM 712
2032#define ISOLATION 713
2033#define ISOPEN_SYM 714
2034#define ISSUER_SYM 715
2035#define INVISIBLE_SYM 716
2036#define JSON_SYM 717
2037#define KEY_BLOCK_SIZE 718
2038#define LANGUAGE_SYM 719
2039#define LAST_SYM 720
2040#define LAST_VALUE 721
2041#define LASTVAL_SYM 722
2042#define LEAVES 723
2043#define LESS_SYM 724
2044#define LEVEL_SYM 725
2045#define LINESTRING 726
2046#define LIST_SYM 727
2047#define LOCAL_SYM 728
2048#define LOCKS_SYM 729
2049#define LOGFILE_SYM 730
2050#define LOGS_SYM 731
2051#define MASTER_CONNECT_RETRY_SYM 732
2052#define MASTER_DELAY_SYM 733
2053#define MASTER_GTID_POS_SYM 734
2054#define MASTER_HOST_SYM 735
2055#define MASTER_LOG_FILE_SYM 736
2056#define MASTER_LOG_POS_SYM 737
2057#define MASTER_PASSWORD_SYM 738
2058#define MASTER_PORT_SYM 739
2059#define MASTER_SERVER_ID_SYM 740
2060#define MASTER_SSL_CAPATH_SYM 741
2061#define MASTER_SSL_CA_SYM 742
2062#define MASTER_SSL_CERT_SYM 743
2063#define MASTER_SSL_CIPHER_SYM 744
2064#define MASTER_SSL_CRL_SYM 745
2065#define MASTER_SSL_CRLPATH_SYM 746
2066#define MASTER_SSL_KEY_SYM 747
2067#define MASTER_SSL_SYM 748
2068#define MASTER_SYM 749
2069#define MASTER_USER_SYM 750
2070#define MASTER_USE_GTID_SYM 751
2071#define MASTER_HEARTBEAT_PERIOD_SYM 752
2072#define MAX_CONNECTIONS_PER_HOUR 753
2073#define MAX_QUERIES_PER_HOUR 754
2074#define MAX_ROWS 755
2075#define MAX_SIZE_SYM 756
2076#define MAX_UPDATES_PER_HOUR 757
2077#define MAX_STATEMENT_TIME_SYM 758
2078#define MAX_USER_CONNECTIONS_SYM 759
2079#define MEDIUM_SYM 760
2080#define MEMORY_SYM 761
2081#define MERGE_SYM 762
2082#define MESSAGE_TEXT_SYM 763
2083#define MICROSECOND_SYM 764
2084#define MIGRATE_SYM 765
2085#define MINUTE_SYM 766
2086#define MINVALUE_SYM 767
2087#define MIN_ROWS 768
2088#define MODE_SYM 769
2089#define MODIFY_SYM 770
2090#define MONTH_SYM 771
2091#define MULTILINESTRING 772
2092#define MULTIPOINT 773
2093#define MULTIPOLYGON 774
2094#define MUTEX_SYM 775
2095#define MYSQL_SYM 776
2096#define MYSQL_ERRNO_SYM 777
2097#define NAMES_SYM 778
2098#define NAME_SYM 779
2099#define NATIONAL_SYM 780
2100#define NCHAR_SYM 781
2101#define NEW_SYM 782
2102#define NEXT_SYM 783
2103#define NEXTVAL_SYM 784
2104#define NOCACHE_SYM 785
2105#define NOCYCLE_SYM 786
2106#define NODEGROUP_SYM 787
2107#define NONE_SYM 788
2108#define NOTFOUND_SYM 789
2109#define NO_SYM 790
2110#define NOMAXVALUE_SYM 791
2111#define NOMINVALUE_SYM 792
2112#define NO_WAIT_SYM 793
2113#define NOWAIT_SYM 794
2114#define NUMBER_SYM 795
2115#define NVARCHAR_SYM 796
2116#define OF_SYM 797
2117#define OFFSET_SYM 798
2118#define OLD_PASSWORD_SYM 799
2119#define ONE_SYM 800
2120#define ONLY_SYM 801
2121#define ONLINE_SYM 802
2122#define OPEN_SYM 803
2123#define OPTIONS_SYM 804
2124#define OPTION 805
2125#define OWNER_SYM 806
2126#define PACK_KEYS_SYM 807
2127#define PAGE_SYM 808
2128#define PARSER_SYM 809
2129#define PARTIAL 810
2130#define PARTITIONS_SYM 811
2131#define PARTITIONING_SYM 812
2132#define PASSWORD_SYM 813
2133#define PERIOD_SYM 814
2134#define PERSISTENT_SYM 815
2135#define PHASE_SYM 816
2136#define PLUGINS_SYM 817
2137#define PLUGIN_SYM 818
2138#define POINT_SYM 819
2139#define POLYGON 820
2140#define PORT_SYM 821
2141#define PRECEDES_SYM 822
2142#define PRECEDING_SYM 823
2143#define PREPARE_SYM 824
2144#define PRESERVE_SYM 825
2145#define PREV_SYM 826
2146#define PREVIOUS_SYM 827
2147#define PRIVILEGES 828
2148#define PROCESS 829
2149#define PROCESSLIST_SYM 830
2150#define PROFILE_SYM 831
2151#define PROFILES_SYM 832
2152#define PROXY_SYM 833
2153#define QUARTER_SYM 834
2154#define QUERY_SYM 835
2155#define QUICK 836
2156#define RAW 837
2157#define READ_ONLY_SYM 838
2158#define REBUILD_SYM 839
2159#define RECOVER_SYM 840
2160#define REDOFILE_SYM 841
2161#define REDO_BUFFER_SIZE_SYM 842
2162#define REDUNDANT_SYM 843
2163#define RELAY 844
2164#define RELAYLOG_SYM 845
2165#define RELAY_LOG_FILE_SYM 846
2166#define RELAY_LOG_POS_SYM 847
2167#define RELAY_THREAD 848
2168#define RELOAD 849
2169#define REMOVE_SYM 850
2170#define REORGANIZE_SYM 851
2171#define REPAIR 852
2172#define REPEATABLE_SYM 853
2173#define REPLICATION 854
2174#define RESET_SYM 855
2175#define RESTART_SYM 856
2176#define RESOURCES 857
2177#define RESTORE_SYM 858
2178#define RESUME_SYM 859
2179#define RETURNED_SQLSTATE_SYM 860
2180#define RETURNS_SYM 861
2181#define REUSE_SYM 862
2182#define REVERSE_SYM 863
2183#define ROLE_SYM 864
2184#define ROLLBACK_SYM 865
2185#define ROLLUP_SYM 866
2186#define ROUTINE_SYM 867
2187#define ROWCOUNT_SYM 868
2188#define ROW_SYM 869
2189#define ROW_COUNT_SYM 870
2190#define ROW_FORMAT_SYM 871
2191#define RTREE_SYM 872
2192#define SAVEPOINT_SYM 873
2193#define SCHEDULE_SYM 874
2194#define SCHEMA_NAME_SYM 875
2195#define SECOND_SYM 876
2196#define SECURITY_SYM 877
2197#define SEQUENCE_SYM 878
2198#define SERIALIZABLE_SYM 879
2199#define SERIAL_SYM 880
2200#define SESSION_SYM 881
2201#define SERVER_SYM 882
2202#define SETVAL_SYM 883
2203#define SHARE_SYM 884
2204#define SHUTDOWN 885
2205#define SIGNED_SYM 886
2206#define SIMPLE_SYM 887
2207#define SLAVE 888
2208#define SLAVES 889
2209#define SLAVE_POS_SYM 890
2210#define SLOW 891
2211#define SNAPSHOT_SYM 892
2212#define SOCKET_SYM 893
2213#define SOFT_SYM 894
2214#define SONAME_SYM 895
2215#define SOUNDS_SYM 896
2216#define SOURCE_SYM 897
2217#define SQL_BUFFER_RESULT 898
2218#define SQL_CACHE_SYM 899
2219#define SQL_CALC_FOUND_ROWS 900
2220#define SQL_NO_CACHE_SYM 901
2221#define SQL_THREAD 902
2222#define STARTS_SYM 903
2223#define START_SYM 904
2224#define STATEMENT_SYM 905
2225#define STATUS_SYM 906
2226#define STOP_SYM 907
2227#define STORAGE_SYM 908
2228#define STORED_SYM 909
2229#define STRING_SYM 910
2230#define SUBCLASS_ORIGIN_SYM 911
2231#define SUBDATE_SYM 912
2232#define SUBJECT_SYM 913
2233#define SUBPARTITIONS_SYM 914
2234#define SUBPARTITION_SYM 915
2235#define SUPER_SYM 916
2236#define SUSPEND_SYM 917
2237#define SWAPS_SYM 918
2238#define SWITCHES_SYM 919
2239#define SYSTEM 920
2240#define SYSTEM_TIME_SYM 921
2241#define TABLES 922
2242#define TABLESPACE 923
2243#define TABLE_CHECKSUM_SYM 924
2244#define TABLE_NAME_SYM 925
2245#define TEMPORARY 926
2246#define TEMPTABLE_SYM 927
2247#define TEXT_SYM 928
2248#define THAN_SYM 929
2249#define TIES_SYM 930
2250#define TIMESTAMP 931
2251#define TIMESTAMP_ADD 932
2252#define TIMESTAMP_DIFF 933
2253#define TIME_SYM 934
2254#define TRANSACTION_SYM 935
2255#define TRANSACTIONAL_SYM 936
2256#define TRIGGERS_SYM 937
2257#define TRIM_ORACLE 938
2258#define TRUNCATE_SYM 939
2259#define TYPES_SYM 940
2260#define TYPE_SYM 941
2261#define UDF_RETURNS_SYM 942
2262#define UNBOUNDED_SYM 943
2263#define UNCOMMITTED_SYM 944
2264#define UNDEFINED_SYM 945
2265#define UNDOFILE_SYM 946
2266#define UNDO_BUFFER_SIZE_SYM 947
2267#define UNICODE_SYM 948
2268#define UNINSTALL_SYM 949
2269#define UNKNOWN_SYM 950
2270#define UNTIL_SYM 951
2271#define UPGRADE_SYM 952
2272#define USER_SYM 953
2273#define USE_FRM 954
2274#define VALUE_SYM 955
2275#define VARCHAR2 956
2276#define VARIABLES 957
2277#define VERSIONING_SYM 958
2278#define VIA_SYM 959
2279#define VIEW_SYM 960
2280#define VIRTUAL_SYM 961
2281#define WAIT_SYM 962
2282#define WARNINGS 963
2283#define WEEK_SYM 964
2284#define WEIGHT_STRING_SYM 965
2285#define WINDOW_SYM 966
2286#define WITHIN 967
2287#define WITHOUT 968
2288#define WORK_SYM 969
2289#define WRAPPER_SYM 970
2290#define WRITE_SYM 971
2291#define X509_SYM 972
2292#define XA_SYM 973
2293#define XML_SYM 974
2294#define YEAR_SYM 975
2295#define PREC_BELOW_NOT 976
2296#define PREC_BELOW_IDENTIFIER_OPT_SPECIAL_CASE 977
2297#define PREC_BELOW_CONTRACTION_TOKEN2 978
2298
2299/* Value type. */
2300#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
2301
2302union YYSTYPE
2303{
2304#line 771 "/workspace/server/sql/sql_yacc.yy" /* yacc.c:355 */
2305
2306 int num;
2307 ulong ulong_num;
2308 ulonglong ulonglong_number;
2309 longlong longlong_number;
2310 uint sp_instr_addr;
2311
2312 /* structs */
2313 LEX_CSTRING lex_str;
2314 Lex_ident_cli_st kwd;
2315 Lex_ident_cli_st ident_cli;
2316 Lex_ident_sys_st ident_sys;
2317 Lex_string_with_metadata_st lex_string_with_metadata;
2318 Lex_spblock_st spblock;
2319 Lex_spblock_handlers_st spblock_handlers;
2320 Lex_length_and_dec_st Lex_length_and_dec;
2321 Lex_cast_type_st Lex_cast_type;
2322 Lex_field_type_st Lex_field_type;
2323 Lex_dyncol_type_st Lex_dyncol_type;
2324 Lex_for_loop_st for_loop;
2325 Lex_for_loop_bounds_st for_loop_bounds;
2326 Lex_trim_st trim;
2327 struct
2328 {
2329 LEX_CSTRING name;
2330 uint offset;
2331 } sp_cursor_name_and_offset;
2332 vers_history_point_t vers_history_point;
2333
2334 /* pointers */
2335 Create_field *create_field;
2336 Spvar_definition *spvar_definition;
2337 Row_definition_list *spvar_definition_list;
2338 const Type_handler *type_handler;
2339 CHARSET_INFO *charset;
2340 Condition_information_item *cond_info_item;
2341 DYNCALL_CREATE_DEF *dyncol_def;
2342 Diagnostics_information *diag_info;
2343 Item *item;
2344 Item_num *item_num;
2345 Item_param *item_param;
2346 Item_basic_constant *item_basic_constant;
2347 Key_part_spec *key_part;
2348 LEX *lex;
2349 sp_assignment_lex *assignment_lex;
2350 class sp_lex_cursor *sp_cursor_stmt;
2351 LEX_CSTRING *lex_str_ptr;
2352 LEX_USER *lex_user;
2353 List<Condition_information_item> *cond_info_list;
2354 List<DYNCALL_CREATE_DEF> *dyncol_def_list;
2355 List<Item> *item_list;
2356 List<sp_assignment_lex> *sp_assignment_lex_list;
2357 List<Statement_information_item> *stmt_info_list;
2358 List<String> *string_list;
2359 List<LEX_CSTRING> *lex_str_list;
2360 Statement_information_item *stmt_info_item;
2361 String *string;
2362 TABLE_LIST *table_list;
2363 Table_ident *table;
2364 Qualified_column_ident *qualified_column_ident;
2365 char *simple_string;
2366 const char *const_simple_string;
2367 chooser_compare_func_creator boolfunc2creator;
2368 class my_var *myvar;
2369 class sp_condition_value *spcondvalue;
2370 class sp_head *sphead;
2371 class sp_name *spname;
2372 class sp_variable *spvar;
2373 class With_clause *with_clause;
2374 class Virtual_column_info *virtual_column;
2375
2376 handlerton *db_type;
2377 st_select_lex *select_lex;
2378 struct p_elem_val *p_elem_value;
2379 class Window_frame *window_frame;
2380 class Window_frame_bound *window_frame_bound;
2381 udf_func *udf;
2382 st_trg_execution_order trg_execution_order;
2383
2384 /* enums */
2385 enum enum_view_suid view_suid;
2386 enum sub_select_type unit_type;
2387 enum Condition_information_item::Name cond_info_item_name;
2388 enum enum_diag_condition_item_name diag_condition_item_name;
2389 enum Diagnostics_information::Which_area diag_area;
2390 enum Field::geometry_type geom_type;
2391 enum enum_fk_option m_fk_option;
2392 enum Item_udftype udf_type;
2393 enum Key::Keytype key_type;
2394 enum Statement_information_item::Name stmt_info_item_name;
2395 enum enum_filetype filetype;
2396 enum enum_tx_isolation tx_isolation;
2397 enum enum_var_type var_type;
2398 enum enum_yes_no_unknown m_yes_no_unk;
2399 enum ha_choice choice;
2400 enum ha_key_alg key_alg;
2401 enum ha_rkey_function ha_rkey_mode;
2402 enum index_hint_type index_hint;
2403 enum interval_type interval, interval_time_st;
2404 enum row_type row_type;
2405 enum sp_variable::enum_mode spvar_mode;
2406 enum thr_lock_type lock_type;
2407 enum enum_mysql_timestamp_type date_time_type;
2408 enum Window_frame_bound::Bound_precedence_type bound_precedence_type;
2409 enum Window_frame::Frame_units frame_units;
2410 enum Window_frame::Frame_exclusion frame_exclusion;
2411 enum trigger_order_type trigger_action_order_type;
2412 DDL_options_st object_ddl_options;
2413 enum vers_sys_type_t vers_range_unit;
2414 enum Column_definition::enum_column_versioning vers_column_versioning;
2415
2416#line 2417 "/workspace/server/build/sql/sql_yacc.cc" /* yacc.c:355 */
2417};
2418
2419typedef union YYSTYPE YYSTYPE;
2420# define YYSTYPE_IS_TRIVIAL 1
2421# define YYSTYPE_IS_DECLARED 1
2422#endif
2423
2424
2425
2426int MYSQLparse (THD *thd);
2427
2428#endif /* !YY_MYSQL_WORKSPACE_SERVER_BUILD_SQL_SQL_YACC_H_INCLUDED */
2429
2430/* Copy the second part of user declarations. */
2431#line 883 "/workspace/server/sql/sql_yacc.yy" /* yacc.c:358 */
2432
2433bool my_yyoverflow(short **a, YYSTYPE **b, size_t *yystacksize);
2434
2435#line 2436 "/workspace/server/build/sql/sql_yacc.cc" /* yacc.c:358 */
2436
2437#ifdef short
2438# undef short
2439#endif
2440
2441#ifdef YYTYPE_UINT8
2442typedef YYTYPE_UINT8 yytype_uint8;
2443#else
2444typedef unsigned char yytype_uint8;
2445#endif
2446
2447#ifdef YYTYPE_INT8
2448typedef YYTYPE_INT8 yytype_int8;
2449#else
2450typedef signed char yytype_int8;
2451#endif
2452
2453#ifdef YYTYPE_UINT16
2454typedef YYTYPE_UINT16 yytype_uint16;
2455#else
2456typedef unsigned short int yytype_uint16;
2457#endif
2458
2459#ifdef YYTYPE_INT16
2460typedef YYTYPE_INT16 yytype_int16;
2461#else
2462typedef short int yytype_int16;
2463#endif
2464
2465#ifndef YYSIZE_T
2466# ifdef __SIZE_TYPE__
2467# define YYSIZE_T __SIZE_TYPE__
2468# elif defined size_t
2469# define YYSIZE_T size_t
2470# elif ! defined YYSIZE_T
2471# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
2472# define YYSIZE_T size_t
2473# else
2474# define YYSIZE_T unsigned int
2475# endif
2476#endif
2477
2478#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
2479
2480#ifndef YY_
2481# if defined YYENABLE_NLS && YYENABLE_NLS
2482# if ENABLE_NLS
2483# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
2484# define YY_(Msgid) dgettext ("bison-runtime", Msgid)
2485# endif
2486# endif
2487# ifndef YY_
2488# define YY_(Msgid) Msgid
2489# endif
2490#endif
2491
2492#ifndef YY_ATTRIBUTE
2493# if (defined __GNUC__ \
2494 && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__))) \
2495 || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
2496# define YY_ATTRIBUTE(Spec) __attribute__(Spec)
2497# else
2498# define YY_ATTRIBUTE(Spec) /* empty */
2499# endif
2500#endif
2501
2502#ifndef YY_ATTRIBUTE_PURE
2503# define YY_ATTRIBUTE_PURE YY_ATTRIBUTE ((__pure__))
2504#endif
2505
2506#ifndef YY_ATTRIBUTE_UNUSED
2507# define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
2508#endif
2509
2510#if !defined _Noreturn \
2511 && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
2512# if defined _MSC_VER && 1200 <= _MSC_VER
2513# define _Noreturn __declspec (noreturn)
2514# else
2515# define _Noreturn YY_ATTRIBUTE ((__noreturn__))
2516# endif
2517#endif
2518
2519/* Suppress unused-variable warnings by "using" E. */
2520#if ! defined lint || defined __GNUC__
2521# define YYUSE(E) ((void) (E))
2522#else
2523# define YYUSE(E) /* empty */
2524#endif
2525
2526#if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
2527/* Suppress an incorrect diagnostic about yylval being uninitialized. */
2528# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
2529 _Pragma ("GCC diagnostic push") \
2530 _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
2531 _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
2532# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
2533 _Pragma ("GCC diagnostic pop")
2534#else
2535# define YY_INITIAL_VALUE(Value) Value
2536#endif
2537#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
2538# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
2539# define YY_IGNORE_MAYBE_UNINITIALIZED_END
2540#endif
2541#ifndef YY_INITIAL_VALUE
2542# define YY_INITIAL_VALUE(Value) /* Nothing. */
2543#endif
2544
2545
2546#if ! defined yyoverflow || YYERROR_VERBOSE
2547
2548/* The parser invokes alloca or malloc; define the necessary symbols. */
2549
2550# ifdef YYSTACK_USE_ALLOCA
2551# if YYSTACK_USE_ALLOCA
2552# ifdef __GNUC__
2553# define YYSTACK_ALLOC __builtin_alloca
2554# elif defined __BUILTIN_VA_ARG_INCR
2555# include <alloca.h> /* INFRINGES ON USER NAME SPACE */
2556# elif defined _AIX
2557# define YYSTACK_ALLOC __alloca
2558# elif defined _MSC_VER
2559# include <malloc.h> /* INFRINGES ON USER NAME SPACE */
2560# define alloca _alloca
2561# else
2562# define YYSTACK_ALLOC alloca
2563# if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
2564# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
2565 /* Use EXIT_SUCCESS as a witness for stdlib.h. */
2566# ifndef EXIT_SUCCESS
2567# define EXIT_SUCCESS 0
2568# endif
2569# endif
2570# endif
2571# endif
2572# endif
2573
2574# ifdef YYSTACK_ALLOC
2575 /* Pacify GCC's 'empty if-body' warning. */
2576# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
2577# ifndef YYSTACK_ALLOC_MAXIMUM
2578 /* The OS might guarantee only one guard page at the bottom of the stack,
2579 and a page size can be as small as 4096 bytes. So we cannot safely
2580 invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
2581 to allow for a few compiler-allocated temporary stack slots. */
2582# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
2583# endif
2584# else
2585# define YYSTACK_ALLOC YYMALLOC
2586# define YYSTACK_FREE YYFREE
2587# ifndef YYSTACK_ALLOC_MAXIMUM
2588# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
2589# endif
2590# if (defined __cplusplus && ! defined EXIT_SUCCESS \
2591 && ! ((defined YYMALLOC || defined malloc) \
2592 && (defined YYFREE || defined free)))
2593# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
2594# ifndef EXIT_SUCCESS
2595# define EXIT_SUCCESS 0
2596# endif
2597# endif
2598# ifndef YYMALLOC
2599# define YYMALLOC malloc
2600# if ! defined malloc && ! defined EXIT_SUCCESS
2601void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
2602# endif
2603# endif
2604# ifndef YYFREE
2605# define YYFREE free
2606# if ! defined free && ! defined EXIT_SUCCESS
2607void free (void *); /* INFRINGES ON USER NAME SPACE */
2608# endif
2609# endif
2610# endif
2611#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
2612
2613
2614#if (! defined yyoverflow \
2615 && (! defined __cplusplus \
2616 || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
2617
2618/* A type that is properly aligned for any stack member. */
2619union yyalloc
2620{
2621 yytype_int16 yyss_alloc;
2622 YYSTYPE yyvs_alloc;
2623};
2624
2625/* The size of the maximum gap between one aligned stack and the next. */
2626# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
2627
2628/* The size of an array large to enough to hold all stacks, each with
2629 N elements. */
2630# define YYSTACK_BYTES(N) \
2631 ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
2632 + YYSTACK_GAP_MAXIMUM)
2633
2634# define YYCOPY_NEEDED 1
2635
2636/* Relocate STACK from its old location to the new one. The
2637 local variables YYSIZE and YYSTACKSIZE give the old and new number of
2638 elements in the stack, and YYPTR gives the new location of the
2639 stack. Advance YYPTR to a properly aligned location for the next
2640 stack. */
2641# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
2642 do \
2643 { \
2644 YYSIZE_T yynewbytes; \
2645 YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
2646 Stack = &yyptr->Stack_alloc; \
2647 yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
2648 yyptr += yynewbytes / sizeof (*yyptr); \
2649 } \
2650 while (0)
2651
2652#endif
2653
2654#if defined YYCOPY_NEEDED && YYCOPY_NEEDED
2655/* Copy COUNT objects from SRC to DST. The source and destination do
2656 not overlap. */
2657# ifndef YYCOPY
2658# if defined __GNUC__ && 1 < __GNUC__
2659# define YYCOPY(Dst, Src, Count) \
2660 __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
2661# else
2662# define YYCOPY(Dst, Src, Count) \
2663 do \
2664 { \
2665 YYSIZE_T yyi; \
2666 for (yyi = 0; yyi < (Count); yyi++) \
2667 (Dst)[yyi] = (Src)[yyi]; \
2668 } \
2669 while (0)
2670# endif
2671# endif
2672#endif /* !YYCOPY_NEEDED */
2673
2674/* YYFINAL -- State number of the termination state. */
2675#define YYFINAL 694
2676/* YYLAST -- Last index in YYTABLE. */
2677#define YYLAST 88602
2678
2679/* YYNTOKENS -- Number of terminals. */
2680#define YYNTOKENS 746
2681/* YYNNTS -- Number of nonterminals. */
2682#define YYNNTS 1209
2683/* YYNRULES -- Number of rules. */
2684#define YYNRULES 3330
2685/* YYNSTATES -- Number of states. */
2686#define YYNSTATES 5739
2687
2688/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
2689 by yylex, with out-of-bounds checking. */
2690#define YYUNDEFTOK 2
2691#define YYMAXUTOK 978
2692
2693#define YYTRANSLATE(YYX) \
2694 ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
2695
2696/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
2697 as returned by yylex, without out-of-bounds checking. */
2698static const yytype_uint16 yytranslate[] =
2699{
2700 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2701 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2702 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2703 2, 2, 2, 739, 2, 2, 2, 731, 726, 2,
2704 736, 737, 729, 728, 738, 727, 743, 730, 2, 2,
2705 2, 2, 2, 2, 2, 2, 2, 2, 745, 742,
2706 724, 722, 723, 2, 744, 2, 2, 2, 2, 2,
2707 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2708 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2709 2, 2, 2, 2, 732, 2, 2, 2, 2, 2,
2710 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2711 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2712 2, 2, 2, 740, 725, 741, 733, 2, 2, 2,
2713 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2714 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2715 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2716 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2717 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2718 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2719 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2720 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2721 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2722 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2723 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2724 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2725 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
2726 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
2727 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
2728 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
2729 35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
2730 45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
2731 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
2732 65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
2733 75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
2734 85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
2735 95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
2736 105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
2737 115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
2738 125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
2739 135, 136, 137, 138, 139, 140, 141, 142, 143, 144,
2740 145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
2741 155, 156, 157, 158, 159, 160, 161, 162, 163, 164,
2742 165, 166, 167, 168, 169, 170, 171, 172, 173, 174,
2743 175, 176, 177, 178, 179, 180, 181, 182, 183, 184,
2744 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
2745 195, 196, 197, 198, 199, 200, 201, 202, 203, 204,
2746 205, 206, 207, 208, 209, 210, 211, 212, 213, 214,
2747 215, 216, 217, 218, 219, 220, 221, 222, 223, 224,
2748 225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
2749 235, 236, 237, 238, 239, 240, 241, 242, 243, 244,
2750 245, 246, 247, 248, 249, 250, 251, 252, 253, 254,
2751 255, 256, 257, 258, 259, 260, 261, 262, 263, 264,
2752 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
2753 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
2754 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
2755 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
2756 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
2757 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
2758 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
2759 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
2760 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
2761 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
2762 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
2763 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
2764 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
2765 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
2766 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
2767 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
2768 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
2769 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
2770 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
2771 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
2772 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
2773 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
2774 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
2775 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
2776 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
2777 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
2778 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
2779 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
2780 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
2781 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
2782 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
2783 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
2784 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
2785 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
2786 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
2787 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
2788 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
2789 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
2790 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
2791 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
2792 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
2793 675, 676, 677, 678, 679, 680, 681, 682, 683, 684,
2794 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
2795 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
2796 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
2797 715, 716, 717, 718, 719, 720, 721, 734, 735
2798};
2799
2800#if YYDEBUG
2801 /* YYRLINE[YYN] -- Source line where rule number YYN was defined. */
2802static const yytype_uint16 yyrline[] =
2803{
2804 0, 2194, 2194, 2204, 2203, 2228, 2235, 2237, 2241, 2242,
2805 2243, 2248, 2249, 2250, 2251, 2252, 2253, 2254, 2255, 2256,
2806 2257, 2258, 2259, 2260, 2261, 2262, 2263, 2264, 2265, 2266,
2807 2267, 2268, 2269, 2270, 2271, 2272, 2273, 2274, 2275, 2276,
2808 2277, 2278, 2279, 2280, 2281, 2282, 2283, 2284, 2285, 2286,
2809 2287, 2288, 2289, 2290, 2291, 2292, 2293, 2294, 2295, 2296,
2810 2297, 2298, 2299, 2300, 2301, 2302, 2303, 2307, 2316, 2317,
2811 2321, 2333, 2333, 2343, 2342, 2351, 2350, 2361, 2363, 2363,
2812 2374, 2375, 2379, 2391, 2390, 2407, 2406, 2415, 2416, 2420,
2813 2424, 2428, 2432, 2436, 2440, 2450, 2455, 2459, 2463, 2467,
2814 2471, 2475, 2480, 2484, 2489, 2517, 2521, 2525, 2530, 2533,
2815 2535, 2536, 2540, 2546, 2548, 2549, 2553, 2559, 2561, 2562,
2816 2566, 2573, 2577, 2592, 2596, 2602, 2608, 2614, 2624, 2628,
2817 2632, 2646, 2645, 2684, 2683, 2748, 2745, 2758, 2756, 2769,
2818 2767, 2779, 2778, 2793, 2791, 2803, 2801, 2810, 2809, 2814,
2819 2813, 2818, 2817, 2822, 2821, 2828, 2827, 2834, 2833, 2838,
2820 2837, 2843, 2850, 2857, 2861, 2865, 2865, 2871, 2881, 2891,
2821 2892, 2896, 2898, 2901, 2902, 2906, 2907, 2911, 2916, 2922,
2822 2928, 2936, 2942, 2948, 2956, 2964, 2972, 2980, 2988, 2996,
2823 3008, 3025, 3024, 3036, 3037, 3041, 3046, 3053, 3058, 3063,
2824 3068, 3073, 3081, 3080, 3113, 3112, 3119, 3126, 3127, 3133,
2825 3139, 3149, 3155, 3161, 3163, 3170, 3171, 3175, 3185, 3186,
2826 3194, 3194, 3239, 3253, 3258, 3266, 3267, 3271, 3272, 3277,
2827 3279, 3281, 3283, 3285, 3287, 3289, 3295, 3296, 3300, 3304,
2828 3312, 3311, 3320, 3322, 3325, 3327, 3331, 3335, 3342, 3344,
2829 3348, 3349, 3353, 3361, 3366, 3373, 3379, 3384, 3389, 3397,
2830 3399, 3403, 3404, 3408, 3412, 3413, 3414, 3415, 3420, 3419,
2831 3432, 3431, 3443, 3444, 3448, 3449, 3454, 3457, 3469, 3474,
2832 3480, 3486, 3495, 3507, 3511, 3517, 3529, 3533, 3540, 3550,
2833 3558, 3566, 3577, 3578, 3586, 3585, 3598, 3597, 3614, 3616,
2834 3621, 3631, 3630, 3646, 3647, 3652, 3654, 3659, 3674, 3682,
2835 3686, 3706, 3707, 3711, 3715, 3721, 3727, 3733, 3742, 3750,
2836 3765, 3771, 3772, 3778, 3781, 3785, 3793, 3810, 3812, 3830,
2837 3836, 3838, 3840, 3842, 3844, 3846, 3848, 3850, 3852, 3854,
2838 3856, 3858, 3863, 3871, 3887, 3888, 3893, 3899, 3908, 3915,
2839 3924, 3932, 3937, 3946, 3948, 3957, 3962, 3969, 3978, 3986,
2840 3988, 3990, 3992, 3994, 3996, 3998, 4000, 4002, 4004, 4006,
2841 4008, 4010, 4015, 4016, 4024, 4036, 4051, 4052, 4065, 4066,
2842 4067, 4068, 4069, 4073, 4074, 4075, 4076, 4077, 4078, 4079,
2843 4083, 4084, 4085, 4086, 4091, 4090, 4101, 4101, 4154, 4153,
2844 4167, 4175, 4183, 4193, 4192, 4211, 4210, 4226, 4232, 4240,
2845 4241, 4245, 4253, 4258, 4263, 4271, 4272, 4287, 4305, 4319,
2846 4336, 4338, 4354, 4336, 4373, 4375, 4376, 4381, 4380, 4450,
2847 4452, 4450, 4460, 4465, 4466, 4470, 4471, 4476, 4480, 4475,
2848 4500, 4504, 4499, 4522, 4532, 4536, 4540, 4541, 4545, 4556,
2849 4554, 4571, 4570, 4585, 4584, 4601, 4602, 4606, 4614, 4622,
2850 4629, 4638, 4653, 4652, 4669, 4668, 4688, 4697, 4696, 4704,
2851 4703, 4712, 4717, 4726, 4711, 4738, 4737, 4748, 4747, 4757,
2852 4756, 4767, 4774, 4766, 4793, 4792, 4804, 4806, 4811, 4813,
2853 4815, 4832, 4837, 4843, 4850, 4851, 4859, 4865, 4874, 4880,
2854 4886, 4887, 4891, 4891, 4896, 4897, 4898, 4902, 4903, 4904,
2855 4908, 4912, 4913, 4914, 4918, 4919, 4920, 4921, 4922, 4923,
2856 4924, 4925, 4929, 4933, 4934, 4935, 4939, 4940, 4941, 4942,
2857 4943, 4947, 4951, 4952, 4953, 4957, 4958, 4959, 4960, 4961,
2858 4962, 4963, 4967, 4971, 4972, 4973, 4977, 4978, 4979, 4984,
2859 4992, 5000, 5008, 5021, 5034, 5039, 5044, 5052, 5060, 5068,
2860 5076, 5084, 5092, 5100, 5110, 5120, 5130, 5132, 5136, 5141,
2861 5151, 5152, 5165, 5164, 5167, 5173, 5175, 5174, 5177, 5176,
2862 5178, 5192, 5193, 5197, 5198, 5204, 5202, 5209, 5214, 5216,
2863 5215, 5218, 5217, 5222, 5259, 5260, 5265, 5264, 5280, 5295,
2864 5294, 5312, 5311, 5317, 5325, 5324, 5327, 5329, 5332, 5331,
2865 5340, 5343, 5342, 5351, 5352, 5358, 5359, 5376, 5377, 5381,
2866 5382, 5386, 5400, 5410, 5421, 5430, 5431, 5444, 5446, 5445,
2867 5450, 5448, 5459, 5460, 5464, 5478, 5490, 5491, 5504, 5513,
2868 5535, 5536, 5541, 5540, 5564, 5576, 5592, 5591, 5606, 5605,
2869 5619, 5624, 5629, 5649, 5667, 5671, 5698, 5710, 5711, 5716,
2870 5725, 5715, 5750, 5751, 5755, 5766, 5785, 5798, 5824, 5825,
2871 5830, 5829, 5866, 5875, 5876, 5880, 5881, 5885, 5887, 5893,
2872 5899, 5901, 5903, 5905, 5907, 5909, 5914, 5915, 5926, 5942,
2873 5945, 5962, 5970, 5970, 5991, 5992, 5996, 5997, 6001, 6012,
2874 6013, 6017, 6018, 6022, 6023, 6027, 6028, 6033, 6036, 6044,
2875 6047, 6054, 6058, 6064, 6066, 6070, 6071, 6075, 6076, 6077,
2876 6081, 6086, 6091, 6096, 6101, 6106, 6111, 6116, 6131, 6137,
2877 6152, 6157, 6172, 6178, 6196, 6201, 6206, 6211, 6216, 6221,
2878 6227, 6226, 6252, 6253, 6254, 6259, 6264, 6269, 6271, 6273,
2879 6275, 6281, 6286, 6291, 6300, 6309, 6315, 6321, 6326, 6329,
2880 6331, 6335, 6354, 6362, 6377, 6398, 6409, 6410, 6411, 6412,
2881 6413, 6414, 6415, 6419, 6420, 6421, 6425, 6426, 6427, 6428,
2882 6433, 6440, 6441, 6445, 6446, 6447, 6448, 6452, 6454, 6460,
2883 6459, 6467, 6466, 6474, 6473, 6481, 6480, 6490, 6487, 6498,
2884 6496, 6505, 6504, 6543, 6551, 6559, 6560, 6564, 6574, 6575,
2885 6579, 6584, 6583, 6619, 6619, 6622, 6621, 6631, 6632, 6636,
2886 6637, 6641, 6642, 6646, 6647, 6651, 6653, 6652, 6658, 6663,
2887 6671, 6672, 6677, 6680, 6684, 6688, 6695, 6696, 6700, 6701,
2888 6705, 6711, 6717, 6718, 6726, 6725, 6744, 6750, 6751, 6761,
2889 6771, 6771, 6774, 6775, 6783, 6784, 6785, 6786, 6787, 6791,
2890 6792, 6793, 6809, 6813, 6817, 6821, 6823, 6825, 6831, 6835,
2891 6840, 6845, 6849, 6854, 6862, 6880, 6881, 6888, 6909, 6920,
2892 6925, 6930, 6941, 6946, 6951, 6956, 6958, 6960, 6962, 6964,
2893 6966, 6968, 6976, 6978, 6983, 6984, 6985, 6986, 6987, 6988,
2894 6989, 6990, 6994, 6998, 6999, 7003, 7004, 7008, 7009, 7010,
2895 7011, 7012, 7016, 7017, 7018, 7019, 7020, 7024, 7030, 7031,
2896 7036, 7038, 7045, 7046, 7047, 7051, 7055, 7056, 7057, 7058,
2897 7059, 7060, 7064, 7065, 7066, 7067, 7070, 7071, 7074, 7075,
2898 7078, 7079, 7083, 7084, 7088, 7089, 7093, 7094, 7095, 7102,
2899 7103, 7109, 7116, 7121, 7125, 7126, 7130, 7134, 7140, 7144,
2900 7145, 7154, 7163, 7169, 7175, 7183, 7189, 7199, 7213, 7214,
2901 7218, 7223, 7227, 7228, 7232, 7233, 7237, 7244, 7248, 7249,
2902 7253, 7261, 7262, 7266, 7267, 7271, 7272, 7276, 7277, 7278,
2903 7286, 7287, 7288, 7289, 7290, 7294, 7295, 7300, 7299, 7312,
2904 7313, 7317, 7320, 7321, 7322, 7323, 7327, 7335, 7342, 7343,
2905 7347, 7357, 7358, 7362, 7363, 7366, 7368, 7372, 7384, 7385,
2906 7389, 7396, 7409, 7410, 7412, 7414, 7420, 7425, 7431, 7437,
2907 7444, 7454, 7455, 7456, 7457, 7458, 7462, 7463, 7467, 7468,
2908 7472, 7473, 7477, 7478, 7479, 7483, 7484, 7488, 7492, 7504,
2909 7505, 7509, 7510, 7514, 7515, 7519, 7520, 7524, 7525, 7529,
2910 7530, 7534, 7535, 7539, 7540, 7541, 7544, 7546, 7551, 7556,
2911 7558, 7566, 7574, 7580, 7589, 7590, 7594, 7598, 7599, 7609,
2912 7610, 7611, 7615, 7619, 7626, 7632, 7644, 7645, 7649, 7651,
2913 7660, 7674, 7659, 7694, 7693, 7707, 7716, 7715, 7731, 7730,
2914 7746, 7745, 7758, 7752, 7765, 7764, 7799, 7804, 7809, 7814,
2915 7820, 7819, 7826, 7833, 7843, 7832, 7863, 7864, 7865, 7866,
2916 7870, 7871, 7883, 7884, 7888, 7889, 7892, 7894, 7902, 7910,
2917 7912, 7914, 7915, 7923, 7924, 7930, 7939, 7937, 7950, 7963,
2918 7962, 7975, 7973, 7986, 7993, 8003, 8004, 8028, 8035, 8039,
2919 8045, 8043, 8060, 8062, 8067, 8075, 8074, 8088, 8092, 8091,
2920 8103, 8104, 8108, 8121, 8122, 8126, 8130, 8137, 8142, 8146,
2921 8153, 8157, 8162, 8170, 8178, 8188, 8199, 8209, 8220, 8230,
2922 8236, 8242, 8247, 8253, 8267, 8281, 8291, 8295, 8300, 8301,
2923 8302, 8307, 8311, 8317, 8319, 8320, 8321, 8322, 8325, 8330,
2924 8338, 8343, 8351, 8352, 8356, 8357, 8361, 8361, 8364, 8366,
2925 8370, 8371, 8375, 8376, 8384, 8385, 8386, 8390, 8391, 8396,
2926 8405, 8406, 8407, 8408, 8413, 8412, 8422, 8421, 8429, 8436,
2927 8446, 8463, 8466, 8473, 8477, 8484, 8488, 8492, 8499, 8499,
2928 8505, 8506, 8510, 8511, 8512, 8516, 8517, 8526, 8533, 8534,
2929 8539, 8538, 8550, 8551, 8552, 8556, 8558, 8557, 8564, 8563,
2930 8584, 8585, 8589, 8590, 8594, 8595, 8596, 8600, 8601, 8606,
2931 8605, 8626, 8627, 8631, 8636, 8637, 8644, 8646, 8650, 8652,
2932 8651, 8663, 8665, 8664, 8677, 8678, 8683, 8692, 8693, 8694,
2933 8698, 8705, 8715, 8723, 8725, 8724, 8730, 8729, 8752, 8753,
2934 8757, 8758, 8762, 8763, 8764, 8765, 8766, 8767, 8771, 8772,
2935 8777, 8776, 8797, 8798, 8799, 8804, 8803, 8809, 8816, 8822,
2936 8831, 8832, 8836, 8852, 8851, 8864, 8865, 8869, 8870, 8874,
2937 8885, 8896, 8897, 8902, 8901, 8912, 8913, 8917, 8918, 8922,
2938 8933, 8945, 8944, 8952, 8952, 8961, 8962, 8967, 8968, 8977,
2939 8986, 8987, 8988, 8989, 8990, 8991, 8992, 8996, 8997, 8998,
2940 8999, 9000, 9001, 9002, 9006, 9006, 9014, 9014, 9026, 9030,
2941 9030, 9042, 9046, 9046, 9058, 9063, 9063, 9072, 9072, 9084,
2942 9090, 9088, 9095, 9107, 9105, 9112, 9122, 9127, 9126, 9131,
2943 9135, 9146, 9147, 9151, 9152, 9156, 9157, 9158, 9162, 9163,
2944 9164, 9168, 9169, 9170, 9171, 9172, 9176, 9176, 9194, 9201,
2945 9203, 9207, 9211, 9217, 9224, 9226, 9235, 9239, 9243, 9250,
2946 9258, 9262, 9270, 9273, 9280, 9284, 9288, 9292, 9299, 9300,
2947 9304, 9305, 9322, 9341, 9343, 9350, 9361, 9362, 9363, 9377,
2948 9382, 9404, 9410, 9416, 9422, 9423, 9424, 9425, 9426, 9430,
2949 9431, 9432, 9436, 9437, 9438, 9442, 9443, 9448, 9499, 9506,
2950 9549, 9555, 9561, 9567, 9573, 9579, 9585, 9591, 9595, 9601,
2951 9607, 9613, 9619, 9625, 9629, 9635, 9644, 9650, 9658, 9664,
2952 9673, 9679, 9687, 9697, 9704, 9712, 9718, 9727, 9731, 9737,
2953 9743, 9749, 9755, 9762, 9768, 9774, 9780, 9786, 9793, 9799,
2954 9805, 9811, 9817, 9823, 9829, 9835, 9841, 9845, 9846, 9850,
2955 9851, 9855, 9856, 9860, 9861, 9865, 9866, 9867, 9868, 9869,
2956 9870, 9874, 9875, 9880, 9884, 9888, 9889, 9890, 9894, 9895,
2957 9896, 9897, 9898, 9899, 9903, 9904, 9905, 9910, 9909, 9915,
2958 9923, 9945, 9952, 9960, 9961, 9962, 9963, 9964, 9965, 9966,
2959 9967, 9999, 10000, 10001, 10002, 10003, 10004, 10005, 10006, 10007,
2960 10008, 10009, 10010, 10017, 10023, 10028, 10038, 10043, 10048, 10054,
2961 10059, 10065, 10076, 10083, 10088, 10093, 10098, 10103, 10108, 10113,
2962 10121, 10122, 10126, 10127, 10135, 10136, 10142, 10146, 10152, 10158,
2963 10167, 10168, 10177, 10184, 10198, 10204, 10210, 10219, 10228, 10234,
2964 10240, 10246, 10252, 10267, 10278, 10284, 10290, 10296, 10302, 10308,
2965 10315, 10319, 10324, 10332, 10353, 10360, 10366, 10373, 10380, 10386,
2966 10392, 10398, 10404, 10410, 10416, 10422, 10429, 10435, 10442, 10448,
2967 10453, 10458, 10463, 10468, 10486, 10492, 10498, 10503, 10510, 10517,
2968 10525, 10532, 10539, 10546, 10553, 10570, 10576, 10582, 10588, 10594,
2969 10601, 10607, 10613, 10622, 10633, 10640, 10646, 10652, 10659, 10667,
2970 10673, 10679, 10684, 10690, 10698, 10704, 10710, 10716, 10722, 10730,
2971 10742, 10749, 10764, 10770, 10777, 10784, 10791, 10798, 10805, 10809,
2972 10816, 10834, 10833, 10901, 10909, 10911, 10916, 10917, 10921, 10922,
2973 10926, 10927, 10931, 10938, 10946, 10973, 10979, 10985, 10991, 10997,
2974 11003, 11012, 11019, 11021, 11018, 11028, 11039, 11045, 11051, 11057,
2975 11063, 11069, 11075, 11081, 11087, 11094, 11093, 11118, 11127, 11145,
2976 11147, 11154, 11161, 11168, 11175, 11182, 11189, 11196, 11203, 11210,
2977 11217, 11228, 11235, 11246, 11257, 11277, 11276, 11282, 11299, 11305,
2978 11314, 11323, 11333, 11332, 11344, 11354, 11362, 11367, 11375, 11376,
2979 11381, 11386, 11389, 11391, 11395, 11400, 11408, 11409, 11413, 11417,
2980 11424, 11431, 11438, 11451, 11450, 11467, 11470, 11469, 11473, 11478,
2981 11479, 11483, 11484, 11485, 11486, 11487, 11488, 11489, 11493, 11494,
2982 11495, 11499, 11500, 11504, 11511, 11519, 11520, 11524, 11531, 11539,
2983 11548, 11558, 11559, 11570, 11571, 11583, 11594, 11595, 11601, 11602,
2984 11622, 11626, 11624, 11642, 11640, 11651, 11661, 11659, 11677, 11676,
2985 11686, 11697, 11695, 11714, 11713, 11724, 11736, 11737, 11738, 11742,
2986 11743, 11751, 11752, 11756, 11771, 11772, 11776, 11776, 11816, 11882,
2987 11925, 11926, 11935, 11934, 11943, 11944, 11945, 11949, 11950, 11951,
2988 11951, 11955, 11961, 11969, 11969, 11984, 12001, 12002, 12010, 12020,
2989 12019, 12033, 12050, 12033, 12057, 12061, 12070, 12081, 12082, 12087,
2990 12090, 12091, 12092, 12096, 12097, 12102, 12101, 12107, 12106, 12114,
2991 12115, 12118, 12120, 12120, 12124, 12124, 12129, 12130, 12134, 12136,
2992 12141, 12142, 12146, 12157, 12171, 12172, 12173, 12174, 12175, 12176,
2993 12177, 12178, 12179, 12180, 12181, 12182, 12186, 12187, 12188, 12189,
2994 12190, 12191, 12192, 12193, 12194, 12198, 12199, 12200, 12201, 12204,
2995 12206, 12207, 12211, 12212, 12220, 12222, 12226, 12228, 12227, 12241,
2996 12244, 12243, 12258, 12264, 12278, 12280, 12284, 12289, 12297, 12298,
2997 12315, 12338, 12339, 12345, 12346, 12350, 12363, 12362, 12370, 12371,
2998 12379, 12380, 12384, 12385, 12389, 12390, 12404, 12405, 12409, 12419,
2999 12428, 12435, 12442, 12452, 12453, 12460, 12470, 12471, 12473, 12475,
3000 12477, 12486, 12490, 12491, 12495, 12507, 12509, 12514, 12513, 12563,
3001 12568, 12576, 12577, 12578, 12582, 12583, 12587, 12600, 12607, 12612,
3002 12619, 12626, 12633, 12643, 12648, 12653, 12657, 12663, 12669, 12678,
3003 12686, 12690, 12697, 12698, 12701, 12703, 12707, 12708, 12711, 12712,
3004 12713, 12714, 12715, 12716, 12720, 12721, 12722, 12723, 12724, 12728,
3005 12729, 12730, 12731, 12735, 12736, 12737, 12738, 12739, 12743, 12744,
3006 12745, 12746, 12747, 12751, 12756, 12757, 12761, 12762, 12766, 12767,
3007 12768, 12773, 12772, 12806, 12807, 12811, 12812, 12816, 12826, 12826,
3008 12838, 12839, 12842, 12862, 12866, 12871, 12879, 12884, 12895, 12883,
3009 12897, 12912, 12924, 12923, 12941, 12940, 12949, 12966, 12972, 12986,
3010 13001, 13009, 13013, 13018, 13017, 13026, 13031, 13037, 13042, 13047,
3011 13054, 13052, 13066, 13067, 13071, 13082, 13095, 13096, 13100, 13114,
3012 13118, 13127, 13130, 13137, 13138, 13146, 13154, 13145, 13164, 13171,
3013 13163, 13181, 13189, 13190, 13197, 13201, 13202, 13211, 13212, 13216,
3014 13225, 13226, 13227, 13229, 13228, 13240, 13242, 13246, 13247, 13248,
3015 13252, 13253, 13257, 13258, 13262, 13272, 13273, 13277, 13278, 13282,
3016 13283, 13287, 13288, 13293, 13292, 13307, 13308, 13312, 13317, 13325,
3017 13326, 13332, 13340, 13342, 13344, 13342, 13357, 13365, 13356, 13387,
3018 13388, 13392, 13401, 13402, 13406, 13416, 13417, 13424, 13423, 13439,
3019 13442, 13449, 13450, 13457, 13472, 13478, 13477, 13489, 13488, 13501,
3020 13503, 13507, 13508, 13512, 13527, 13545, 13546, 13550, 13551, 13555,
3021 13556, 13557, 13562, 13561, 13582, 13584, 13587, 13589, 13592, 13593,
3022 13596, 13600, 13604, 13608, 13612, 13616, 13620, 13624, 13628, 13636,
3023 13639, 13649, 13648, 13664, 13671, 13679, 13687, 13695, 13703, 13711,
3024 13718, 13725, 13731, 13733, 13735, 13744, 13748, 13753, 13752, 13759,
3025 13758, 13763, 13772, 13779, 13784, 13789, 13794, 13799, 13804, 13806,
3026 13808, 13810, 13817, 13825, 13827, 13835, 13842, 13849, 13857, 13863,
3027 13868, 13876, 13884, 13892, 13896, 13901, 13908, 13913, 13920, 13927,
3028 13933, 13939, 13945, 13953, 13958, 13965, 13972, 13979, 13986, 13991,
3029 13996, 14001, 14006, 14013, 14035, 14037, 14039, 14044, 14045, 14048,
3030 14050, 14054, 14055, 14059, 14060, 14064, 14065, 14069, 14070, 14074,
3031 14075, 14079, 14080, 14088, 14100, 14099, 14115, 14114, 14124, 14125,
3032 14126, 14127, 14128, 14132, 14133, 14137, 14144, 14145, 14146, 14150,
3033 14151, 14164, 14165, 14166, 14181, 14180, 14193, 14192, 14204, 14208,
3034 14209, 14224, 14227, 14226, 14239, 14240, 14245, 14247, 14249, 14251,
3035 14253, 14255, 14263, 14265, 14267, 14269, 14274, 14276, 14284, 14286,
3036 14288, 14290, 14307, 14308, 14312, 14313, 14316, 14318, 14319, 14323,
3037 14330, 14331, 14335, 14334, 14344, 14345, 14349, 14349, 14353, 14352,
3038 14358, 14362, 14363, 14367, 14368, 14376, 14375, 14386, 14390, 14394,
3039 14407, 14406, 14421, 14422, 14423, 14426, 14427, 14428, 14429, 14437,
3040 14441, 14450, 14456, 14468, 14479, 14490, 14502, 14467, 14510, 14511,
3041 14515, 14516, 14520, 14521, 14529, 14533, 14534, 14535, 14538, 14540,
3042 14544, 14545, 14549, 14554, 14561, 14566, 14573, 14575, 14579, 14580,
3043 14584, 14589, 14597, 14598, 14601, 14603, 14611, 14612, 14616, 14617,
3044 14618, 14622, 14624, 14629, 14630, 14639, 14640, 14644, 14645, 14649,
3045 14662, 14667, 14672, 14677, 14685, 14693, 14698, 14711, 14720, 14736,
3046 14746, 14747, 14755, 14756, 14757, 14758, 14772, 14778, 14784, 14790,
3047 14796, 14802, 14821, 14831, 14841, 14847, 14854, 14864, 14872, 14880,
3048 14892, 14893, 14902, 14901, 14920, 14921, 14926, 14927, 14934, 14932,
3049 14954, 14955, 14961, 14966, 14975, 14990, 14991, 14995, 15000, 15008,
3050 15013, 15021, 15026, 15031, 15036, 15042, 15050, 15055, 15059, 15064,
3051 15068, 15074, 15082, 15083, 15094, 15102, 15106, 15112, 15118, 15128,
3052 15134, 15143, 15153, 15154, 15158, 15159, 15160, 15164, 15172, 15180,
3053 15188, 15196, 15197, 15206, 15207, 15212, 15221, 15222, 15230, 15231,
3054 15239, 15240, 15241, 15245, 15258, 15288, 15298, 15298, 15300, 15310,
3055 15311, 15312, 15313, 15314, 15315, 15316, 15321, 15322, 15323, 15324,
3056 15325, 15326, 15327, 15328, 15336, 15337, 15338, 15342, 15343, 15344,
3057 15345, 15346, 15347, 15348, 15352, 15353, 15354, 15355, 15356, 15357,
3058 15358, 15359, 15372, 15373, 15374, 15375, 15376, 15377, 15378, 15379,
3059 15380, 15381, 15382, 15383, 15384, 15385, 15386, 15387, 15388, 15389,
3060 15390, 15391, 15392, 15393, 15394, 15395, 15396, 15397, 15398, 15399,
3061 15400, 15401, 15402, 15403, 15404, 15405, 15406, 15407, 15408, 15409,
3062 15410, 15411, 15412, 15413, 15414, 15415, 15416, 15417, 15418, 15419,
3063 15420, 15421, 15422, 15423, 15424, 15425, 15466, 15467, 15468, 15469,
3064 15470, 15471, 15482, 15483, 15484, 15485, 15486, 15487, 15488, 15489,
3065 15490, 15491, 15498, 15499, 15503, 15504, 15505, 15514, 15515, 15516,
3066 15517, 15518, 15519, 15520, 15521, 15522, 15523, 15524, 15525, 15526,
3067 15527, 15528, 15529, 15530, 15531, 15532, 15533, 15534, 15535, 15536,
3068 15537, 15538, 15539, 15540, 15541, 15542, 15543, 15551, 15552, 15553,
3069 15554, 15555, 15556, 15557, 15558, 15559, 15560, 15561, 15562, 15563,
3070 15564, 15565, 15566, 15567, 15568, 15569, 15570, 15571, 15572, 15573,
3071 15574, 15575, 15576, 15577, 15578, 15579, 15580, 15581, 15582, 15583,
3072 15584, 15585, 15586, 15587, 15588, 15589, 15590, 15591, 15592, 15593,
3073 15594, 15595, 15596, 15597, 15602, 15603, 15604, 15605, 15606, 15607,
3074 15608, 15609, 15610, 15611, 15612, 15613, 15614, 15615, 15616, 15617,
3075 15618, 15619, 15620, 15621, 15622, 15623, 15624, 15625, 15626, 15627,
3076 15628, 15629, 15630, 15631, 15632, 15633, 15634, 15635, 15636, 15637,
3077 15638, 15639, 15640, 15641, 15642, 15643, 15644, 15645, 15646, 15647,
3078 15648, 15649, 15650, 15651, 15652, 15653, 15654, 15655, 15656, 15657,
3079 15658, 15659, 15660, 15661, 15662, 15663, 15664, 15665, 15666, 15667,
3080 15668, 15669, 15670, 15671, 15672, 15673, 15674, 15675, 15676, 15677,
3081 15678, 15679, 15680, 15681, 15682, 15683, 15684, 15685, 15686, 15687,
3082 15688, 15689, 15690, 15691, 15692, 15693, 15694, 15695, 15696, 15697,
3083 15698, 15699, 15700, 15701, 15702, 15703, 15704, 15705, 15706, 15707,
3084 15708, 15709, 15710, 15711, 15712, 15713, 15714, 15715, 15716, 15717,
3085 15718, 15719, 15720, 15721, 15722, 15723, 15724, 15725, 15726, 15727,
3086 15728, 15729, 15730, 15731, 15732, 15733, 15734, 15735, 15736, 15737,
3087 15738, 15739, 15740, 15741, 15742, 15743, 15744, 15745, 15746, 15747,
3088 15748, 15749, 15750, 15751, 15752, 15753, 15754, 15755, 15756, 15757,
3089 15758, 15759, 15760, 15761, 15762, 15763, 15764, 15765, 15766, 15767,
3090 15768, 15769, 15770, 15771, 15772, 15773, 15774, 15775, 15776, 15777,
3091 15778, 15779, 15780, 15781, 15782, 15783, 15784, 15785, 15786, 15787,
3092 15788, 15789, 15790, 15791, 15792, 15793, 15794, 15795, 15796, 15797,
3093 15798, 15799, 15800, 15801, 15802, 15803, 15804, 15805, 15806, 15807,
3094 15808, 15809, 15810, 15811, 15812, 15813, 15814, 15815, 15816, 15817,
3095 15818, 15819, 15820, 15821, 15822, 15823, 15824, 15825, 15826, 15827,
3096 15828, 15829, 15830, 15831, 15832, 15833, 15834, 15835, 15836, 15837,
3097 15838, 15839, 15840, 15841, 15842, 15843, 15844, 15845, 15846, 15847,
3098 15848, 15849, 15850, 15851, 15852, 15853, 15854, 15855, 15856, 15857,
3099 15858, 15859, 15860, 15861, 15862, 15863, 15864, 15865, 15866, 15867,
3100 15868, 15869, 15881, 15880, 15890, 15894, 15889, 15911, 15912, 15918,
3101 15917, 15924, 15923, 15933, 15932, 15943, 15942, 15948, 15956, 15958,
3102 15963, 15963, 15972, 15971, 15985, 15984, 15989, 15993, 15994, 15995,
3103 15999, 16000, 16001, 16002, 16006, 16007, 16008, 16009, 16014, 16019,
3104 16024, 16033, 16038, 16043, 16048, 16053, 16058, 16063, 16068, 16082,
3105 16093, 16112, 16130, 16142, 16150, 16166, 16167, 16168, 16169, 16173,
3106 16192, 16210, 16211, 16215, 16216, 16217, 16218, 16222, 16237, 16241,
3107 16242, 16243, 16253, 16254, 16255, 16261, 16267, 16279, 16278, 16292,
3108 16293, 16299, 16308, 16309, 16313, 16314, 16318, 16334, 16335, 16336,
3109 16341, 16342, 16347, 16346, 16363, 16373, 16384, 16383, 16415, 16416,
3110 16420, 16421, 16425, 16426, 16427, 16428, 16430, 16429, 16442, 16443,
3111 16444, 16445, 16446, 16452, 16457, 16463, 16469, 16475, 16479, 16486,
3112 16495, 16497, 16502, 16507, 16514, 16521, 16528, 16535, 16547, 16548,
3113 16551, 16552, 16555, 16560, 16568, 16578, 16597, 16600, 16602, 16606,
3114 16607, 16614, 16616, 16620, 16621, 16626, 16625, 16629, 16628, 16632,
3115 16631, 16635, 16634, 16637, 16638, 16639, 16640, 16641, 16642, 16643,
3116 16644, 16645, 16646, 16647, 16648, 16649, 16650, 16651, 16652, 16653,
3117 16654, 16655, 16656, 16657, 16658, 16659, 16660, 16661, 16662, 16663,
3118 16667, 16668, 16672, 16673, 16677, 16684, 16691, 16701, 16711, 16720,
3119 16729, 16742, 16747, 16755, 16760, 16768, 16773, 16780, 16780, 16781,
3120 16781, 16784, 16791, 16796, 16802, 16808, 16814, 16818, 16822, 16823,
3121 16827, 16855, 16857, 16861, 16865, 16869, 16876, 16882, 16888, 16894,
3122 16900, 16909, 16910, 16914, 16915, 16920, 16921, 16925, 16926, 16930,
3123 16931, 16935, 16936, 16941, 16940, 16950, 16959, 16960, 16964, 16965,
3124 16970, 16971, 16972, 16977, 16978, 16979, 16983, 16995, 17004, 17010,
3125 17019, 17028, 17041, 17043, 17045, 17050, 17051, 17056, 17055, 17072,
3126 17071, 17083, 17083, 17104, 17105, 17112, 17120, 17121, 17122, 17126,
3127 17127, 17132, 17131, 17153, 17160, 17161, 17165, 17166, 17170, 17171,
3128 17172, 17177, 17185, 17206, 17231, 17233, 17237, 17238, 17242, 17243,
3129 17251, 17252, 17253, 17254, 17260, 17266, 17276, 17277, 17282, 17295,
3130 17311, 17312, 17313, 17317, 17318, 17322, 17323, 17328, 17329, 17333,
3131 17339, 17348, 17348, 17373, 17374, 17375, 17376, 17377, 17378, 17379,
3132 17383, 17384, 17385, 17386, 17396, 17398, 17404, 17410, 17420, 17429,
3133 17435, 17440, 17444, 17418, 17496, 17514, 17513, 17531, 17540, 17529,
3134 17556, 17564, 17555, 17578, 17582, 17586, 17590, 17594, 17598, 17606,
3135 17607, 17623, 17630, 17637, 17647, 17648, 17652, 17653, 17654, 17658,
3136 17659, 17664, 17666, 17665, 17671, 17672, 17676, 17683, 17693, 17699,
3137 17710
3138};
3139#endif
3140
3141#if YYDEBUG || YYERROR_VERBOSE || 0
3142/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
3143 First, the terminals, then, starting at YYNTOKENS, nonterminals. */
3144static const char *const yytname[] =
3145{
3146 "$end", "error", "$undefined", "ABORT_SYM", "ACCESSIBLE_SYM", "ADD",
3147 "ALL", "ALTER", "ANALYZE_SYM", "AND_AND_SYM", "AND_SYM", "AS", "ASC",
3148 "ASENSITIVE_SYM", "BEFORE_SYM", "BETWEEN_SYM", "BIGINT", "BINARY",
3149 "BIN_NUM", "BIT_AND", "BIT_OR", "BIT_XOR", "BLOB_SYM", "BOTH", "BY",
3150 "CALL_SYM", "CASCADE", "CASE_SYM", "CAST_SYM", "CHANGE", "CHAR_SYM",
3151 "CHECK_SYM", "COLLATE_SYM", "CONDITION_SYM", "CONSTRAINT",
3152 "CONTINUE_SYM", "CONVERT_SYM", "COUNT_SYM", "CREATE", "CROSS",
3153 "CUME_DIST_SYM", "CURDATE", "CURRENT_USER", "CURRENT_ROLE", "CURSOR_SYM",
3154 "CURTIME", "DATABASE", "DATABASES", "DATE_ADD_INTERVAL",
3155 "DATE_SUB_INTERVAL", "DAY_HOUR_SYM", "DAY_MICROSECOND_SYM",
3156 "DAY_MINUTE_SYM", "DAY_SECOND_SYM", "DECIMAL_NUM", "DECIMAL_SYM",
3157 "DECLARE_SYM", "DEFAULT", "DELETE_DOMAIN_ID_SYM", "DELETE_SYM",
3158 "DENSE_RANK_SYM", "DESC", "DESCRIBE", "DETERMINISTIC_SYM", "DISTINCT",
3159 "DIV_SYM", "DOUBLE_SYM", "DO_DOMAIN_IDS_SYM", "DOT_DOT_SYM", "DROP",
3160 "DUAL_SYM", "EACH_SYM", "ELSE", "ELSEIF_SYM", "ENCLOSED", "END_OF_INPUT",
3161 "EQUAL_SYM", "ESCAPED", "EXCEPT_SYM", "EXISTS", "EXTRACT_SYM",
3162 "FALSE_SYM", "FETCH_SYM", "FIRST_VALUE_SYM", "FLOAT_NUM", "FLOAT_SYM",
3163 "FOREIGN", "FOR_SYM", "FOR_SYSTEM_TIME_SYM", "FROM", "FULLTEXT_SYM",
3164 "GE", "GRANT", "GROUP_SYM", "GROUP_CONCAT_SYM", "LAG_SYM", "LEAD_SYM",
3165 "HAVING", "HEX_NUM", "HEX_STRING", "HOUR_MICROSECOND_SYM",
3166 "HOUR_MINUTE_SYM", "HOUR_SECOND_SYM", "IDENT", "IDENT_QUOTED", "IF_SYM",
3167 "IGNORE_DOMAIN_IDS_SYM", "IGNORE_SYM", "INDEX_SYM", "INFILE",
3168 "INNER_SYM", "INOUT_SYM", "INSENSITIVE_SYM", "INSERT", "INTERSECT_SYM",
3169 "INTERVAL_SYM", "INTO", "INT_SYM", "IN_SYM", "IS", "ITERATE_SYM",
3170 "JOIN_SYM", "KEYS", "KEY_SYM", "KILL_SYM", "LE", "LEADING", "LEAVE_SYM",
3171 "LEFT", "LEX_HOSTNAME", "LIKE", "LIMIT", "LINEAR_SYM", "LINES", "LOAD",
3172 "LOCATOR_SYM", "LOCK_SYM", "LONGBLOB", "LONGTEXT", "LONG_NUM",
3173 "LONG_SYM", "LOOP_SYM", "LOW_PRIORITY",
3174 "MASTER_SSL_VERIFY_SERVER_CERT_SYM", "MATCH", "MAX_SYM", "MAXVALUE_SYM",
3175 "MEDIAN_SYM", "MEDIUMBLOB", "MEDIUMINT", "MEDIUMTEXT",
3176 "MINUTE_MICROSECOND_SYM", "MINUTE_SECOND_SYM", "MIN_SYM", "MODIFIES_SYM",
3177 "MOD_SYM", "MYSQL_CONCAT_SYM", "NATURAL", "NCHAR_STRING", "NE", "NEG",
3178 "NOT2_SYM", "NOT_SYM", "NOW_SYM", "NO_WRITE_TO_BINLOG", "NTILE_SYM",
3179 "NULL_SYM", "NUM", "NUMERIC_SYM", "NTH_VALUE_SYM", "ON", "OPTIMIZE",
3180 "OPTIONALLY", "ORACLE_CONCAT_SYM", "OR2_SYM", "ORDER_SYM", "OR_SYM",
3181 "OUTER", "OUTFILE", "OUT_SYM", "OVER_SYM", "PAGE_CHECKSUM_SYM",
3182 "PARAM_MARKER", "PARSE_VCOL_EXPR_SYM", "PARTITION_SYM",
3183 "PERCENT_RANK_SYM", "PERCENTILE_CONT_SYM", "PERCENTILE_DISC_SYM",
3184 "POSITION_SYM", "PRECISION", "PRIMARY_SYM", "PROCEDURE_SYM", "PURGE",
3185 "RANGE_SYM", "RANK_SYM", "READS_SYM", "READ_SYM", "READ_WRITE_SYM",
3186 "REAL", "RECURSIVE_SYM", "REF_SYSTEM_ID_SYM", "REFERENCES", "REGEXP",
3187 "RELEASE_SYM", "RENAME", "REPEAT_SYM", "REPLACE", "REQUIRE_SYM",
3188 "RESIGNAL_SYM", "RESTRICT", "RETURNING_SYM", "RETURN_SYM", "REVOKE",
3189 "RIGHT", "ROWS_SYM", "ROW_NUMBER_SYM", "SECOND_MICROSECOND_SYM",
3190 "SELECT_SYM", "SENSITIVE_SYM", "SEPARATOR_SYM", "SERVER_OPTIONS", "SET",
3191 "SET_VAR", "SHIFT_LEFT", "SHIFT_RIGHT", "SHOW", "SIGNAL_SYM", "SMALLINT",
3192 "SPATIAL_SYM", "SPECIFIC_SYM", "SQLEXCEPTION_SYM", "SQLSTATE_SYM",
3193 "SQLWARNING_SYM", "SQL_BIG_RESULT", "SQL_SMALL_RESULT", "SQL_SYM",
3194 "SSL_SYM", "STARTING", "STATS_AUTO_RECALC_SYM", "STATS_PERSISTENT_SYM",
3195 "STATS_SAMPLE_PAGES_SYM", "STDDEV_SAMP_SYM", "STD_SYM", "STRAIGHT_JOIN",
3196 "SUBSTRING", "SUM_SYM", "SYSDATE", "TABLE_REF_PRIORITY", "TABLE_SYM",
3197 "TERMINATED", "TEXT_STRING", "THEN_SYM", "TINYBLOB", "TINYINT",
3198 "TINYTEXT", "TO_SYM", "TRAILING", "TRIGGER_SYM", "TRIM", "TRUE_SYM",
3199 "ULONGLONG_NUM", "UNDERSCORE_CHARSET", "UNDO_SYM", "UNION_SYM",
3200 "UNIQUE_SYM", "UNLOCK_SYM", "UNSIGNED", "UPDATE_SYM", "USAGE", "USE_SYM",
3201 "USING", "UTC_DATE_SYM", "UTC_TIMESTAMP_SYM", "UTC_TIME_SYM", "VALUES",
3202 "VALUES_IN_SYM", "VALUES_LESS_SYM", "VARBINARY", "VARCHAR",
3203 "VARIANCE_SYM", "VARYING", "VAR_SAMP_SYM", "WHEN_SYM", "WHERE",
3204 "WHILE_SYM", "WITH", "WITH_CUBE_SYM", "WITH_ROLLUP_SYM",
3205 "WITH_SYSTEM_SYM", "XOR", "YEAR_MONTH_SYM", "ZEROFILL",
3206 "IMPOSSIBLE_ACTION", "BODY_SYM", "COMMENT_SYM", "ELSIF_SYM", "GOTO_SYM",
3207 "OTHERS_SYM", "PACKAGE_SYM", "RAISE_SYM", "ROWTYPE_SYM", "ACTION",
3208 "ADMIN_SYM", "ADDDATE_SYM", "AFTER_SYM", "AGAINST", "AGGREGATE_SYM",
3209 "ALGORITHM_SYM", "ALWAYS_SYM", "ANY_SYM", "ASCII_SYM", "AT_SYM",
3210 "ATOMIC_SYM", "AUTHORS_SYM", "AUTOEXTEND_SIZE_SYM", "AUTO_INC",
3211 "AUTO_SYM", "AVG_ROW_LENGTH", "AVG_SYM", "BACKUP_SYM", "BEGIN_SYM",
3212 "BINLOG_SYM", "BIT_SYM", "BLOCK_SYM", "BOOL_SYM", "BOOLEAN_SYM",
3213 "BTREE_SYM", "BYTE_SYM", "CACHE_SYM", "CASCADED", "CATALOG_NAME_SYM",
3214 "CHAIN_SYM", "CHANGED", "CHARSET", "CHECKPOINT_SYM", "CHECKSUM_SYM",
3215 "CIPHER_SYM", "CLASS_ORIGIN_SYM", "CLIENT_SYM", "CLOB", "CLOSE_SYM",
3216 "COALESCE", "CODE_SYM", "COLLATION_SYM", "COLUMNS", "COLUMN_ADD_SYM",
3217 "COLUMN_CHECK_SYM", "COLUMN_CREATE_SYM", "COLUMN_DELETE_SYM",
3218 "COLUMN_GET_SYM", "COLUMN_SYM", "COLUMN_NAME_SYM", "COMMITTED_SYM",
3219 "COMMIT_SYM", "COMPACT_SYM", "COMPLETION_SYM", "COMPRESSED_SYM",
3220 "CONCURRENT", "CONNECTION_SYM", "CONSISTENT_SYM",
3221 "CONSTRAINT_CATALOG_SYM", "CONSTRAINT_NAME_SYM", "CONSTRAINT_SCHEMA_SYM",
3222 "CONTAINS_SYM", "CONTEXT_SYM", "CONTRIBUTORS_SYM", "CPU_SYM", "CUBE_SYM",
3223 "CURRENT_SYM", "CURRENT_POS_SYM", "CURSOR_NAME_SYM", "CYCLE_SYM",
3224 "DATAFILE_SYM", "DATA_SYM", "DATETIME", "DATE_FORMAT_SYM", "DATE_SYM",
3225 "DAY_SYM", "DEALLOCATE_SYM", "DECODE_SYM", "DEFINER_SYM", "DELAYED_SYM",
3226 "DELAY_KEY_WRITE_SYM", "DES_KEY_FILE", "DIAGNOSTICS_SYM",
3227 "DIRECTORY_SYM", "DISABLE_SYM", "DISCARD", "DISK_SYM", "DO_SYM",
3228 "DUMPFILE", "DUPLICATE_SYM", "DYNAMIC_SYM", "ENABLE_SYM", "END",
3229 "ENDS_SYM", "ENGINES_SYM", "ENGINE_SYM", "ENUM", "ERROR_SYM", "ERRORS",
3230 "ESCAPE_SYM", "EVENTS_SYM", "EVENT_SYM", "EVERY_SYM", "EXCHANGE_SYM",
3231 "EXAMINED_SYM", "EXCLUDE_SYM", "EXECUTE_SYM", "EXCEPTION_SYM",
3232 "EXIT_SYM", "EXPANSION_SYM", "EXPORT_SYM", "EXTENDED_SYM",
3233 "EXTENT_SIZE_SYM", "FAST_SYM", "FAULTS_SYM", "FILE_SYM", "FIRST_SYM",
3234 "FIXED_SYM", "FLUSH_SYM", "FOLLOWS_SYM", "FOLLOWING_SYM", "FORCE_SYM",
3235 "FORMAT_SYM", "FOUND_SYM", "FULL", "FUNCTION_SYM", "GENERAL",
3236 "GENERATED_SYM", "GEOMETRYCOLLECTION", "GEOMETRY_SYM", "GET_FORMAT",
3237 "GET_SYM", "GLOBAL_SYM", "GRANTS", "HANDLER_SYM", "HARD_SYM", "HASH_SYM",
3238 "HELP_SYM", "HIGH_PRIORITY", "HISTORY_SYM", "HOST_SYM", "HOSTS_SYM",
3239 "HOUR_SYM", "ID_SYM", "IDENTIFIED_SYM", "IGNORE_SERVER_IDS_SYM",
3240 "IMMEDIATE_SYM", "IMPORT", "INCREMENT_SYM", "INDEXES",
3241 "INITIAL_SIZE_SYM", "INSERT_METHOD", "INSTALL_SYM", "INVOKER_SYM",
3242 "IO_SYM", "IPC_SYM", "ISOLATION", "ISOPEN_SYM", "ISSUER_SYM",
3243 "INVISIBLE_SYM", "JSON_SYM", "KEY_BLOCK_SIZE", "LANGUAGE_SYM",
3244 "LAST_SYM", "LAST_VALUE", "LASTVAL_SYM", "LEAVES", "LESS_SYM",
3245 "LEVEL_SYM", "LINESTRING", "LIST_SYM", "LOCAL_SYM", "LOCKS_SYM",
3246 "LOGFILE_SYM", "LOGS_SYM", "MASTER_CONNECT_RETRY_SYM",
3247 "MASTER_DELAY_SYM", "MASTER_GTID_POS_SYM", "MASTER_HOST_SYM",
3248 "MASTER_LOG_FILE_SYM", "MASTER_LOG_POS_SYM", "MASTER_PASSWORD_SYM",
3249 "MASTER_PORT_SYM", "MASTER_SERVER_ID_SYM", "MASTER_SSL_CAPATH_SYM",
3250 "MASTER_SSL_CA_SYM", "MASTER_SSL_CERT_SYM", "MASTER_SSL_CIPHER_SYM",
3251 "MASTER_SSL_CRL_SYM", "MASTER_SSL_CRLPATH_SYM", "MASTER_SSL_KEY_SYM",
3252 "MASTER_SSL_SYM", "MASTER_SYM", "MASTER_USER_SYM", "MASTER_USE_GTID_SYM",
3253 "MASTER_HEARTBEAT_PERIOD_SYM", "MAX_CONNECTIONS_PER_HOUR",
3254 "MAX_QUERIES_PER_HOUR", "MAX_ROWS", "MAX_SIZE_SYM",
3255 "MAX_UPDATES_PER_HOUR", "MAX_STATEMENT_TIME_SYM",
3256 "MAX_USER_CONNECTIONS_SYM", "MEDIUM_SYM", "MEMORY_SYM", "MERGE_SYM",
3257 "MESSAGE_TEXT_SYM", "MICROSECOND_SYM", "MIGRATE_SYM", "MINUTE_SYM",
3258 "MINVALUE_SYM", "MIN_ROWS", "MODE_SYM", "MODIFY_SYM", "MONTH_SYM",
3259 "MULTILINESTRING", "MULTIPOINT", "MULTIPOLYGON", "MUTEX_SYM",
3260 "MYSQL_SYM", "MYSQL_ERRNO_SYM", "NAMES_SYM", "NAME_SYM", "NATIONAL_SYM",
3261 "NCHAR_SYM", "NEW_SYM", "NEXT_SYM", "NEXTVAL_SYM", "NOCACHE_SYM",
3262 "NOCYCLE_SYM", "NODEGROUP_SYM", "NONE_SYM", "NOTFOUND_SYM", "NO_SYM",
3263 "NOMAXVALUE_SYM", "NOMINVALUE_SYM", "NO_WAIT_SYM", "NOWAIT_SYM",
3264 "NUMBER_SYM", "NVARCHAR_SYM", "OF_SYM", "OFFSET_SYM", "OLD_PASSWORD_SYM",
3265 "ONE_SYM", "ONLY_SYM", "ONLINE_SYM", "OPEN_SYM", "OPTIONS_SYM", "OPTION",
3266 "OWNER_SYM", "PACK_KEYS_SYM", "PAGE_SYM", "PARSER_SYM", "PARTIAL",
3267 "PARTITIONS_SYM", "PARTITIONING_SYM", "PASSWORD_SYM", "PERIOD_SYM",
3268 "PERSISTENT_SYM", "PHASE_SYM", "PLUGINS_SYM", "PLUGIN_SYM", "POINT_SYM",
3269 "POLYGON", "PORT_SYM", "PRECEDES_SYM", "PRECEDING_SYM", "PREPARE_SYM",
3270 "PRESERVE_SYM", "PREV_SYM", "PREVIOUS_SYM", "PRIVILEGES", "PROCESS",
3271 "PROCESSLIST_SYM", "PROFILE_SYM", "PROFILES_SYM", "PROXY_SYM",
3272 "QUARTER_SYM", "QUERY_SYM", "QUICK", "RAW", "READ_ONLY_SYM",
3273 "REBUILD_SYM", "RECOVER_SYM", "REDOFILE_SYM", "REDO_BUFFER_SIZE_SYM",
3274 "REDUNDANT_SYM", "RELAY", "RELAYLOG_SYM", "RELAY_LOG_FILE_SYM",
3275 "RELAY_LOG_POS_SYM", "RELAY_THREAD", "RELOAD", "REMOVE_SYM",
3276 "REORGANIZE_SYM", "REPAIR", "REPEATABLE_SYM", "REPLICATION", "RESET_SYM",
3277 "RESTART_SYM", "RESOURCES", "RESTORE_SYM", "RESUME_SYM",
3278 "RETURNED_SQLSTATE_SYM", "RETURNS_SYM", "REUSE_SYM", "REVERSE_SYM",
3279 "ROLE_SYM", "ROLLBACK_SYM", "ROLLUP_SYM", "ROUTINE_SYM", "ROWCOUNT_SYM",
3280 "ROW_SYM", "ROW_COUNT_SYM", "ROW_FORMAT_SYM", "RTREE_SYM",
3281 "SAVEPOINT_SYM", "SCHEDULE_SYM", "SCHEMA_NAME_SYM", "SECOND_SYM",
3282 "SECURITY_SYM", "SEQUENCE_SYM", "SERIALIZABLE_SYM", "SERIAL_SYM",
3283 "SESSION_SYM", "SERVER_SYM", "SETVAL_SYM", "SHARE_SYM", "SHUTDOWN",
3284 "SIGNED_SYM", "SIMPLE_SYM", "SLAVE", "SLAVES", "SLAVE_POS_SYM", "SLOW",
3285 "SNAPSHOT_SYM", "SOCKET_SYM", "SOFT_SYM", "SONAME_SYM", "SOUNDS_SYM",
3286 "SOURCE_SYM", "SQL_BUFFER_RESULT", "SQL_CACHE_SYM",
3287 "SQL_CALC_FOUND_ROWS", "SQL_NO_CACHE_SYM", "SQL_THREAD", "STARTS_SYM",
3288 "START_SYM", "STATEMENT_SYM", "STATUS_SYM", "STOP_SYM", "STORAGE_SYM",
3289 "STORED_SYM", "STRING_SYM", "SUBCLASS_ORIGIN_SYM", "SUBDATE_SYM",
3290 "SUBJECT_SYM", "SUBPARTITIONS_SYM", "SUBPARTITION_SYM", "SUPER_SYM",
3291 "SUSPEND_SYM", "SWAPS_SYM", "SWITCHES_SYM", "SYSTEM", "SYSTEM_TIME_SYM",
3292 "TABLES", "TABLESPACE", "TABLE_CHECKSUM_SYM", "TABLE_NAME_SYM",
3293 "TEMPORARY", "TEMPTABLE_SYM", "TEXT_SYM", "THAN_SYM", "TIES_SYM",
3294 "TIMESTAMP", "TIMESTAMP_ADD", "TIMESTAMP_DIFF", "TIME_SYM",
3295 "TRANSACTION_SYM", "TRANSACTIONAL_SYM", "TRIGGERS_SYM", "TRIM_ORACLE",
3296 "TRUNCATE_SYM", "TYPES_SYM", "TYPE_SYM", "UDF_RETURNS_SYM",
3297 "UNBOUNDED_SYM", "UNCOMMITTED_SYM", "UNDEFINED_SYM", "UNDOFILE_SYM",
3298 "UNDO_BUFFER_SIZE_SYM", "UNICODE_SYM", "UNINSTALL_SYM", "UNKNOWN_SYM",
3299 "UNTIL_SYM", "UPGRADE_SYM", "USER_SYM", "USE_FRM", "VALUE_SYM",
3300 "VARCHAR2", "VARIABLES", "VERSIONING_SYM", "VIA_SYM", "VIEW_SYM",
3301 "VIRTUAL_SYM", "WAIT_SYM", "WARNINGS", "WEEK_SYM", "WEIGHT_STRING_SYM",
3302 "WINDOW_SYM", "WITHIN", "WITHOUT", "WORK_SYM", "WRAPPER_SYM",
3303 "WRITE_SYM", "X509_SYM", "XA_SYM", "XML_SYM", "YEAR_SYM",
3304 "PREC_BELOW_NOT", "'='", "'>'", "'<'", "'|'", "'&'", "'-'", "'+'", "'*'",
3305 "'/'", "'%'", "'^'", "'~'", "PREC_BELOW_IDENTIFIER_OPT_SPECIAL_CASE",
3306 "PREC_BELOW_CONTRACTION_TOKEN2", "'('", "')'", "','", "'!'", "'{'",
3307 "'}'", "';'", "'.'", "'@'", "':'", "$accept", "query", "$@1",
3308 "opt_end_of_input", "verb_clause", "statement", "deallocate",
3309 "deallocate_or_drop", "prepare", "prepare_src", "$@2", "execute", "$@3",
3310 "$@4", "execute_using", "$@5", "execute_var_list", "execute_var_ident",
3311 "help", "$@6", "change", "$@7", "master_defs", "master_def",
3312 "ignore_server_id_list", "ignore_server_id", "do_domain_id_list",
3313 "do_domain_id", "ignore_domain_id_list", "ignore_domain_id",
3314 "master_file_def", "optional_connection_name", "connection_name",
3315 "create", "$@8", "$@9", "$@10", "$@11", "$@12", "$@13", "$@14", "$@15",
3316 "$@16", "$@17", "$@18", "$@19", "$@20", "$@21", "$@22", "$@23",
3317 "sf_tail_not_aggregate", "sf_tail_aggregate", "create_function_tail",
3318 "create_aggregate_function_tail", "opt_sequence", "sequence_defs",
3319 "sequence_def", "server_def", "$@24", "server_options_list",
3320 "server_option", "event_tail", "$@25", "ev_schedule_time", "$@26",
3321 "opt_ev_status", "ev_starts", "ev_ends", "opt_ev_on_completion",
3322 "ev_on_completion", "opt_ev_comment", "ev_sql_stmt", "$@27",
3323 "clear_privileges", "sp_name", "sp_a_chistics", "sp_c_chistics",
3324 "sp_chistic", "sp_c_chistic", "sp_suid", "call", "$@28",
3325 "opt_sp_cparam_list", "opt_sp_cparams", "sp_cparams", "sp_fdparam_list",
3326 "sp_fdparams", "sp_param_name", "sp_param_name_and_type",
3327 "sp_pdparam_list", "sp_pdparams", "sp_pdparam", "sp_opt_inout",
3328 "sp_parenthesized_fdparam_list", "$@29", "sp_parenthesized_pdparam_list",
3329 "$@30", "sp_proc_stmts", "sp_proc_stmts1", "sp_decls", "sp_decl",
3330 "optionally_qualified_column_ident", "row_field_name",
3331 "row_field_definition", "row_field_definition_list", "row_type_body",
3332 "sp_decl_idents_init_vars", "sp_decl_variable_list", "sp_decl_body",
3333 "$@31", "$@32", "opt_parenthesized_cursor_formal_parameters",
3334 "sp_cursor_stmt_lex", "sp_cursor_stmt", "$@33", "sp_handler_type",
3335 "sp_hcond_list", "sp_hcond_element", "sp_cond", "sqlstate", "opt_value",
3336 "sp_hcond", "signal_stmt", "signal_value", "opt_signal_value",
3337 "opt_set_signal_information", "signal_information_item_list",
3338 "signal_allowed_expr", "signal_condition_information_item_name",
3339 "resignal_stmt", "get_diagnostics", "which_area",
3340 "diagnostics_information", "statement_information",
3341 "statement_information_item", "simple_target_specification",
3342 "statement_information_item_name", "condition_number",
3343 "condition_information", "condition_information_item",
3344 "condition_information_item_name", "sp_decl_ident", "sp_decl_idents",
3345 "sp_opt_default", "sp_proc_stmt_in_returns_clause", "sp_proc_stmt",
3346 "sp_proc_stmt_compound_ok", "sp_proc_stmt_if", "$@34",
3347 "sp_proc_stmt_statement", "$@35", "sp_proc_stmt_return", "$@36",
3348 "sp_proc_stmt_leave", "sp_proc_stmt_iterate", "assignment_source_lex",
3349 "assignment_source_expr", "$@37", "for_loop_bound_expr", "$@38",
3350 "cursor_actual_parameters", "opt_parenthesized_cursor_actual_parameters",
3351 "sp_proc_stmt_open", "sp_proc_stmt_fetch_head", "sp_proc_stmt_fetch",
3352 "sp_proc_stmt_close", "sp_fetch_list", "sp_if", "$@39", "$@40", "$@41",
3353 "sp_elseifs", "case_stmt_specification", "$@42", "case_stmt_body",
3354 "$@43", "$@44", "simple_when_clause_list", "searched_when_clause_list",
3355 "simple_when_clause", "$@45", "$@46", "searched_when_clause", "$@47",
3356 "$@48", "else_clause_opt", "sp_label", "sp_opt_label", "sp_block_label",
3357 "sp_labeled_block", "$@49", "sp_unlabeled_block", "$@50",
3358 "sp_unlabeled_block_not_atomic", "$@51", "opt_sp_for_loop_direction",
3359 "sp_for_loop_index_and_bounds", "sp_for_loop_bounds", "loop_body",
3360 "while_body", "$@52", "repeat_body", "$@53", "pop_sp_loop_label",
3361 "sp_labeled_control", "$@54", "$@55", "$@56", "$@57", "$@58", "$@59",
3362 "sp_unlabeled_control", "$@60", "$@61", "$@62", "$@63", "$@64",
3363 "trg_action_time", "trg_event", "change_tablespace_access",
3364 "change_tablespace_info", "tablespace_info", "opt_logfile_group_name",
3365 "alter_tablespace_info", "logfile_group_info",
3366 "alter_logfile_group_info", "add_log_file", "change_ts_option_list",
3367 "$@65", "change_ts_options", "change_ts_option",
3368 "tablespace_option_list", "tablespace_options", "tablespace_option",
3369 "alter_tablespace_option_list", "alter_tablespace_options",
3370 "alter_tablespace_option", "logfile_group_option_list",
3371 "logfile_group_options", "logfile_group_option",
3372 "alter_logfile_group_option_list", "alter_logfile_group_options",
3373 "alter_logfile_group_option", "ts_datafile", "lg_undofile",
3374 "lg_redofile", "tablespace_name", "logfile_group_name", "ts_access_mode",
3375 "opt_ts_initial_size", "opt_ts_autoextend_size", "opt_ts_max_size",
3376 "opt_ts_extent_size", "opt_ts_undo_buffer_size",
3377 "opt_ts_redo_buffer_size", "opt_ts_nodegroup", "opt_ts_comment",
3378 "opt_ts_engine", "opt_ts_wait", "ts_wait", "size_number", "create_body",
3379 "$@66", "$@67", "$@68", "create_like", "opt_create_select",
3380 "create_select_query_expression", "$@69", "$@70", "$@71",
3381 "opt_create_partitioning", "opt_partitioning", "partitioning", "$@72",
3382 "have_partitioning", "partition_entry", "$@73", "partition", "$@74",
3383 "part_type_def", "$@75", "$@76", "$@77", "opt_linear", "opt_key_algo",
3384 "part_field_list", "part_field_item_list", "part_field_item",
3385 "part_column_list", "part_func", "sub_part_func", "opt_num_parts",
3386 "opt_sub_part", "$@78", "$@79", "sub_part_field_list",
3387 "sub_part_field_item", "part_func_expr", "opt_num_subparts", "part_defs",
3388 "part_def_list", "part_definition", "$@80", "part_name",
3389 "opt_part_values", "$@81", "$@82", "part_func_max", "part_values_in",
3390 "part_value_list", "part_value_item", "$@83", "$@84",
3391 "part_value_item_list", "part_value_expr_item", "opt_sub_partition",
3392 "sub_part_list", "sub_part_definition", "$@85", "sub_name",
3393 "opt_part_options", "opt_part_option_list", "opt_part_option",
3394 "opt_versioning_rotation", "opt_versioning_interval_start",
3395 "create_select_query_specification", "create_select_part2", "$@86",
3396 "create_select_part3", "create_select_part3_union_not_ready",
3397 "create_select_part4", "opt_as", "opt_create_database_options",
3398 "create_database_options", "create_database_option",
3399 "opt_if_not_exists_table_element", "opt_if_not_exists",
3400 "create_or_replace", "opt_create_table_options",
3401 "create_table_options_space_separated", "create_table_options",
3402 "create_table_option", "$@87", "opt_versioning_option",
3403 "versioning_option", "default_charset", "default_collation",
3404 "storage_engines", "known_storage_engines", "row_types",
3405 "merge_insert_types", "udf_type", "create_field_list", "field_list",
3406 "field_list_item", "column_def", "key_def", "$@88", "$@89", "$@90",
3407 "$@91", "$@92", "$@93", "$@94", "constraint_def",
3408 "period_for_system_time", "opt_check_constraint", "check_constraint",
3409 "opt_constraint", "constraint", "field_spec", "@95",
3410 "field_type_or_serial", "$@96", "$@97", "opt_serial_attribute",
3411 "opt_serial_attribute_list", "opt_asrow_attribute",
3412 "opt_asrow_attribute_list", "field_def", "$@98", "opt_generated_always",
3413 "vcol_opt_specifier", "vcol_opt_attribute", "vcol_opt_attribute_list",
3414 "vcol_attribute", "parse_vcol_expr", "$@99", "parenthesized_expr",
3415 "virtual_column_func", "expr_or_literal", "column_default_expr",
3416 "field_type", "field_type_numeric", "field_type_string",
3417 "field_type_temporal", "field_type_lob", "field_type_misc",
3418 "spatial_type", "char", "nchar", "varchar", "nvarchar", "int_type",
3419 "real_type", "srid_option", "float_options", "precision",
3420 "field_options", "field_length", "opt_field_length",
3421 "opt_field_length_default_1", "opt_precision", "opt_attribute",
3422 "opt_attribute_list", "attribute", "opt_compression_method",
3423 "asrow_attribute", "serial_attribute", "with_or_without_system",
3424 "type_with_opt_collate", "charset", "charset_name",
3425 "charset_name_or_default", "opt_load_data_charset",
3426 "old_or_new_charset_name", "old_or_new_charset_name_or_default",
3427 "collation_name", "opt_collate", "collation_name_or_default",
3428 "opt_default", "charset_or_alias", "opt_binary", "opt_bin_mod",
3429 "ws_nweights", "$@100", "ws_level_flag_desc", "ws_level_flag_reverse",
3430 "ws_level_flags", "ws_level_number", "ws_level_list_item",
3431 "ws_level_list", "ws_level_range", "ws_level_list_or_range",
3432 "opt_ws_levels", "opt_primary", "references", "opt_ref_list", "ref_list",
3433 "opt_match_clause", "opt_on_update_delete", "delete_option",
3434 "constraint_key_type", "key_or_index", "opt_key_or_index",
3435 "keys_or_index", "opt_unique", "fulltext", "spatial",
3436 "normal_key_options", "fulltext_key_options", "spatial_key_options",
3437 "normal_key_opts", "spatial_key_opts", "fulltext_key_opts",
3438 "opt_USING_key_algorithm", "opt_key_algorithm_clause", "key_using_alg",
3439 "all_key_opt", "normal_key_opt", "spatial_key_opt", "fulltext_key_opt",
3440 "btree_or_rtree", "key_list", "key_part", "opt_ident", "string_list",
3441 "alter", "$@101", "$@102", "$@103", "$@104", "$@105", "$@106", "$@107",
3442 "$@108", "$@109", "$@110", "$@111", "ev_alter_on_schedule_completion",
3443 "opt_ev_rename_to", "opt_ev_sql_stmt", "ident_or_empty",
3444 "alter_commands", "$@112", "$@113", "$@114", "remove_partitioning",
3445 "all_or_alt_part_name_list", "add_partition_rule", "$@115",
3446 "add_part_extra", "reorg_partition_rule", "$@116", "reorg_parts_rule",
3447 "$@117", "alt_part_name_list", "alt_part_name_item", "alter_list",
3448 "add_column", "alter_list_item", "opt_index_lock_algorithm",
3449 "alter_algorithm_option", "alter_lock_option", "opt_column",
3450 "opt_ignore", "alter_options", "$@118", "alter_options_part2",
3451 "alter_option_list", "alter_option", "opt_restrict", "opt_place",
3452 "opt_to", "slave", "$@119", "$@120", "start",
3453 "opt_start_transaction_option_list", "start_transaction_option_list",
3454 "start_transaction_option", "slave_thread_opts", "$@121",
3455 "slave_thread_opt_list", "slave_thread_opt", "slave_until",
3456 "slave_until_opts", "checksum", "$@122", "opt_checksum_type",
3457 "repair_table_or_view", "$@123", "repair", "$@124", "opt_mi_repair_type",
3458 "mi_repair_types", "mi_repair_type", "opt_view_repair_type", "analyze",
3459 "$@125", "analyze_table_list", "analyze_table_elem_spec",
3460 "opt_persistent_stat_clause", "persistent_stat_spec",
3461 "persistent_column_stat_spec", "$@126", "persistent_index_stat_spec",
3462 "$@127", "table_column_list", "table_index_list", "table_index_name",
3463 "binlog_base64_event", "check_view_or_table", "$@128", "check", "$@129",
3464 "opt_mi_check_type", "mi_check_types", "mi_check_type",
3465 "opt_view_check_type", "optimize", "$@130", "opt_no_write_to_binlog",
3466 "rename", "$@131", "rename_list", "table_to_table_list",
3467 "table_to_table", "keycache", "$@132", "keycache_list_or_parts",
3468 "keycache_list", "assign_to_keycache", "assign_to_keycache_parts",
3469 "key_cache_name", "preload", "$@133", "preload_list_or_parts",
3470 "preload_list", "preload_keys", "preload_keys_parts", "adm_partition",
3471 "$@134", "cache_keys_spec", "$@135", "cache_key_list_or_empty",
3472 "opt_ignore_leaves", "select", "select_init", "union_list_part2",
3473 "select_paren", "$@136", "$@137", "select_paren_union_query_term",
3474 "$@138", "select_paren_view", "$@139", "select_paren_derived", "$@140",
3475 "$@141", "select_init3", "$@142", "select_init3_union_query_term",
3476 "$@143", "select_init3_view", "$@144", "select_part3",
3477 "select_part3_union_query_term", "select_part3_view",
3478 "select_part3_union_not_ready", "select_part3_union_not_ready_noproc",
3479 "select_options_and_item_list", "$@145", "table_expression",
3480 "opt_table_expression", "from_clause", "table_reference_list",
3481 "select_options", "opt_history_unit", "history_point",
3482 "opt_for_system_time_clause", "system_time_expr", "select_option_list",
3483 "select_option", "opt_select_lock_type", "select_item_list",
3484 "select_item", "remember_tok_start", "remember_name", "remember_end",
3485 "select_alias", "opt_default_time_precision", "opt_time_precision",
3486 "optional_braces", "expr", "bool_pri", "predicate", "bit_expr", "or",
3487 "and", "not", "not2", "comp_op", "all_or_any", "opt_dyncol_type",
3488 "dyncol_type", "numeric_dyncol_type", "temporal_dyncol_type",
3489 "string_dyncol_type", "$@146", "dyncall_create_element",
3490 "dyncall_create_list", "trim_operands",
3491 "column_default_non_parenthesized_expr", "primary_expr",
3492 "string_factor_expr", "simple_expr", "mysql_concatenation_expr",
3493 "function_call_keyword_timestamp", "function_call_keyword",
3494 "function_call_nonkeyword", "function_call_conflict",
3495 "geometry_function", "function_call_generic", "@147", "fulltext_options",
3496 "opt_natural_language_mode", "opt_query_expansion", "opt_udf_expr_list",
3497 "udf_expr_list", "udf_expr", "sum_expr", "$@148", "$@149", "$@150",
3498 "window_func_expr", "window_func", "simple_window_func",
3499 "inverse_distribution_function", "percentile_function", "$@151",
3500 "inverse_distribution_function_def", "order_by_single_element_list",
3501 "window_name", "variable", "$@152", "variable_aux", "opt_distinct",
3502 "opt_gconcat_separator", "opt_gorder_clause", "gorder_list",
3503 "opt_glimit_clause", "glimit_clause_init", "glimit_clause",
3504 "glimit_options", "in_sum_expr", "$@153", "cast_type", "$@154",
3505 "cast_type_numeric", "cast_type_temporal", "opt_expr_list", "expr_list",
3506 "ident_list_arg", "ident_list", "when_list", "when_list_opt_else",
3507 "table_ref", "join_table_list", "esc_table_ref", "derived_table_list",
3508 "join_table", "$@155", "$@156", "$@157", "$@158", "$@159", "$@160",
3509 "inner_join", "normal_join", "opt_use_partition", "use_partition",
3510 "table_factor", "table_primary_ident", "$@161", "table_primary_derived",
3511 "select_derived_union", "$@162", "union_list_derived_part2", "$@163",
3512 "union_list_derived", "select_init2_derived", "select_part2_derived",
3513 "$@164", "select_derived", "derived_simple_table",
3514 "derived_query_specification", "derived_table_value_constructor",
3515 "$@165", "select_derived2", "$@166", "$@167", "get_select_lex",
3516 "get_select_lex_derived", "select_derived_init", "opt_outer",
3517 "index_hint_clause", "index_hint_type", "index_hint_definition", "$@168",
3518 "$@169", "index_hints_list", "opt_index_hints_list", "$@170",
3519 "opt_key_definition", "$@171", "opt_key_usage_list", "key_usage_element",
3520 "key_usage_list", "using_list", "interval", "interval_time_stamp",
3521 "date_time_type", "table_alias", "opt_table_alias", "opt_all",
3522 "opt_where_clause", "$@172", "opt_having_clause", "$@173", "opt_escape",
3523 "opt_group_clause", "group_list", "olap_opt", "opt_window_clause",
3524 "window_def_list", "window_def", "window_spec", "$@174",
3525 "opt_window_ref", "opt_window_partition_clause",
3526 "opt_window_order_clause", "opt_window_frame_clause",
3527 "window_frame_units", "window_frame_extent", "window_frame_start",
3528 "window_frame_bound", "opt_window_frame_exclusion", "alter_order_clause",
3529 "alter_order_list", "alter_order_item", "opt_order_clause",
3530 "order_clause", "$@175", "order_list", "order_dir", "opt_limit_clause",
3531 "limit_clause_init", "limit_clause", "limit_options", "limit_option",
3532 "limit_rows_option", "delete_limit_clause", "opt_plus", "int_num",
3533 "ulong_num", "real_ulong_num", "longlong_num", "ulonglong_num",
3534 "real_ulonglong_num", "dec_num_error", "dec_num", "choice", "bool",
3535 "procedure_clause", "$@176", "procedure_list", "procedure_list2",
3536 "procedure_item", "select_var_list_init", "$@177", "select_var_list",
3537 "select_var_ident", "select_outvar", "into", "into_destination", "$@178",
3538 "$@179", "do", "$@180", "drop", "$@181", "$@182", "$@183", "table_list",
3539 "table_name", "table_name_with_opt_use_partition",
3540 "table_alias_ref_list", "table_alias_ref", "opt_if_exists_table_element",
3541 "opt_if_exists", "opt_temporary", "insert", "$@184", "$@185", "replace",
3542 "$@186", "$@187", "insert_lock_option", "replace_lock_option", "insert2",
3543 "insert_table", "insert_field_spec", "$@188", "fields", "insert_values",
3544 "values_list", "ident_eq_list", "ident_eq_value", "equal", "opt_equal",
3545 "opt_with", "opt_by", "no_braces", "$@189", "opt_values", "values",
3546 "expr_or_default", "opt_insert_update", "$@190", "$@191", "update",
3547 "$@192", "$@193", "update_list", "update_elem", "insert_update_list",
3548 "insert_update_elem", "opt_low_priority", "delete", "$@194",
3549 "opt_delete_system_time", "delete_part2", "delete_single_table",
3550 "single_multi", "$@195", "$@196", "opt_select_expressions",
3551 "table_wild_list", "table_wild_one", "opt_wild", "opt_delete_options",
3552 "opt_delete_option", "truncate", "$@197", "opt_table_sym",
3553 "opt_profile_defs", "profile_defs", "profile_def", "opt_profile_args",
3554 "show", "$@198", "show_param", "$@199", "$@200", "show_engine_param",
3555 "master_or_binary", "opt_storage", "opt_db", "opt_full", "from_or_in",
3556 "binlog_in", "binlog_from", "wild_and_where", "describe", "$@201",
3557 "$@202", "explainable_command", "describe_command",
3558 "analyze_stmt_command", "opt_extended_describe", "opt_format_json",
3559 "opt_describe_column", "flush", "$@203", "flush_options", "$@204",
3560 "opt_flush_lock", "flush_lock", "$@205", "flush_options_list",
3561 "flush_option", "opt_table_list", "opt_delete_gtid_domain",
3562 "delete_domain_id_list", "delete_domain_id",
3563 "optional_flush_tables_arguments", "reset", "$@206", "reset_options",
3564 "reset_option", "$@207", "$@208", "slave_reset_options",
3565 "master_reset_options", "purge", "$@209", "purge_options",
3566 "purge_option", "kill", "$@210", "kill_type", "kill_option", "kill_expr",
3567 "shutdown", "use", "load", "$@211", "$@212", "$@213", "$@214",
3568 "data_or_xml", "opt_local", "load_data_lock", "opt_duplicate",
3569 "opt_field_term", "field_term_list", "field_term", "opt_line_term",
3570 "line_term_list", "line_term", "opt_xml_rows_identified_by",
3571 "opt_ignore_lines", "lines_or_rows", "opt_field_or_var_spec",
3572 "fields_or_vars", "field_or_var", "opt_load_data_set_spec",
3573 "load_data_set_list", "load_data_set_elem", "text_literal",
3574 "text_string", "hex_or_bin_String", "param_marker", "signed_literal",
3575 "literal", "NUM_literal", "temporal_literal", "opt_with_clause",
3576 "with_clause", "$@215", "opt_recursive", "with_list",
3577 "with_list_element", "$@216", "opt_with_column_list", "with_column_list",
3578 "query_name", "insert_ident", "table_wild",
3579 "select_sublist_qualified_asterisk", "order_ident", "simple_ident",
3580 "simple_ident_nospvar", "simple_ident_q", "simple_ident_q2",
3581 "field_ident", "table_ident", "table_ident_opt_wild", "table_ident_nodb",
3582 "IDENT_cli", "ident_cli", "IDENT_sys", "TEXT_STRING_sys",
3583 "TEXT_STRING_literal", "TEXT_STRING_filesystem", "ident_table_alias",
3584 "ident_sysvar_name", "ident", "label_ident", "ident_or_text",
3585 "user_maybe_role", "user_or_role", "user", "keyword_table_alias",
3586 "keyword_ident", "keyword_label", "keyword_sysvar_name",
3587 "keyword_sp_decl", "keyword_sp_var_not_label", "keyword_sp_head",
3588 "keyword_verb_clause", "keyword_sp_block_section", "keyword_sysvar_type",
3589 "keyword_data_type", "keyword_sp_var_and_label", "set", "$@217", "$@218",
3590 "$@219", "set_stmt_option_value_following_option_type_list",
3591 "start_option_value_list", "$@220", "$@221", "$@222",
3592 "start_option_value_list_following_option_type", "$@223",
3593 "option_value_list_continued", "option_value_list", "$@224", "$@225",
3594 "option_value", "$@226", "option_type", "opt_var_type",
3595 "opt_var_ident_type", "option_value_following_option_type",
3596 "option_value_no_option_type", "transaction_characteristics",
3597 "transaction_access_mode", "isolation_level",
3598 "transaction_access_mode_types", "isolation_types", "opt_for_user",
3599 "text_or_password", "set_expr_or_default", "lock", "$@227",
3600 "opt_lock_wait_timeout", "table_or_tables", "table_lock_list",
3601 "table_lock", "lock_option", "unlock", "$@228", "handler", "$@229",
3602 "handler_read_or_scan", "handler_scan_function", "handler_rkey_function",
3603 "$@230", "handler_rkey_mode", "revoke", "revoke_command",
3604 "admin_option_for_role", "grant", "grant_command", "opt_with_admin",
3605 "opt_with_admin_option", "role_list", "current_role", "grant_role",
3606 "opt_table", "grant_privileges", "opt_privileges",
3607 "object_privilege_list", "object_privilege", "$@231", "$@232", "$@233",
3608 "$@234", "opt_and", "require_list", "require_list_element",
3609 "grant_ident", "user_list", "grant_list", "user_and_role_list",
3610 "via_or_with", "using_or_as", "grant_user", "opt_column_list",
3611 "column_list", "column_list_id", "opt_require_clause", "resource_option",
3612 "resource_option_list", "opt_resource_options", "opt_grant_options",
3613 "opt_grant_option", "grant_option_list", "grant_option", "begin",
3614 "$@235", "compound_statement", "opt_not", "opt_work", "opt_chain",
3615 "opt_release", "commit", "rollback", "savepoint", "release",
3616 "unit_type_decl", "union_clause", "union_list", "$@236",
3617 "union_list_view", "$@237", "union_order_or_limit", "$@238",
3618 "order_or_limit", "union_head_non_top", "union_option", "simple_table",
3619 "table_value_constructor", "$@239", "query_specification",
3620 "query_term_union_not_ready", "query_term_union_ready",
3621 "query_expression_body", "subselect", "subselect_start", "subselect_end",
3622 "opt_query_expression_options", "query_expression_option_list",
3623 "query_expression_option", "definer_opt", "no_definer", "definer",
3624 "view_algorithm", "opt_view_suid", "view_suid", "view_list_opt",
3625 "view_list", "view_select", "$@240", "query_expression_body_view",
3626 "view_check_option", "trigger_action_order",
3627 "trigger_follows_precedes_clause", "trigger_tail", "$@241", "$@242",
3628 "$@243", "$@244", "$@245", "udf_tail", "sf_return_type", "$@246",
3629 "sf_tail", "$@247", "$@248", "sp_tail", "$@249", "$@250", "xa",
3630 "opt_format_xid", "xid", "begin_or_start", "opt_join_or_resume",
3631 "opt_one_phase", "opt_suspend", "$@251", "opt_migrate", "install",
3632 "uninstall", "keep_gcc_happy", YY_NULLPTR
3633};
3634#endif
3635
3636# ifdef YYPRINT
3637/* YYTOKNUM[NUM] -- (External) token number corresponding to the
3638 (internal) symbol number NUM (which must be that of a token). */
3639static const yytype_uint16 yytoknum[] =
3640{
3641 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
3642 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
3643 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
3644 285, 286, 287, 288, 289, 290, 291, 292, 293, 294,
3645 295, 296, 297, 298, 299, 300, 301, 302, 303, 304,
3646 305, 306, 307, 308, 309, 310, 311, 312, 313, 314,
3647 315, 316, 317, 318, 319, 320, 321, 322, 323, 324,
3648 325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
3649 335, 336, 337, 338, 339, 340, 341, 342, 343, 344,
3650 345, 346, 347, 348, 349, 350, 351, 352, 353, 354,
3651 355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
3652 365, 366, 367, 368, 369, 370, 371, 372, 373, 374,
3653 375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
3654 385, 386, 387, 388, 389, 390, 391, 392, 393, 394,
3655 395, 396, 397, 398, 399, 400, 401, 402, 403, 404,
3656 405, 406, 407, 408, 409, 410, 411, 412, 413, 414,
3657 415, 416, 417, 418, 419, 420, 421, 422, 423, 424,
3658 425, 426, 427, 428, 429, 430, 431, 432, 433, 434,
3659 435, 436, 437, 438, 439, 440, 441, 442, 443, 444,
3660 445, 446, 447, 448, 449, 450, 451, 452, 453, 454,
3661 455, 456, 457, 458, 459, 460, 461, 462, 463, 464,
3662 465, 466, 467, 468, 469, 470, 471, 472, 473, 474,
3663 475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
3664 485, 486, 487, 488, 489, 490, 491, 492, 493, 494,
3665 495, 496, 497, 498, 499, 500, 501, 502, 503, 504,
3666 505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
3667 515, 516, 517, 518, 519, 520, 521, 522, 523, 524,
3668 525, 526, 527, 528, 529, 530, 531, 532, 533, 534,
3669 535, 536, 537, 538, 539, 540, 541, 542, 543, 544,
3670 545, 546, 547, 548, 549, 550, 551, 552, 553, 554,
3671 555, 556, 557, 558, 559, 560, 561, 562, 563, 564,
3672 565, 566, 567, 568, 569, 570, 571, 572, 573, 574,
3673 575, 576, 577, 578, 579, 580, 581, 582, 583, 584,
3674 585, 586, 587, 588, 589, 590, 591, 592, 593, 594,
3675 595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
3676 605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
3677 615, 616, 617, 618, 619, 620, 621, 622, 623, 624,
3678 625, 626, 627, 628, 629, 630, 631, 632, 633, 634,
3679 635, 636, 637, 638, 639, 640, 641, 642, 643, 644,
3680 645, 646, 647, 648, 649, 650, 651, 652, 653, 654,
3681 655, 656, 657, 658, 659, 660, 661, 662, 663, 664,
3682 665, 666, 667, 668, 669, 670, 671, 672, 673, 674,
3683 675, 676, 677, 678, 679, 680, 681, 682, 683, 684,
3684 685, 686, 687, 688, 689, 690, 691, 692, 693, 694,
3685 695, 696, 697, 698, 699, 700, 701, 702, 703, 704,
3686 705, 706, 707, 708, 709, 710, 711, 712, 713, 714,
3687 715, 716, 717, 718, 719, 720, 721, 722, 723, 724,
3688 725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
3689 735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
3690 745, 746, 747, 748, 749, 750, 751, 752, 753, 754,
3691 755, 756, 757, 758, 759, 760, 761, 762, 763, 764,
3692 765, 766, 767, 768, 769, 770, 771, 772, 773, 774,
3693 775, 776, 777, 778, 779, 780, 781, 782, 783, 784,
3694 785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
3695 795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
3696 805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
3697 815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
3698 825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
3699 835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
3700 845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
3701 855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
3702 865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
3703 875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
3704 885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
3705 895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
3706 905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
3707 915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
3708 925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
3709 935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
3710 945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
3711 955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
3712 965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
3713 975, 976, 61, 62, 60, 124, 38, 45, 43, 42,
3714 47, 37, 94, 126, 977, 978, 40, 41, 44, 33,
3715 123, 125, 59, 46, 64, 58
3716};
3717# endif
3718
3719#define YYPACT_NINF -4785
3720
3721#define yypact_value_is_default(Yystate) \
3722 (!!((Yystate) == (-4785)))
3723
3724#define YYTABLE_NINF -3264
3725
3726#define yytable_value_is_error(Yytable_value) \
3727 0
3728
3729 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
3730 STATE-NUM. */
3731static const int yypact[] =
3732{
3733 7143, 4367, 997, 82320, -4785, 550, -4785, 150, -4785, -4785,
3734 -4785, 3283, -4785, -4785, -4785, -4785, -4785, -4785, 168, 492,
3735 -4785, 851, -4785, -4785, -4785, -27, 544, -4785, -4785, 79848,
3736 -4785, 429, -4785, 79848, -4785, -4785, 82320, -4785, 931, -4785,
3737 1167, 1119, 1572, 492, 1003, -4785, -4785, 82938, 851, 1437,
3738 68081, -4785, 775, 82320, 851, -4785, 1003, 82320, -4785, 261,
3739 229, -4785, 1184, 2453, 1776, 1812, -4785, -4785, 1387, -4785,
3740 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3741 -4785, -4785, -4785, -4785, 4006, -4785, -4785, -4785, -4785, -4785,
3742 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3743 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 68699, -4785,
3744 -4785, -4785, -4785, -4785, -4785, -4785, -4785, 329, -4785, -4785,
3745 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3746 -4785, -4785, -4785, -4785, -4785, 82320, 1944, 82320, 1418, 1523,
3747 82320, 2170, 2226, 79230, 82320, -4785, 1690, 408, -4785, -4785,
3748 2071, -4785, 1689, -4785, 492, 2013, -4785, -4785, -4785, -4785,
3749 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3750 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3751 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3752 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3753 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3754 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3755 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3756 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3757 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3758 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3759 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3760 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3761 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3762 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3763 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3764 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3765 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3766 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3767 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3768 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3769 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3770 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3771 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3772 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3773 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3774 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3775 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3776 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3777 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3778 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3779 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3780 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3781 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3782 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3783 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3784 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3785 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3786 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3787 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3788 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3789 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3790 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3791 -4785, -4785, 1738, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3792 -4785, 2181, 1119, 549, 2301, 2409, 82320, 586, 2226, 2425,
3793 2226, 2226, 2226, 2226, 2428, 2226, 2226, 82320, -4785, 2226,
3794 2226, 1070, 82320, 30312, -4785, 1090, 877, 2417, -4785, -4785,
3795 -4785, -4785, -4785, -4785, 49515, 492, 20164, 2531, 483, 82320,
3796 -4785, -4785, 49515, 392, 1839, -4785, -4785, 2347, -4785, 31027,
3797 -4785, 31713, 4867, 2347, 492, 2423, -4785, 20164, -4785, -4785,
3798 -4785, -4785, 2285, 1003, -4785, -4785, -4785, -4785, -4785, 2596,
3799 20164, 159, -4785, -4785, -4785, 2224, 82320, 2090, 339, 824,
3800 79230, 82320, 1119, 2555, -4785, 1510, 543, -4785, 2022, 1119,
3801 1833, 2032, 1119, 2433, 82320, 1119, -4785, 1741, 1741, 1741,
3802 2248, 1741, -4785, 1741, -4785, -4785, 1967, 82320, 2584, -4785,
3803 -4785, -4785, 2584, 2584, 2094, 2615, 2623, 2629, 358, 1767,
3804 1011, 1013, 2071, 1770, 1689, 2736, -4785, -4785, -4785, 1999,
3805 -4785, -4785, 89, -4785, 2850, -4785, 2055, -4785, -4785, 1374,
3806 52086, -4785, 82320, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3807 -4785, 499, -4785, 2506, 424, -4785, 2141, 2363, 2077, -4785,
3808 2552, 79230, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 2057,
3809 82320, -4785, 2713, 20164, 2181, -4785, 2536, -4785, -4785, -4785,
3810 -4785, 68081, -4785, 82320, -4785, 2808, -4785, -4785, 2716, -4785,
3811 -4785, 72432, 584, 82320, 2750, 82320, 82320, 82320, 82320, 82320,
3812 82320, -4785, 79230, 2162, -4785, -4785, 2226, 2226, -4785, 2702,
3813 2253, 2227, 2881, 2100, 2404, -4785, 2298, -4785, -4785, 2188,
3814 -4785, -4785, 160, -4785, -4785, -4785, 98, 236, 246, 301,
3815 2681, 348, 69, 366, 367, -4785, -4785, -4785, 2612, 2701,
3816 2140, -4785, 2487, 20164, -4785, -4785, -4785, 2779, -4785, -4785,
3817 825, 2562, 1145, 68081, 71805, 87882, 87882, -4785, 1167, 82320,
3818 82320, 43683, -4785, 2174, -4785, -4785, 6104, -4785, -4785, -4785,
3819 -4785, 82320, -4785, -4785, 1916, 2594, -4785, -4785, -4785, -4785,
3820 -4785, 2177, -4785, -4785, -4785, -4785, -4785, 24532, -4785, 2183,
3821 2198, 2205, 16524, 2210, 2221, 2229, 2233, 2260, 2100, 2100,
3822 2100, 2266, 2276, 2279, 2287, -4785, 2292, 2294, 2297, 2300,
3823 -4785, 2303, -4785, 2309, 2322, 2324, -4785, -4785, 2328, 2331,
3824 2354, 2364, 20892, 2368, -4785, 64991, 2374, 2379, 2392, 2398,
3825 -4785, -4785, 20164, 2266, 2410, -4785, -4785, 2422, -4785, 2437,
3826 2447, 2450, 2454, 2456, 2472, 2475, 2478, 2485, 2499, 2504,
3827 2511, 2514, 2266, -4785, 2525, -4785, -4785, 1747, 2100, 2266,
3828 2266, 2527, 2533, 2540, 2546, 2556, 2558, 2570, 2574, 2576,
3829 2588, 2592, 2595, 2607, 2609, 2621, 87, 2624, 2628, 2632,
3830 2646, 2657, 2663, 2666, 2668, 2673, 2683, 2719, 2722, 2726,
3831 2737, 2749, 2262, 2753, 2758, 2762, 2768, 2785, 2308, 2805,
3832 2812, 2821, 2825, 2829, 2831, 2844, 99, 2846, 2851, 106,
3833 2858, 2860, 2862, 2879, 2883, 2894, 2904, 2909, 25260, 25988,
3834 24532, 20164, -4785, 82320, 83556, -4785, 3473, 2268, -4785, 3626,
3835 24532, -4785, -4785, 2892, -4785, 2920, -4785, -4785, -4785, -4785,
3836 -4785, -4785, 2820, -4785, 2971, -4785, -4785, 3023, 2373, -4785,
3837 2966, -4785, -4785, -4785, -4785, -4785, 2476, 2916, -4785, -4785,
3838 -4785, -4785, -4785, 2778, -4785, -4785, 52760, 68081, 50163, -4785,
3839 -4785, -4785, 65609, -4785, -4785, 2966, 3749, -4785, 2253, 2708,
3840 3104, -4785, 3259, -4785, 3192, 56752, 3216, 721, 300, 342,
3841 425, 37705, 121, 79230, 434, 1043, 60665, 38404, 508, -4785,
3842 -4785, -4785, 2813, 2922, 1481, 1450, -4785, -4785, 845, 2802,
3843 103, -4785, 3058, -4785, 1450, -4785, 32352, 3360, 480, -4785,
3844 882, -4785, 3429, -4785, -4785, 2938, 2983, 2931, -4785, 2914,
3845 -4785, 1119, -4785, 708, -4785, 3360, 1450, 480, -4785, 3186,
3846 3280, 779, 3592, -4785, -70, -4785, -4785, 2779, -4785, 3086,
3847 82320, -4785, -4785, 68081, 68081, 132, 184, 3473, 2951, -4785,
3848 20164, 3428, 4763, 34360, -4785, 138, -4785, -4785, 82320, -4785,
3849 3060, -4785, -4785, 739, -4785, 3386, -4785, 2985, -4785, 84174,
3850 184, -4785, -4785, -4, 3366, -4785, 2989, -4785, -4785, -4785,
3851 -4785, 68081, -4785, -4785, -4785, -4785, -4785, -4785, 3001, -4785,
3852 -4785, 3196, 3081, -4785, 3027, -4785, -4785, 208, 3676, -4785,
3853 1167, 82320, -4785, -4785, 2584, -4785, 2584, 2584, 2584, 2584,
3854 2584, -4785, -4785, -4785, 3045, 3330, -4785, 3334, -4785, 2552,
3855 2013, 40358, 2115, 3275, 3028, 89, 3031, 3497, 3555, -4785,
3856 -4785, -4785, 581, -4785, -4785, 1159, 3722, 3409, -4785, -4785,
3857 -4785, -4785, 2100, 3040, -4785, -4785, -4785, -4785, -4785, 3780,
3858 -4785, 68081, 3237, 3417, 3417, 3417, 3786, -4785, -4785, -4785,
3859 68081, -4785, -4785, -4785, 424, -4785, 52086, 1587, 82320, 68081,
3860 3087, -4785, 68081, 20164, -4785, -4785, 20164, 49515, 3402, 3473,
3861 -4785, -4785, 68081, 1015, -4785, -4785, -4785, 3780, 3417, 68081,
3862 3783, 68081, 3515, -4785, 3062, -4785, 3059, -4785, -4785, -4785,
3863 3651, -4785, -4785, -4785, 3079, 2162, 53433, -4785, -12, 3426,
3864 52760, 68081, -4785, -4785, 3437, 3222, -4785, -4785, -4785, -4785,
3865 -4785, -4785, 3162, -4785, -4785, 3095, -4785, -4785, -4785, 3099,
3866 -4785, 3099, 3099, -4785, -4785, 3099, 52760, -4785, -4785, 52086,
3867 1421, 5081, 3736, 3070, -4785, 65609, -4785, 3398, 21620, -4785,
3868 -4785, -4785, 3371, 192, 1232, -4785, 82320, 3317, 3758, 3732,
3869 -4785, -4785, 20164, -4785, -4785, 3123, 3715, 3121, -4785, -4785,
3870 3126, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 68081, 3129,
3871 24532, 24532, -4785, 3860, 3860, 3860, 20164, 3388, 393, 3474,
3872 20164, 20164, 20164, 1988, 3130, -4785, -4785, -4785, 218, -4785,
3873 3132, 20164, 20164, 69317, 3134, -4785, 3215, 20164, 3809, 20164,
3874 20164, 20164, 20164, 20164, 3988, 20164, -4785, -4785, 69317, 3578,
3875 3147, -4785, 3145, 2265, 20164, 2290, 20164, -4785, -4785, 20164,
3876 20164, 3149, 20164, 20164, 26716, 3152, 20164, 20164, 20164, 3154,
3877 3860, 3860, 20164, 2296, -4785, 15796, -4785, -4785, -4785, -4785,
3878 -4785, 3860, 3860, 20164, 20164, 2302, 20164, 20164, 20164, 20164,
3879 20164, 20164, 20164, 20164, 20164, 20164, -4785, 20164, 20164, 20164,
3880 20164, 20164, 1138, 20164, 20164, 68081, 20164, 20164, 20164, 20164,
3881 20164, 20164, 20164, 3806, 68081, 20164, 20164, 20164, 20164, 3808,
3882 20164, 20164, 20164, 3159, 20164, 68081, 20164, -4785, 20164, 2835,
3883 2835, -4785, 20164, 15796, 20164, 3163, 69935, 20164, 20164, 20164,
3884 20164, 20892, -4785, 20892, -4785, -4785, 3164, 251, -4785, 3628,
3885 20164, 3168, 61283, -4785, -4785, -4785, -4785, 20164, 20164, 20164,
3886 26716, -4785, 1338, -4785, -4785, -4785, -4785, -4785, 15068, 26716,
3887 26716, 3180, 24532, 26716, 26716, 26716, 26716, 26716, 3792, 26716,
3888 26716, 27444, 28172, 26716, 26716, 26716, 26716, 2117, -4785, 79230,
3889 24532, 71171, 3190, 3836, -4785, 83556, -4785, 888, 418, 3194,
3890 -4785, 3678, 3199, -4785, 1213, 3189, 68081, -4785, -4785, -4785,
3891 3757, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3892 -4785, -4785, -4785, -4785, 3208, 3227, 3210, 3863, 52760, 52086,
3893 1488, 3212, 527, 3219, -4785, -4785, 53433, 82320, -4785, -4785,
3894 -4785, -4785, -4785, 3930, 20164, -4785, 52760, -4785, 985, -4785,
3895 1127, 1190, 108, -4785, -4785, -4785, -4785, -4785, 82320, 14340,
3896 57411, 3228, 3314, 3239, 2584, 82320, 68081, 82320, 84792, 82320,
3897 82320, 68081, 52760, 68081, -4785, -4785, -4785, 82320, 1450, 480,
3898 902, 1450, 3852, -4785, 1420, 1420, -4785, -4785, -4785, 77376,
3899 -4785, -4785, -4785, 1450, 82320, 82320, 1450, 52086, -4785, 480,
3900 2184, -4785, 3516, 3307, -4785, -4785, -4785, 3559, -4785, -4785,
3901 3889, 3241, -4785, 3575, -4785, -4785, 3336, -4785, -4785, 68081,
3902 -4785, -4785, 480, -4785, 480, 480, 20164, 1450, 1450, 1450,
3903 1758, -4785, 3245, -4785, 3249, -4785, -4785, 3871, 3253, -4785,
3904 -4785, 3810, 893, -4785, 3664, -4785, 3793, -4785, 20164, 3428,
3905 3473, -4785, -4785, 3524, -4785, 3525, 3526, 3528, -4785, -4785,
3906 -4785, -4785, 3679, 3535, -4785, 1119, 3541, -4785, -4785, 3281,
3907 -4785, -4785, -4785, 29597, 79230, -4785, 3285, -4785, 3303, -4785,
3908 -4785, -4785, 86646, -4785, 85410, -4785, 1119, -4785, -4785, -4785,
3909 68081, 3774, -4785, 1119, 1510, 82320, -4785, -4785, -4785, 1743,
3910 -4785, -4785, -4785, 3394, 1833, -4785, -4785, 1213, 1741, 3471,
3911 -4785, -4785, -4785, 79230, -4785, -4785, -4785, -4785, -4785, 3954,
3912 -4785, 53433, 52086, 79230, 82320, 82320, 82320, 68081, 68081, 2584,
3913 -4785, -4785, 2584, -4785, 2584, -4785, 2584, 3329, -4785, -4785,
3914 -4785, -4785, 157, 1060, 4013, -4785, 2349, -4785, 2544, 2349,
3915 3515, 3360, -4785, 3953, -4785, -4785, -4785, -4785, -4785, -4785,
3916 -4785, -4785, -4785, -4785, -4785, 3315, 3275, -4785, -4785, -4785,
3917 3305, -4785, 3311, 2850, -4785, -4785, -4785, -4785, -4785, -4785,
3918 -4785, 165, -4785, -4785, -4785, 1549, 3670, 2264, -4785, 79230,
3919 2264, 1461, 1482, -4785, 3313, 1119, 1054, -4785, 1054, -4785,
3920 1213, -4785, 3611, -4785, 3615, 114, -4785, -4785, -4785, -4785,
3921 -4785, 68081, 3318, -4785, 3503, 3327, 3328, 3473, 3473, 44331,
3922 4040, 3790, 5491, 115, 3379, -4785, -4785, -4785, -4785, -4785,
3923 68081, -4785, -4785, 1269, 3675, 3811, 3757, 3412, -4785, 3343,
3924 -4785, -4785, 263, -4785, 3908, 82320, 3995, 73668, -4785, 68081,
3925 82320, -12, 3347, -4785, -4785, -4785, -4785, -4785, 108, -4785,
3926 3349, 172, 68081, 68081, 49515, -4785, 3355, -4785, -4785, 82320,
3927 -4785, -4785, -4785, -4785, 3837, 359, 66227, -4785, 66227, 66227,
3928 -4785, -4785, -4785, -4785, -4785, 69, -4785, -4785, -4785, -4785,
3929 -4785, -4785, -4785, 41032, 3473, -4785, 68081, -4785, 3984, 351,
3930 -4785, 101, 68081, -4785, 3978, 3481, 82320, -4785, 3473, 4047,
3931 -4785, -4785, -4785, -4785, 82320, 82320, 49515, 49515, 20164, -4785,
3932 1292, 20164, -4785, 3367, -4785, 3368, 3369, 3487, 3713, 20164,
3933 20164, -4785, 2940, 401, 200, -4785, 3376, 3391, -4785, -4785,
3934 -4785, -4785, -4785, -4785, -4785, -4785, 3378, -4785, -4785, -4785,
3935 273, 299, 3380, -4785, 3385, -4785, -4785, -4785, -4785, -4785,
3936 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
3937 -4785, -4785, -4785, -4785, -4785, 4019, -4785, 286, -4785, -4785,
3938 216, 219, 335, 601, 620, 3395, 643, 2066, 3390, 69317,
3939 83556, 3860, 3393, 857, 3860, 3397, 864, 873, 1219, -4785,
3940 1590, 1788, 3458, -4785, 1237, 1263, 1283, -4785, 3399, 3400,
3941 228, 3860, 3401, 17252, 17980, 18708, 3477, 3404, 3405, 3410,
3942 1368, 1893, 3860, 3413, 1968, 2080, 2031, 1400, 2041, 1408,
3943 -4785, 2086, 1439, 1442, 1445, 1514, 2044, 2079, 1538, 1596,
3944 2116, -4785, -4785, -4785, -4785, 3411, 2103, 2189, 3414, 3420,
3945 2136, 2193, 2199, 2215, 2201, 2207, 2235, 68081, 3422, 2223,
3946 2252, 1599, 2240, 68081, 2274, 2282, 1636, -4785, 2329, 3416,
3947 1658, 241, 3423, 3425, 2337, 3431, 1716, -4785, 82320, 3439,
3948 -4785, -4785, 3389, 265, 238, 1733, 2340, 3988, 3988, -4785,
3949 20164, 380, 196, 83556, 1190, -4785, 3906, 2975, 1286, -4785,
3950 -4785, -4785, -4785, -4785, -4785, 254, -4785, 3415, -4785, 3424,
3951 3084, 3433, 20164, 268, 3433, 361, 3177, 2697, 2697, 26716,
3952 2977, 3076, 20892, 361, 20892, 361, 3433, 3433, 3433, -4785,
3953 26716, 3430, 24532, 26716, -4785, -4785, -4785, -4785, -4785, -4785,
3954 -4785, 3994, 3443, 1753, 3456, -4785, 8, 3850, -4785, 3624,
3955 285, 20164, 1119, -4785, 52760, 52760, 68081, 3940, 20164, -4785,
3956 1099, 3460, -4785, -4785, 3749, 29597, 4108, 53433, 4112, -4785,
3957 3464, 66227, 66227, 66227, 82320, 82320, 14340, 56752, 4121, 4124,
3958 108, 56093, -4785, 3473, 108, -4785, 3480, 3483, -4785, 757,
3959 3752, -4785, 3486, 3490, -4785, 3482, 3489, 3494, 60047, 20164,
3960 108, -4785, 24532, 2292, -4785, 3473, -4785, 1127, -4785, -4785,
3961 -4785, -4785, -4785, 3505, 82320, -4785, -4785, -4785, 82320, -4785,
3962 -4785, -4785, -4785, -4785, -4785, 1119, 20164, -4785, -4785, 1450,
3963 82320, 1450, -4785, 1119, 4151, -4785, -4785, -4785, -4785, -4785,
3964 -4785, -4785, 3841, -4785, 4039, 933, -4785, 3512, -4785, -4785,
3965 -4785, -4785, -4785, 1450, -4785, -4785, -4785, -4785, -4785, 3680,
3966 3360, 2914, 3852, -4785, 480, 68081, 1450, 1450, 3473, -4785,
3967 -4785, -4785, -4785, 82320, 4164, 4037, -4785, 3521, -4785, -4785,
3968 -4785, 68081, -4785, 49515, 82320, 82320, -4785, 4047, 58070, 68081,
3969 -4785, -4785, -4785, 2356, -4785, -4785, -4785, -4785, -4785, 3473,
3970 -4785, 19436, 4203, -4785, -4785, -4785, -4785, 1119, -4785, -4785,
3971 5108, -4785, 68081, 4014, 4015, 4016, -4785, 63755, -4785, -4785,
3972 -4785, -4785, 63755, 1746, -4785, -4785, -4785, -4785, -4785, -4785,
3973 -4785, -4785, -4785, -4785, 194, 249, 3030, 3515, -4785, -4785,
3974 68081, 769, 101, -4785, 4263, -4785, -4785, -4785, -4785, -4785,
3975 3537, -4785, 3577, -4785, -4785, -4785, 3543, -4785, 4195, -4785,
3976 -4785, 182, 374, 114, -4785, 105, 4113, 4114, -4785, -4785,
3977 82320, -4785, 2584, -4785, -4785, 2584, 68081, 2584, -4785, -4785,
3978 82320, -4785, -4785, 2584, -4785, 82320, 2584, -4785, -4785, -4785,
3979 4045, 4045, -4785, 61901, -4785, -4785, 4020, 4171, -4785, 82320,
3980 -4785, -4785, 2023, -4785, 4197, -4785, -4785, 3908, -4785, 3558,
3981 -4785, 20164, -4785, 19436, 3028, -4785, -4785, -4785, 2115, 443,
3982 -4785, 108, 108, 3773, 4063, 4064, 3681, 1119, 4067, 4070,
3983 4073, -4785, -4785, -4785, 1119, 1119, -4785, -4785, 108, -4785,
3984 2172, -4785, -4785, -4785, -4785, 3523, 1971, -4785, 108, 108,
3985 -4785, 3221, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 1561,
3986 -4785, -4785, 173, 1255, 52086, 4026, 4145, 3580, -4785, 68081,
3987 4230, -4785, -4785, 20164, 4068, -4785, -4785, 3790, -4785, 3596,
3988 3598, 3600, 3602, 3603, 3607, 3621, 3623, 3625, 3627, 3638,
3989 3641, 3649, 3652, 3656, 3658, 3659, 3661, 3662, 3663, 3665,
3990 3666, 3668, 3669, 3594, -4785, -4785, 3636, -4785, -4785, -4785,
3991 -4785, 108, 108, 108, 108, -4785, 2256, -4785, -4785, -4785,
3992 -4785, -4785, -4785, -4785, -4785, 3873, 3446, -4785, 2027, 82320,
3993 4103, 73668, -4785, 20164, 4262, -4785, -4785, 1758, -4785, 3655,
3994 1213, -4785, -4785, 53433, -4785, 79230, 52760, -4785, -4785, -4785,
3995 3657, 1292, 44979, -4785, -4785, 4326, -4785, 2267, -4785, 52086,
3996 4098, -4785, 3673, -4785, 3674, 4146, 4147, 4149, 49515, 1099,
3997 -4785, -4785, 3682, -4785, -4785, 3810, 4045, 3692, 3938, 4061,
3998 -4785, -4785, -4785, 1961, -4785, -4785, -4785, -4785, 4305, 51407,
3999 45627, 3683, -4785, -4785, 2344, -4785, -4785, 87882, 87882, 87882,
4000 4047, -4785, 1745, -4785, 20164, -4785, -4785, 20164, -4785, 3473,
4001 3723, 3551, 39731, -4785, 39731, 3551, 20164, -4785, 3685, -4785,
4002 4309, 4311, -4785, -4785, 20164, -4785, 20164, -4785, 20164, -4785,
4003 20164, 20164, 20164, 20164, 20164, 20164, -4785, 26716, -4785, 3684,
4004 3691, -4785, -4785, 3694, -4785, 20164, -4785, 20164, -4785, -4785,
4005 20164, 20164, 20164, 20164, -4785, -4785, 20164, 20164, 3696, -4785,
4006 20164, 3504, 20164, 3601, 20164, 3738, 20164, -4785, -4785, -4785,
4007 22348, -4785, 3697, -4785, -4785, -4785, -4785, 20164, -4785, 20164,
4008 -4785, 20164, 20164, 20164, 20164, 20164, -4785, -4785, 20164, 20164,
4009 -4785, 20164, -4785, 4255, 20164, -4785, -4785, -4785, -4785, -4785,
4010 -4785, -4785, -4785, -4785, -4785, -4785, -4785, 20164, -4785, -4785,
4011 -4785, -4785, 20164, -4785, 201, 23076, -4785, 20164, 20164, 20164,
4012 -4785, -4785, 20164, 3693, -4785, 82320, -4785, 20164, 2440, 3518,
4013 101, 3700, 20164, -4785, 3710, 3712, 2951, -4785, 90, 2480,
4014 -4785, -4785, -4785, 1828, -4785, -4785, -4785, 87264, 20164, -4785,
4015 -4785, -4785, -4785, -4785, 26716, 281, 3704, 24532, -4785, 3177,
4016 3988, 3988, 3150, 20164, 268, 3177, 82320, 4419, 3709, -4785,
4017 20164, 83556, 20164, 3711, 3714, -4785, 3719, -4785, -4785, -4785,
4018 3720, -4785, 1301, 3518, 3787, 4142, -4785, 3473, -4785, 4204,
4019 -4785, -4785, 68081, 2626, -4785, 3028, 3028, 64373, -4785, -4785,
4020 -4785, 4241, 82320, 3740, -4785, 3910, -4785, 52760, 52086, 4374,
4021 4376, 4380, 108, 108, -4785, -4785, 7741, 52760, 14340, -4785,
4022 -4785, -4785, -4785, 4217, 4220, -4785, -4785, 938, 4018, 4275,
4023 -4785, -4785, -4785, 3730, -4785, -4785, -4785, 528, -4785, -4785,
4024 -4785, -4785, -4785, -4785, -4785, 3473, 14340, -4785, 3228, 3739,
4025 33038, 50, -4785, -4785, -4785, 3473, -4785, -4785, -4785, -4785,
4026 3751, -4785, 78612, 4075, 78612, 78612, 83556, -4785, -4785, 4315,
4027 -4785, -4785, 4151, 3515, 480, -4785, -4785, 2325, 3753, 4366,
4028 4369, -4785, 4317, 2493, 4317, -4785, -4785, 3753, 69935, 1758,
4029 3757, 46275, -4785, 2346, -4785, 4485, 46923, -4785, -4785, -4785,
4030 -4785, -4785, -4785, -4785, -4785, -4785, 3762, -4785, 2292, -4785,
4031 3764, -4785, 3473, -4785, 3781, -4785, -4785, -4785, 3657, 1249,
4032 3784, 3769, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4033 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 3360, 111,
4034 -4785, -4785, -4785, -4785, -4785, 1124, -4785, -4785, -4785, 1743,
4035 3143, -4785, 101, 3998, -4785, -4785, 209, 4207, -4785, 4026,
4036 4424, 954, 954, 4341, 68081, 68081, 4618, 3523, -4785, -4785,
4037 82320, -4785, -4785, -4785, -4785, -4785, -4785, -34, -4785, 68081,
4038 -4785, -4785, -4785, 79230, 3775, -4785, -4785, 3771, -4785, 20164,
4039 1213, 3883, -4785, -4785, -4785, 1828, 4491, 4420, 3360, -4785,
4040 3473, -4785, 3776, 3779, 3782, -4785, -4785, 2349, -4785, -4785,
4041 -4785, 3789, -4785, 2850, 56093, 39103, -4785, 4150, 4153, 1925,
4042 -4785, -4785, -4785, -4785, -4785, -4785, 4071, 1482, -4785, 108,
4043 108, -4785, 167, 108, -4785, -4785, 253, -4785, -4785, 895,
4044 276, 3523, -4785, 1119, 1119, 1119, 1119, 101, 1119, 1119,
4045 2361, -4785, 4071, 4071, 1054, -4785, 968, -4785, -4785, -4785,
4046 -4785, 5892, 203, -4785, -4785, 79230, -4785, 4268, 4272, -4785,
4047 4278, -4785, -4785, 171, -4785, 2589, -4785, 36, -4785, 4327,
4048 82320, 4521, 3580, -4785, 363, 3473, 49515, 20164, -4785, 3797,
4049 3799, 101, 3801, 101, 101, 1119, 1119, 3751, 1119, 101,
4050 1119, 1119, 1119, 1119, 1119, 1119, 1119, 101, 1119, 1169,
4051 2578, 1119, 101, 5491, -4785, 1119, 3518, 4071, 4071, 3675,
4052 -4785, 4445, 108, -4785, 3992, -4785, -4785, -4785, -4785, -4785,
4053 -4785, -4785, -4785, -4785, 385, -4785, 26716, -4785, -4785, -4785,
4054 3800, 1758, 308, 3473, 77994, 4334, 3515, 3816, -4785, -4785,
4055 -4785, -4785, -4785, -4785, 428, 4459, -4785, 3813, 20164, -4785,
4056 -4785, 82320, 414, 3997, 3819, 74286, 52086, 52086, 52086, 41721,
4057 4382, 68081, -4785, 4446, -4785, -4785, -4785, -4785, -4785, -4785,
4058 -4785, -4785, -4785, -4785, -4785, -4785, -4785, 6226, -4785, -4785,
4059 4120, 2125, 3822, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4060 -4785, -4785, -4785, 3820, -4785, 20164, -4785, -4785, 4172, -4785,
4061 -4785, -4785, -4785, -4785, 47571, 20164, 3473, 3473, 20164, 3827,
4062 3827, 3828, 3833, -4785, 4457, 3827, -4785, 3827, 4458, 3827,
4063 3839, -4785, -4785, 3842, 3843, 3846, 2951, -4785, 20164, 20164,
4064 2375, 96, 2396, 2411, 1777, 1816, 318, -4785, 2415, 3610,
4065 -4785, -4785, 2431, 2467, 2483, 2508, 1842, 2518, 235, 323,
4066 -4785, 3473, 20164, 3473, 20164, 3473, 20164, 3473, 20892, 2522,
4067 -4785, 2370, 3829, -4785, 2401, 3844, 2538, 338, 2567, 369,
4068 2572, 2583, 2603, 2416, -4785, 1629, 4414, 2424, 20892, 2610,
4069 2658, 1852, 1885, 2670, 82320, 3845, 2706, 3848, 3848, 220,
4070 -4785, 3849, -4785, -4785, -4785, 3853, -4785, 2717, 20164, 20164,
4071 3953, -4785, 1316, 90, 3855, 3497, 4373, -4785, 2349, -4785,
4072 581, 380, -4785, 3856, 3473, 3858, -4785, -4785, 20164, -4785,
4073 -4785, -4785, -4785, 26716, 391, 3864, -4785, 3994, -4785, 20164,
4074 -4785, 4411, 3867, 2951, -4785, 3473, -4785, -4785, 82320, 26716,
4075 -4785, 20164, 3751, -4785, -4785, 4576, 3872, 3888, 3875, 3720,
4076 52760, -4785, 4400, 69935, 3305, 3305, 1009, 3876, 2429, 4399,
4077 -4785, -4785, -4785, 3877, -4785, 2486, -4785, 29597, 4530, 3349,
4078 -4785, 52086, 52086, 52086, 14340, 14340, -4785, -4785, -4785, 3884,
4079 3885, 58, 4428, -4785, -4785, -4785, -4785, 82320, 82320, 14340,
4080 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 2641, -4785,
4081 3360, -4785, -4785, 78612, -4785, -4785, -4785, -4785, -4785, -4785,
4082 1450, -4785, -4785, 3893, 225, 2480, -4785, -4785, -4785, 1758,
4083 3628, 312, -4785, -4785, -4785, 4504, 4317, 4317, 3753, 4505,
4084 1966, 3894, -4785, 108, -4785, 4547, 4353, -4785, 82320, 3905,
4085 -4785, 3907, 80466, 19436, 3915, -4785, 4448, -4785, -4785, 4444,
4086 63755, 3920, -4785, 4136, -4785, -4785, -4785, 3937, -4785, 3925,
4087 -4785, -4785, 52086, -4785, 4294, -4785, -4785, -4785, -4785, -4785,
4088 68081, -4785, -4785, 4284, 68081, 108, 108, 108, 108, 108,
4089 3967, 108, 108, 108, 108, 108, 4286, 108, 108, 108,
4090 108, 108, 108, 108, 108, 108, 108, 86, 82320, 108,
4091 108, 35690, -4785, -4785, 4488, -4785, 4869, -4785, -4785, -4785,
4092 108, 8751, 3523, 3944, 82320, -4785, 3580, 3946, 505, -4785,
4093 389, -4785, 61901, 82320, 3473, 3935, 2449, -4785, 4162, 3947,
4094 -4785, -4785, 20164, -4785, 3973, -4785, -4785, 37006, -4785, 74904,
4095 -4785, 19436, -4785, 2115, 3789, 3949, 4471, -4785, -4785, -4785,
4096 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4097 -4785, -4785, -4785, -4785, 201, 201, -4785, -4785, 201, 201,
4098 -4785, -4785, -4785, -4785, 201, 201, -4785, -4785, -4785, -4785,
4099 -4785, -4785, -4785, -4785, -4785, 1971, -4785, -4785, -4785, 1561,
4100 -4785, 4186, 4339, 4506, 4339, 4507, 4437, 2278, 108, 4509,
4101 4670, -4785, 193, 108, 4511, 4574, 4030, 4578, 4517, -4785,
4102 4035, 4339, 4522, 4152, 4526, 4527, 4528, -4785, -4785, 9283,
4103 -4785, -4785, -4785, -4785, 410, 66845, -4785, -4785, -4785, -4785,
4104 -4785, 4463, 538, -4785, -4785, -4785, -4785, 807, 101, 101,
4105 101, 2578, 2498, -4785, 2589, 1167, 1783, 4460, 2272, -4785,
4106 2515, -4785, 4703, -4785, 189, -4785, 42378, 3473, 133, 279,
4107 -4785, 320, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4108 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4109 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4110 82320, 4071, 3446, -4785, -4785, 3177, 73668, 3515, -4785, 4310,
4111 4503, 3315, -4785, -4785, -4785, -4785, 3628, -4785, 3473, -4785,
4112 -4785, 4626, -4785, -4785, -4785, -4785, 114, 114, 114, 3071,
4113 4328, -4785, -4785, -4785, 4446, 4256, -4785, 1881, -4785, 3827,
4114 3827, -4785, 3828, 4538, 3828, -4785, -4785, 247, 2213, -4785,
4115 -4785, 247, 3828, -4785, 3993, -4785, -4785, -4785, 247, 3827,
4116 -4785, 3827, -4785, -4785, 3827, -4785, 3999, 3828, -4785, -4785,
4117 -4785, -4785, -4785, -4785, -4785, 1164, 1369, -4785, -4785, -4785,
4118 627, 3827, 3827, 3827, 4189, 3827, 3930, -4785, -4785, -4785,
4119 -4785, -4785, 3828, 30, 3827, 3827, 3827, 3827, 3833, 4679,
4120 4651, 4652, -4785, 82320, -4785, 3473, -4785, 49515, 87882, 318,
4121 3473, 1869, -4785, -4785, -4785, 2049, -4785, -4785, -4785, 4573,
4122 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4123 -4785, 4004, 3988, 3988, -4785, 4718, 4524, -4785, -4785, 20164,
4124 20164, -4785, 20164, -4785, 1601, 4007, 4461, -4785, -4785, -4785,
4125 -4785, 20164, -4785, 20164, -4785, -4785, 20164, 3473, 3473, 3473,
4126 3988, -4785, -4785, 3020, -4785, -4785, 3551, -4785, -4785, 20164,
4127 -4785, -4785, 20164, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4128 -4785, 217, 3988, -4785, -4785, 20164, 20164, -4785, -4785, 82320,
4129 -4785, 3518, 4012, 4280, -4785, -4785, -4785, 3518, 4143, -4785,
4130 -4785, 3518, 101, -4785, -4785, -4785, -4785, 3315, 1316, -4785,
4131 4017, 2263, -4785, -4785, -4785, -4785, -4785, -4785, 4021, 82320,
4132 -4785, 2547, -4785, -4785, 20164, -4785, 4577, 4022, 2449, 4729,
4133 4024, -4785, 37006, -4785, 4025, 4027, -4785, -4785, -4785, 3177,
4134 3988, -4785, 4623, 4572, -4785, 3518, 82320, -4785, -4785, -4785,
4135 4031, -4785, 108, 3628, -4785, 3332, 1009, 69935, -4785, 75522,
4136 1917, 3275, -4785, 82320, -4785, 52086, 3464, 3464, 3464, -4785,
4137 -4785, -4785, -4785, -4785, -4785, -4785, 108, 108, -4785, 33038,
4138 56752, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 3360, -4785,
4139 -4785, 3028, 4547, -4785, -4785, 1828, 2349, 3521, 380, -4785,
4140 3753, 4636, 4643, -4785, 3753, -4785, -4785, 69935, 3515, 19436,
4141 2707, 3120, -4785, -4785, -4785, 33677, -4785, 4034, -4785, 4038,
4142 -4785, -4785, 398, 4356, 4637, -4785, -4785, -4785, -4785, -4785,
4143 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4144 19436, -4785, 1119, 2406, -4785, 4057, -4785, 4041, 4042, 108,
4145 -4785, 164, 199, 202, 206, -4785, -4785, 1119, 3751, 101,
4146 101, 1119, 108, 101, 79230, 1719, 101, 3751, 3751, 222,
4147 1119, 1639, 164, -4785, -4785, -4785, 101, 164, 70553, 68081,
4148 4687, 82320, 4046, 4048, 4044, -4785, -4785, -4785, -4785, -4785,
4149 1625, -4785, 4583, 2584, 2356, 2356, -4785, 4036, 266, -4785,
4150 -4785, 7007, -4785, 54100, -4785, -4785, -4785, 762, 4616, 4776,
4151 -4785, 4184, -4785, -4785, -4785, -4785, 4156, 3580, 39103, -4785,
4152 -4785, -4785, 20164, -4785, -4785, -4785, 1213, 4054, 451, 20164,
4153 82320, -4785, 81084, -4785, -4785, -4785, -4785, 1947, -4785, -4785,
4154 2349, 2667, 2349, 4055, 2850, -4785, -4785, -4785, -4785, -4785,
4155 -4785, -4785, -4785, -4785, 67463, 2584, -4785, 4687, 4090, -4785,
4156 -4785, -4785, 4692, 2425, 851, 2425, 33677, 389, 2425, 4677,
4157 2226, 4680, 4719, 4105, 2425, 2425, 58729, 851, 69935, -4785,
4158 -4785, -4785, -4785, 68081, 59388, 851, -4785, -4785, -4785, 82320,
4159 -4785, 2425, 851, -4785, 851, 851, 33677, -4785, 9478, -4785,
4160 -4785, 36372, 1303, -4785, -4785, -4785, 1119, -4785, -4785, -4785,
4161 -4785, -4785, 4642, 4644, -4785, -4785, -4785, 4242, 20164, 20164,
4162 4640, 82320, 4645, -4785, 4519, -4785, 82320, -4785, 3628, -4785,
4163 -4785, -4785, 4365, 4566, 2550, -4785, -4785, 2560, -4785, -4785,
4164 2565, -4785, -4785, -4785, -4785, -4785, 3655, -4785, -4785, 4412,
4165 3558, -4785, 4269, 4536, 4536, 4536, 49515, -4785, -4785, -4785,
4166 -4785, -4785, -4785, -4785, 4706, -4785, -4785, -4785, 317, -4785,
4167 317, 306, -4785, -4785, -4785, 39731, 4806, -4785, 3216, -4785,
4168 4546, 247, -4785, -4785, 317, 1741, -4785, -4785, -4785, -4785,
4169 1741, 317, 4548, -4785, -4785, -4785, 4285, 82320, 4679, 247,
4170 -4785, -4785, 86028, 317, -4785, 4629, -4785, 247, 4806, 247,
4171 4806, 317, 317, 20164, -4785, -4785, 135, 4094, -4785, 48219,
4172 -4785, 4095, 4096, 4099, 4100, 247, 2597, 4101, -4785, 4106,
4173 4107, 20164, 1741, 4707, 2720, 1923, 2600, 4381, 4332, -4785,
4174 4260, -4785, 2724, 2729, 2751, 1072, 3828, -4785, -4785, -4785,
4175 -4785, 4730, 3827, -4785, 4818, -4785, 3827, -4785, -4785, -4785,
4176 -4785, -4785, -4785, 4115, 2755, 2780, -4785, -4785, -4785, 2618,
4177 1598, 2800, 2853, -4785, -4785, -4785, 4116, -4785, -4785, 352,
4178 -4785, 4117, 3558, -4785, -4785, -4785, 3953, 1828, -4785, -4785,
4179 2639, 4826, 2251, 20164, -4785, 20164, -4785, -4785, -4785, 82320,
4180 4122, 4212, 305, -4785, 2648, -4785, -4785, 4125, 69935, 19436,
4181 1828, -4785, -4785, -4785, 1917, -4785, 4126, 2349, 1159, 2349,
4182 -4785, 3315, -4785, -4785, 3464, 14340, 14340, -4785, -4785, -4785,
4183 -4785, 3275, 3305, 4364, 380, -4785, -4785, -4785, 4202, 4595,
4184 3753, 3753, 4240, 4598, 20164, 4134, -4785, 3908, -4785, -4785,
4185 4330, 2027, 2027, -4785, -4785, -4785, -4785, 4137, 4138, -4785,
4186 -4785, -4785, 80466, -4785, 2685, -4785, -4785, 4865, 2704, -4785,
4187 -4785, 79230, 4155, 82320, 82320, 1119, -4785, -4785, -4785, -4785,
4188 -4785, -4785, -4785, -4785, -4785, 4159, -4785, -4785, -4785, -4785,
4189 -4785, 1119, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4190 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4191 -4785, -4785, -4785, -4785, -4785, -4785, -4785, 4163, 4160, -4785,
4192 328, -4785, 36372, 4166, 4759, 4760, 2356, -4785, 2584, 68081,
4193 -4785, 70553, -4785, 2584, 2584, 8146, 82320, -4785, 4875, -4785,
4194 -4785, -4785, -4785, -4785, 350, 3048, -4785, -4785, 1752, 4273,
4195 -4785, 82320, -4785, -4785, 1119, 4876, -4785, 4544, 2449, -4785,
4196 20164, 4173, 4165, -4785, -4785, -4785, -4785, 3473, 4897, 4175,
4197 -4785, -4785, -4785, 76140, -4785, 4793, -4785, -4785, -4785, -4785,
4198 2115, 1167, 851, -4785, 1167, -4785, 70553, 33677, 70553, -4785,
4199 39103, 70553, 2425, 82320, -4785, -4785, -4785, 70553, 70553, -4785,
4200 -4785, 33677, 4177, -4785, 2449, 2531, -4785, -4785, -4785, 3518,
4201 4631, 70553, 33677, -4785, 33677, -4785, 4378, 2568, -4785, 4174,
4202 82320, -4785, -4785, -4785, -4785, -4785, -4785, 3473, 3988, 4562,
4203 -4785, -4785, 4287, 1119, 4529, -4785, 498, -4785, 82320, 190,
4204 49515, -4785, 101, -4785, 101, -4785, 101, -4785, -4785, 1062,
4205 -4785, -4785, -4785, 48867, -4785, 4798, 4674, 4632, 4658, -4785,
4206 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 2712, -4785,
4207 2714, -4785, -4785, 86028, 9019, -4785, 2739, -4785, -4785, -4785,
4208 4679, 4182, -4785, 4205, -4785, -4785, -4785, -4785, -4785, -4785,
4209 -4785, 3473, 73050, -4785, -4785, -4785, 82320, 4843, 4844, -4785,
4210 -4785, -4785, -4785, -4785, 4765, -4785, -4785, 4198, 2449, -4785,
4211 -4785, 4211, 78612, -4785, -4785, 20164, -4785, 4425, -4785, 4531,
4212 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 247,
4213 -4785, -4785, -4785, -4785, 3751, -4785, -4785, -4785, 4213, -4785,
4214 101, 3908, -4785, -4785, 20164, -4785, -4785, 4218, 4473, 2449,
4215 2449, -4785, -4785, 101, -4785, 4142, 4208, 82320, -4785, 4572,
4216 -4785, -4785, -4785, -4785, -4785, 2349, -4785, -4785, 76758, -4785,
4217 -4785, -4785, -4785, 3558, -4785, -4785, 3315, -4785, -4785, 4221,
4218 -4785, 4689, -4785, -4785, -4785, 4693, 3473, 82320, 4262, 2027,
4219 4930, 4709, -4785, 287, -4785, -4785, 82320, -4785, -4785, 101,
4220 4579, -4785, -4785, 4418, 82320, 2741, 2449, 4233, 2743, -4785,
4221 68081, -4785, -4785, 82320, 1828, -4785, 9283, -4785, 20164, 2584,
4222 -4785, -4785, 70553, 4238, 4710, 1524, 70553, 70553, -4785, 4948,
4223 -4785, 4239, -4785, 316, -4785, -4785, -4785, 4244, 4246, -4785,
4224 82320, -4785, -4785, 4922, 49515, -4785, -4785, -4785, 4816, 1783,
4225 -4785, 4250, 4254, 7464, -4785, -4785, 9019, 3048, -4785, -4785,
4226 1650, 4860, -4785, 3473, -4785, -4785, 4259, 82320, -4785, 1828,
4227 2349, -4785, -4785, 4919, -4785, 4923, 1720, -4785, 70553, 1269,
4228 3930, -4785, 70553, 4138, -4785, 428, -4785, 69935, -4785, -4785,
4229 -4785, 4753, 1303, -4785, 82320, -4785, -4785, -4785, -4785, -4785,
4230 -4785, -4785, -4785, -4785, 4267, 2850, 4720, 2763, -4785, -4785,
4231 -4785, -4785, 43035, -4785, -4785, -4785, 4454, -4785, 1062, -4785,
4232 4739, 68081, -4785, -4785, 247, 1741, 247, 4679, -4785, -4785,
4233 82320, -4785, 82320, 4840, -4785, -4785, 35049, -4785, -4785, -4785,
4234 4584, -4785, 2773, -4785, -4785, 4271, 20164, -4785, -4785, -4785,
4235 1008, 2867, -4785, -4785, -4785, 4276, -4785, 4277, 3360, 3935,
4236 -4785, 4780, 4396, 4014, 4015, 4016, 4449, 4605, -4785, 4450,
4237 -4785, -4785, -4785, 4283, -4785, -4785, 1401, -4785, -4785, -4785,
4238 -4785, 1828, 3558, 4547, 20164, 4289, 20164, 4290, 2788, -4785,
4239 -4785, 2027, 2027, -4785, 989, 4279, -4785, -4785, 4686, 4291,
4240 2792, 1213, 82320, -4785, 4854, 1213, 4292, 4293, -4785, -4785,
4241 4488, 2875, 70553, 4710, 1563, 82320, 4878, 954, -4785, 954,
4242 -4785, -4785, 3309, -4785, -4785, 3531, 82320, 4735, -4785, 2305,
4243 -4785, -4785, -4785, -4785, 4640, -4785, 82320, 1077, 4482, -4785,
4244 -4785, 50788, -4785, 5004, 5008, 4959, 5012, 1650, -4785, 1985,
4245 -4785, -4785, -4785, -4785, -4785, -4785, -4785, 70553, 1192, -4785,
4246 4980, 4981, 1303, -4785, -4785, -4785, -4785, 851, -4785, 68081,
4247 -4785, -4785, 4138, 1124, 4394, -4785, 49515, 1917, 4267, 4307,
4248 4828, 581, -4785, -4785, 1114, -4785, -4785, 82320, 81702, -4785,
4249 -4785, -4785, 3757, -4785, -4785, -4785, -4785, -4785, 4303, -4785,
4250 73050, -4785, -4785, -4785, -4785, 87882, -4785, 2449, 78612, 78612,
4251 -4785, -4785, -4785, 2349, 97, -4785, 5037, 1446, -4785, -4785,
4252 337, -4785, -4785, 82320, 26716, 4389, -4785, -4785, 4377, -4785,
4253 -4785, 4288, -4785, 3953, 4364, 3473, 82320, 3473, 82320, -4785,
4254 -4785, -4785, -4785, 2356, -4785, 2356, -4785, 989, -4785, -4785,
4255 1971, 1213, 1428, 2449, 4316, 1407, -4785, 82320, 266, -4785,
4256 -4785, -4785, 954, 2801, -4785, 1273, 4882, -4785, 4318, -4785,
4257 4319, 4320, -4785, 4934, -4785, 1119, -4785, 4395, -4785, 3309,
4258 -4785, -4785, -4785, 4358, 4936, 4896, 108, 79230, 28899, -4785,
4259 4796, -4785, 108, 4758, 5010, -4785, 5057, -4785, 2809, -4785,
4260 -4785, -4785, -4785, -4785, -4785, -4785, 2272, -4785, -4785, 4532,
4261 -4785, 82320, -4785, 1741, 1741, 5046, 1741, -4785, 5049, 5052,
4262 1985, -4785, 4948, 3518, 4572, -4785, -4785, 28899, -4785, -4785,
4263 -4785, 4961, -4785, 20164, 4683, -4785, -4785, 1159, 2349, 2349,
4264 4343, 2850, -4785, -4785, 4533, 5053, 5054, -4785, -4785, 2822,
4265 -4785, -4785, 69935, -4785, 82320, -4785, -4785, -4785, -4785, -4785,
4266 -4785, -4785, 4780, -4785, -4785, 4475, 4790, -4785, 2832, -4785,
4267 -4785, -4785, 3518, -4785, 4354, -4785, 4711, 108, 108, 4712,
4268 108, 108, 108, 108, 4359, 4288, -4785, 4695, -4785, -4785,
4269 2871, 2889, 5007, 5007, -4785, 2891, 1245, 4550, 1119, 108,
4270 1210, 1428, -4785, -4785, 108, -4785, -4785, 1210, 1407, -4785,
4271 -4785, 4361, -4785, 4375, 4384, -4785, -4785, 82320, -4785, -4785,
4272 -4785, 421, -4785, 82320, 4386, 82320, 82320, -4785, -4785, -4785,
4273 -4785, -4785, -4785, -4785, 54767, -4785, 2578, 2578, 20164, -4785,
4274 -4785, -4785, -4785, -4785, 4947, -4785, 82320, -4785, 4413, 1398,
4275 -4785, 68081, 4519, 82320, 4383, -4785, -4785, 1741, -4785, 1741,
4276 1741, -4785, -4785, -4785, 2895, -4785, -4785, 4387, 3473, 20164,
4277 -4785, 2349, 1918, -4785, -4785, -4785, -4785, 1917, 498, -4785,
4278 4567, 4580, -4785, 81702, 4390, -4785, 108, 389, -4785, -4785,
4279 -4785, -4785, -4785, 82320, 4379, -4785, 4391, -4785, -4785, 68,
4280 108, 1119, 1119, 108, 3869, 3869, 3518, 79230, 4452, -4785,
4281 -4785, 108, -4785, -4785, 2135, -4785, -4785, -4785, 954, 954,
4282 1210, 1245, -4785, -4785, -4785, 3341, -4785, 101, -4785, 4993,
4283 4827, -4785, 55434, -4785, -4785, -4785, 82320, 82320, 4401, -4785,
4284 553, 553, 2900, 82320, 2905, 2918, -4785, -4785, -4785, -4785,
4285 -4785, -4785, 4398, 4402, -4785, -4785, 72, -4785, 5055, 4752,
4286 4404, 82320, -4785, -4785, -4785, -4785, 4572, 3473, -4785, 1828,
4287 2349, 1159, -4785, -4785, -4785, -4785, -4785, -4785, 69935, 19436,
4288 -4785, 4389, -4785, -4785, -4785, 2929, -4785, 23804, -4785, -4785,
4289 -4785, 1119, -4785, -4785, 1119, -4785, -4785, -4785, -4785, -4785,
4290 2934, -4785, 79230, 5119, -4785, 5120, 4409, 4415, -4785, -4785,
4291 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4292 2946, 2958, 82320, -4785, -4785, 2024, 4852, 4988, 4989, 1245,
4293 2974, 1428, 1407, -4785, 284, -4785, 3226, 3226, 1294, -4785,
4294 -4785, 82320, 4421, 2979, -4785, -4785, -4785, -4785, -4785, 4952,
4295 -4785, -4785, 4391, -4785, 4430, -4785, 3177, -4785, -4785, 79230,
4296 -4785, 4452, -4785, -4785, -4785, 80466, 80466, 4583, 1245, 2981,
4297 -4785, -4785, -4785, 4904, 5115, -4785, 1245, -4785, -4785, -4785,
4298 4438, -4785, 3226, -4785, -4785, -4785, -4785, -4785, 1513, -4785,
4299 -4785, -4785, 82320, -4785, 4731, 4544, -4785, 23804, 4441, 4288,
4300 -4785, -4785, 4442, 2992, -4785, -4785, 1245, 553, 553, -4785,
4301 -4785, -4785, -4785, 1513, -4785, 5112, -4785, 5161, 4860, -4785,
4302 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 4581, 1741,
4303 5085, -4785, -4785, 5026, 4462, 1489, 426, 62519, 4975, -4785,
4304 -4785, 79230, -4785, -4785, -4785, -4785, -4785, 79230, 2999, -4785,
4305 -4785, 69935, -4785, -4785, 49515, -4785, -4785, 63137, 4469, -4785,
4306 108, -4785, -4785, 69935, -4785, -4785, 19436, -4785, -4785
4307};
4308
4309 /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
4310 Performed when YYTABLE does not specify something else to do. Zero
4311 means the default is an error. */
4312static const yytype_uint16 yydefact[] =
4313{
4314 2440, 1090, 2289, 0, 427, 0, 1296, 711, 2147, 2283,
4315 2284, 2083, 2, 481, 222, 394, 2085, 2350, 0, 0,
4316 477, 1312, 844, 599, 2345, 0, 0, 484, 2088, 321,
4317 222, 2962, 2191, 0, 3052, 2136, 0, 479, 2444, 3330,
4318 3193, 0, 0, 0, 3198, 68, 2052, 0, 1312, 344,
4319 0, 83, 0, 0, 1312, 2332, 3198, 0, 2361, 0,
4320 0, 2172, 0, 0, 0, 3, 8, 21, 0, 43,
4321 26, 31, 16, 20, 15, 56, 50, 28, 3195, 390,
4322 391, 392, 393, 41, 3258, 40, 11, 59, 60, 18,
4323 47, 12, 14, 17, 39, 46, 35, 42, 54, 24,
4324 25, 32, 48, 64, 22, 61, 57, 23, 2289, 13,
4325 27, 49, 44, 36, 58, 65, 37, 0, 2441, 55,
4326 38, 63, 30, 51, 29, 9, 10, 19, 52, 53,
4327 45, 66, 33, 62, 34, 1124, 0, 0, 0, 0,
4328 0, 0, 2081, 0, 0, 1206, 0, 1442, 3256, 3257,
4329 3258, 1313, 0, 1314, 0, 2440, 2482, 2483, 2665, 2554,
4330 2713, 2740, 2568, 2835, 2858, 2885, 2647, 2649, 2648, 2650,
4331 2651, 2652, 2653, 2654, 2655, 2542, 2656, 2657, 2658, 2660,
4332 2659, 2661, 2662, 2663, 2543, 2612, 2544, 2617, 2664, 2619,
4333 2618, 2666, 2545, 2546, 2667, 2668, 2669, 2670, 2599, 2548,
4334 2547, 2671, 2673, 2672, 2620, 2602, 2674, 2675, 2676, 2678,
4335 2549, 2550, 2551, 2552, 2553, 2677, 2679, 2603, 2680, 2681,
4336 2682, 2683, 2684, 2685, 2686, 2688, 2687, 2596, 2689, 2690,
4337 2692, 2693, 2694, 2691, 2695, 2696, 2698, 2697, 2622, 2699,
4338 2621, 2700, 2555, 2701, 2702, 2703, 2704, 2705, 2706, 2707,
4339 2708, 2709, 2604, 2710, 2711, 2712, 2732, 2613, 2714, 2716,
4340 2715, 2623, 2717, 2718, 2719, 2721, 2720, 2722, 2724, 2556,
4341 2557, 2558, 2723, 2725, 2726, 2727, 2728, 2730, 2729, 2734,
4342 2735, 2624, 2559, 2600, 2560, 2561, 2731, 2733, 2939, 2736,
4343 2737, 2625, 2626, 2738, 2562, 2614, 2739, 2605, 2742, 2741,
4344 2563, 2743, 2564, 2744, 2745, 2746, 2747, 2748, 2750, 2752,
4345 2749, 2753, 2754, 2760, 2565, 2751, 2755, 2756, 2757, 2758,
4346 2759, 2761, 2627, 2762, 2597, 2764, 2763, 2765, 2766, 2767,
4347 2768, 2628, 2769, 2615, 2770, 2771, 2772, 2785, 2786, 2776,
4348 2777, 2779, 2780, 2783, 2778, 2784, 2789, 2788, 2790, 2791,
4349 2792, 2793, 2794, 2787, 2774, 2781, 2782, 2775, 2795, 2796,
4350 2773, 2797, 2799, 2798, 2800, 2629, 2801, 2802, 2803, 2804,
4351 2805, 2806, 2807, 2808, 2810, 2809, 2811, 2630, 2631, 2632,
4352 2812, 2813, 2814, 2816, 2815, 2633, 2634, 2819, 2817, 2818,
4353 2820, 2821, 2826, 2827, 2828, 2598, 2823, 2822, 2824, 2825,
4354 2635, 2636, 2829, 2830, 2831, 2832, 2834, 2833, 2606, 2567,
4355 2566, 2569, 2836, 2837, 2570, 2838, 2840, 2839, 2841, 2571,
4356 2842, 2843, 2845, 2844, 2637, 2638, 2572, 2601, 2573, 2574,
4357 2846, 2847, 2848, 2849, 2850, 2851, 2852, 2853, 2854, 2855,
4358 2856, 2857, 2639, 2859, 2860, 2861, 2863, 2862, 2864, 2865,
4359 2866, 2867, 2868, 2869, 2870, 2575, 2871, 2607, 2872, 2873,
4360 2576, 2875, 2874, 2577, 2876, 2877, 2878, 2879, 2880, 2881,
4361 2608, 2882, 2883, 2884, 2640, 2886, 2887, 2888, 2609, 2889,
4362 2890, 2891, 2578, 2892, 2893, 2641, 2616, 2579, 2894, 2896,
4363 2610, 2580, 2895, 2582, 2583, 2897, 2898, 2899, 2581, 2900,
4364 2584, 2901, 2902, 2904, 2903, 2905, 2906, 2907, 2585, 2908,
4365 2909, 2586, 2910, 2587, 2911, 2912, 2913, 2914, 2916, 2915,
4366 2917, 2918, 2919, 2920, 2921, 2922, 2924, 2926, 2925, 2923,
4367 2927, 2928, 2642, 2929, 2588, 2643, 2934, 2935, 2644, 2930,
4368 2931, 2932, 2933, 2611, 2936, 2937, 2938, 2591, 2940, 2941,
4369 2943, 2942, 2589, 2590, 2944, 2945, 2595, 2946, 2947, 2952,
4370 2645, 2948, 2949, 2961, 2950, 2951, 2954, 2953, 2955, 2956,
4371 2523, 2592, 2957, 2958, 2593, 2959, 2594, 2960, 2646, 240,
4372 2487, 2496, 224, 2497, 2520, 2518, 2522, 2517, 2521, 2516,
4373 2519, 429, 128, 0, 0, 0, 0, 2167, 2081, 2079,
4374 2081, 2081, 2081, 2081, 0, 2081, 2081, 0, 2084, 2081,
4375 2081, 0, 0, 0, 420, 2091, 2352, 0, 2368, 2369,
4376 2363, 3042, 3043, 3037, 396, 0, 0, 0, 0, 0,
4377 222, 1315, 396, 2145, 311, 320, 322, 323, 319, 0,
4378 2964, 0, 2263, 323, 0, 2145, 2362, 0, 2445, 2442,
4379 1512, 1511, 0, 3198, 2488, 1292, 1323, 1250, 3199, 3200,
4380 0, 71, 73, 2294, 345, 0, 0, 0, 0, 2481,
4381 0, 0, 0, 0, 1258, 0, 3200, 3210, 0, 128,
4382 1231, 0, 128, 2174, 0, 0, 3314, 0, 0, 0,
4383 3309, 0, 3315, 0, 1, 5, 0, 0, 709, 1047,
4384 1048, 1046, 709, 709, 0, 0, 0, 0, 0, 3263,
4385 3256, 3257, 3258, 2727, 2561, 2840, 2276, 2288, 2274, 2476,
4386 1406, 3231, 1364, 1349, 1351, 1093, 1125, 2082, 1096, 0,
4387 0, 1098, 0, 1113, 2502, 2501, 2500, 1110, 1109, 1108,
4388 1106, 0, 552, 0, 1208, 222, 0, 0, 0, 3264,
4389 3263, 0, 1269, 2278, 2279, 2280, 2281, 2282, 2285, 242,
4390 0, 440, 443, 0, 432, 435, 0, 129, 130, 1294,
4391 1297, 0, 712, 0, 164, 0, 2171, 2170, 0, 2169,
4392 2148, 0, 2167, 0, 0, 0, 0, 0, 0, 0,
4393 0, 222, 0, 2259, 222, 2063, 2081, 2081, 482, 0,
4394 3101, 3116, 3117, 1455, 3113, 3118, 0, 3115, 3107, 0,
4395 3111, 3105, 0, 3137, 3109, 3114, 2720, 2558, 2734, 2850,
4396 2854, 2870, 2873, 2610, 2917, 3095, 3082, 3096, 0, 0,
4397 3099, 3103, 0, 0, 2092, 2093, 2094, 1204, 2353, 2354,
4398 2355, 0, 2372, 0, 0, 0, 0, 398, 451, 0,
4399 0, 396, 383, 0, 382, 384, 2440, 378, 385, 386,
4400 387, 0, 388, 389, 448, 0, 379, 380, 478, 381,
4401 2498, 0, 2499, 2526, 2524, 2525, 1310, 0, 2430, 0,
4402 0, 0, 0, 0, 0, 0, 0, 0, 1455, 1455,
4403 1455, 1452, 0, 0, 0, 2435, 0, 0, 0, 0,
4404 2426, 0, 2436, 0, 0, 0, 2428, 2429, 2484, 2485,
4405 0, 0, 0, 0, 2433, 0, 0, 0, 0, 0,
4406 2411, 1514, 0, 1452, 0, 2425, 2432, 0, 2419, 0,
4407 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4408 0, 0, 1452, 2410, 0, 2427, 2434, 0, 1455, 1452,
4409 1452, 0, 0, 2648, 2542, 2663, 2599, 2674, 2676, 2549,
4410 2550, 2551, 2552, 2553, 2596, 2699, 2621, 2700, 2701, 2561,
4411 2625, 2738, 2745, 2763, 2765, 2628, 2804, 2806, 2811, 2630,
4412 2631, 2632, 2817, 2818, 2831, 2841, 2637, 2638, 2848, 2855,
4413 2880, 2640, 2886, 2891, 2894, 2913, 2643, 2934, 2935, 2644,
4414 2933, 2611, 2946, 2952, 2955, 2956, 2592, 2646, 0, 0,
4415 0, 3242, 1513, 0, 0, 1742, 845, 1467, 1473, 1487,
4416 0, 1580, 1582, 1584, 1590, 1506, 1610, 1552, 1553, 1555,
4417 1671, 1554, 1559, 1560, 0, 1719, 1561, 0, 0, 1558,
4418 2422, 1557, 1556, 2423, 2424, 1551, 2462, 0, 2486, 601,
4419 600, 2258, 2257, 0, 2346, 3211, 0, 0, 396, 485,
4420 2146, 2096, 0, 2095, 312, 0, 0, 342, 3101, 2649,
4421 2854, 3073, 0, 3081, 0, 0, 0, 0, 969, 2987,
4422 2988, 2816, 2841, 2881, 2989, 2930, 0, 0, 0, 2963,
4423 2973, 2969, 0, 0, 0, 2271, 1043, 1042, 0, 0,
4424 0, 2213, 0, 969, 2271, 2214, 0, 1974, 2261, 2264,
4425 0, 2991, 2227, 1044, 2992, 2257, 0, 2199, 2215, 2176,
4426 2220, 128, 2993, 0, 2260, 1974, 2271, 0, 2192, 0,
4427 0, 0, 0, 1441, 0, 318, 3053, 1204, 480, 0,
4428 0, 453, 3194, 0, 0, 0, 3203, 1783, 2053, 75,
4429 0, 77, 0, 0, 2478, 1909, 3056, 3055, 0, 84,
4430 0, 3327, 71, 0, 2338, 0, 2336, 2333, 2335, 0,
4431 3203, 1238, 1238, 0, 0, 1230, 1232, 1233, 1238, 1238,
4432 2175, 0, 3328, 3329, 2418, 2416, 2417, 2489, 3311, 2415,
4433 2414, 3319, 3321, 3305, 0, 3308, 3307, 3316, 6, 67,
4434 0, 0, 222, 222, 709, 166, 709, 709, 709, 709,
4435 709, 149, 147, 151, 0, 0, 157, 0, 153, 3263,
4436 2440, 2291, 1409, 1414, 0, 1364, 0, 0, 0, 3214,
4437 3213, 3212, 3226, 1352, 1353, 0, 985, 0, 225, 3261,
4438 3262, 3260, 1455, 2503, 2506, 3259, 2507, 225, 1107, 0,
4439 553, 0, 0, 0, 0, 0, 0, 555, 554, 491,
4440 0, 1212, 1213, 1207, 1209, 1211, 0, 0, 0, 0,
4441 0, 2290, 0, 244, 241, 223, 0, 396, 0, 430,
4442 436, 85, 0, 1298, 2072, 2074, 163, 0, 0, 0,
4443 2149, 0, 1916, 2151, 2155, 2161, 2165, 2168, 2057, 2080,
4444 0, 2060, 2066, 2065, 2059, 2259, 0, 2069, 566, 0,
4445 0, 0, 2070, 2054, 0, 455, 457, 3102, 3100, 3134,
4446 3133, 3138, 0, 3135, 3131, 0, 3094, 3139, 3124, 3166,
4447 3128, 3166, 3166, 3125, 3132, 3166, 0, 3130, 3129, 0,
4448 3097, 0, 0, 0, 1205, 0, 2356, 2357, 0, 1333,
4449 2374, 2373, 2370, 1909, 3039, 3044, 0, 0, 2817, 0,
4450 401, 400, 0, 276, 417, 409, 0, 0, 274, 397,
4451 415, 418, 471, 467, 475, 469, 449, 445, 0, 0,
4452 0, 0, 1585, 1914, 1914, 1914, 0, 0, 1791, 0,
4453 0, 0, 0, 1914, 0, 1616, 1596, 1597, 0, 1617,
4454 0, 0, 0, 0, 0, 3242, 0, 0, 1748, 0,
4455 0, 0, 0, 3242, 0, 0, 2484, 2485, 0, 0,
4456 1785, 1787, 2462, 1914, 0, 1914, 0, 1460, 1625, 0,
4457 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4458 1914, 1914, 0, 1914, 1633, 0, 2412, 2431, 1637, 1639,
4459 1638, 1914, 1914, 0, 0, 1914, 0, 0, 0, 0,
4460 0, 0, 0, 0, 0, 0, 2437, 0, 0, 0,
4461 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4462 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4463 0, 0, 0, 0, 0, 0, 0, 2439, 0, 0,
4464 0, 2438, 0, 0, 0, 0, 0, 0, 0, 0,
4465 0, 0, 1587, 0, 1586, 1588, 0, 847, 846, 2440,
4466 0, 0, 0, 1510, 1509, 1508, 1507, 0, 0, 0,
4467 0, 1516, 0, 1518, 1520, 1515, 1517, 1519, 0, 0,
4468 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4469 0, 0, 0, 0, 0, 0, 0, 0, 1589, 0,
4470 0, 0, 0, 0, 2413, 0, 1681, 613, 0, 1317,
4471 2508, 0, 1316, 1320, 3039, 464, 0, 2099, 2089, 2098,
4472 1821, 310, 335, 330, 338, 332, 334, 333, 339, 340,
4473 341, 336, 331, 337, 324, 0, 3100, 0, 0, 0,
4474 3097, 0, 0, 2965, 2967, 968, 0, 0, 971, 973,
4475 2116, 2115, 972, 981, 0, 970, 0, 3027, 0, 3013,
4476 0, 2994, 0, 977, 979, 978, 3008, 976, 0, 0,
4477 0, 2978, 0, 0, 709, 0, 0, 0, 0, 0,
4478 0, 0, 2242, 0, 1441, 1441, 2193, 0, 2271, 2261,
4479 0, 2271, 2267, 2226, 0, 0, 765, 1976, 2219, 0,
4480 1975, 2265, 2266, 2271, 0, 0, 2271, 0, 2233, 2261,
4481 2271, 2188, 0, 0, 2180, 2185, 2181, 0, 2187, 2186,
4482 2189, 2177, 2178, 0, 2206, 2235, 0, 2218, 2225, 0,
4483 2205, 2212, 0, 2223, 2261, 2261, 0, 2271, 2271, 2271,
4484 1826, 462, 2443, 2446, 2450, 2454, 276, 0, 1325, 1327,
4485 1326, 1343, 1252, 3202, 0, 3204, 0, 3206, 0, 77,
4486 72, 78, 74, 0, 2319, 0, 0, 0, 2313, 2315,
4487 2318, 2314, 0, 0, 2320, 128, 0, 2316, 2295, 2298,
4488 2305, 1441, 2296, 0, 0, 343, 346, 348, 0, 351,
4489 1910, 1911, 0, 3054, 0, 2477, 0, 70, 1256, 1259,
4490 0, 2343, 2340, 128, 0, 2609, 3209, 3207, 1226, 1242,
4491 1224, 1236, 1237, 0, 0, 1229, 1228, 3039, 0, 0,
4492 3306, 3322, 3304, 0, 3317, 3318, 3303, 7, 4, 0,
4493 141, 0, 0, 0, 0, 0, 0, 0, 0, 709,
4494 1442, 1442, 709, 159, 709, 155, 709, 0, 2277, 2275,
4495 2292, 2293, 1826, 2038, 0, 1350, 1433, 1398, 1410, 1433,
4496 1916, 1974, 3224, 1409, 1401, 3255, 3250, 3252, 3251, 3248,
4497 3249, 3253, 1432, 3254, 1431, 1442, 1415, 1429, 1430, 2123,
4498 3232, 2111, 0, 1354, 1365, 1406, 3228, 3227, 3217, 3222,
4499 986, 985, 703, 706, 705, 0, 0, 1097, 2505, 0,
4500 1099, 0, 2259, 1114, 0, 0, 2259, 502, 2259, 556,
4501 3039, 1210, 2506, 3165, 0, 3171, 3153, 3265, 3266, 1104,
4502 1102, 0, 1270, 1271, 1274, 0, 245, 247, 441, 396,
4503 0, 0, 0, 1308, 0, 1306, 1305, 1303, 1304, 1302,
4504 0, 1293, 1299, 1300, 2259, 494, 1821, 0, 2152, 2157,
4505 2076, 2078, 2476, 1917, 1965, 0, 0, 0, 2163, 0,
4506 0, 566, 2062, 3092, 569, 568, 2067, 567, 2117, 3151,
4507 2061, 1214, 0, 0, 396, 456, 402, 3127, 1456, 0,
4508 3108, 3112, 3106, 3110, 0, 3090, 0, 3098, 0, 0,
4509 3136, 3119, 3123, 3122, 3120, 0, 3121, 3126, 3104, 395,
4510 421, 2086, 2358, 2946, 2359, 2351, 0, 2371, 0, 0,
4511 3041, 1994, 0, 3038, 0, 0, 0, 412, 399, 272,
4512 402, 411, 461, 275, 0, 0, 396, 396, 0, 276,
4513 3039, 0, 1915, 0, 1763, 0, 0, 0, 0, 0,
4514 0, 1567, 0, 0, 0, 1702, 0, 1763, 1725, 2024,
4515 2025, 2005, 2006, 2004, 2007, 1453, 0, 2008, 2023, 1649,
4516 0, 0, 0, 1723, 0, 1885, 1886, 1887, 1888, 1889,
4517 1890, 1891, 1892, 1893, 1894, 1895, 1896, 1898, 1903, 1899,
4518 1900, 1901, 1902, 1897, 1904, 0, 1884, 0, 1749, 1715,
4519 0, 0, 0, 0, 847, 0, 0, 0, 0, 0,
4520 0, 1914, 0, 0, 1914, 0, 0, 0, 0, 1724,
4521 0, 0, 0, 1722, 0, 0, 0, 1721, 0, 0,
4522 0, 1914, 0, 0, 0, 0, 1543, 0, 0, 0,
4523 0, 0, 1914, 0, 0, 0, 0, 0, 0, 0,
4524 1541, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4525 0, 1907, 1905, 1908, 1906, 0, 0, 1783, 0, 0,
4526 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4527 0, 0, 0, 0, 0, 0, 0, 1663, 0, 0,
4528 0, 0, 0, 0, 0, 0, 0, 1612, 0, 0,
4529 2467, 2469, 2466, 0, 1013, 0, 0, 0, 0, 1581,
4530 0, 0, 0, 0, 2994, 1743, 1745, 1458, 1457, 1459,
4531 1470, 1463, 1468, 1461, 1465, 0, 1521, 2655, 1471, 0,
4532 0, 1503, 3242, 1923, 1504, 1492, 1485, 1490, 1491, 0,
4533 1488, 1489, 0, 1494, 0, 1493, 1500, 1501, 1502, 1505,
4534 0, 0, 0, 0, 1583, 980, 1591, 1936, 1717, 1718,
4535 1741, 1940, 0, 2463, 1442, 614, 0, 608, 611, 625,
4536 0, 0, 0, 2347, 0, 0, 0, 0, 0, 2097,
4537 2440, 0, 2075, 1822, 0, 0, 0, 0, 0, 3155,
4538 3079, 0, 0, 0, 0, 0, 0, 0, 0, 3011,
4539 0, 0, 3010, 3009, 0, 3029, 0, 0, 3014, 0,
4540 0, 2972, 3015, 3016, 3019, 0, 0, 0, 0, 0,
4541 0, 3035, 3036, 3033, 3034, 3032, 3001, 2930, 2974, 2975,
4542 2980, 2970, 2234, 0, 0, 2237, 2230, 2241, 2665, 2239,
4543 2251, 2238, 2232, 2243, 2231, 0, 0, 2248, 2244, 2271,
4544 0, 2271, 2246, 0, 2269, 2256, 2255, 2254, 2203, 2202,
4545 1987, 1988, 0, 1986, 1977, 1980, 1985, 1983, 2196, 2262,
4546 2249, 2245, 222, 2271, 2201, 2200, 2182, 2183, 2184, 0,
4547 1974, 0, 2267, 2236, 2261, 0, 2271, 2271, 2252, 2253,
4548 2222, 2224, 1854, 0, 1796, 0, 1798, 1795, 1794, 1793,
4549 1824, 0, 1825, 396, 0, 0, 2448, 272, 0, 0,
4550 598, 1343, 1329, 1345, 1254, 1253, 1251, 3201, 3205, 1784,
4551 76, 0, 2324, 2307, 2306, 2308, 2312, 128, 2317, 2309,
4552 0, 2321, 2322, 2621, 2643, 2644, 355, 0, 328, 327,
4553 329, 352, 0, 0, 2491, 1913, 2492, 2513, 2511, 2515,
4554 2510, 2514, 2509, 2512, 2735, 2817, 0, 1916, 3058, 3326,
4555 0, 1260, 1994, 2339, 2341, 2334, 3208, 1227, 1244, 1243,
4556 1239, 1240, 1245, 1235, 1234, 2173, 3312, 3320, 3324, 3310,
4557 710, 985, 3088, 3171, 191, 1063, 0, 0, 131, 133,
4558 0, 150, 709, 148, 152, 709, 0, 709, 169, 158,
4559 0, 170, 167, 709, 154, 0, 709, 1413, 1411, 1412,
4560 0, 0, 2051, 0, 2046, 1967, 0, 0, 1382, 0,
4561 1399, 1403, 1404, 1380, 1924, 3223, 1410, 1965, 1438, 1407,
4562 1437, 0, 1428, 2125, 0, 1368, 1355, 1356, 1409, 0,
4563 704, 2117, 2117, 0, 0, 0, 0, 0, 0, 0,
4564 0, 226, 235, 2504, 0, 0, 500, 501, 2117, 499,
4565 542, 543, 546, 547, 548, 0, 0, 549, 2117, 2117,
4566 496, 522, 523, 526, 527, 528, 529, 530, 492, 0,
4567 497, 1091, 0, 0, 0, 3183, 1116, 3267, 1100, 0,
4568 0, 1273, 243, 0, 0, 428, 437, 431, 433, 0,
4569 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4570 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4571 0, 0, 0, 86, 87, 108, 0, 1295, 1307, 2073,
4572 1301, 2117, 2117, 2117, 2117, 498, 531, 532, 535, 536,
4573 537, 538, 541, 539, 540, 0, 2259, 2153, 1416, 0,
4574 0, 0, 2479, 0, 1990, 1966, 2162, 1826, 2166, 2165,
4575 3039, 2058, 2068, 0, 2118, 0, 0, 1216, 1215, 2064,
4576 2071, 3039, 396, 300, 405, 459, 3170, 0, 3169, 0,
4577 0, 3087, 3147, 3150, 2476, 0, 0, 0, 396, 2440,
4578 2360, 1334, 1336, 1337, 1335, 1343, 0, 0, 3047, 3048,
4579 3046, 1999, 1995, 0, 3040, 3045, 413, 416, 0, 0,
4580 396, 0, 403, 407, 0, 419, 472, 446, 446, 446,
4581 272, 1311, 0, 1697, 0, 1698, 1699, 0, 1568, 1792,
4582 0, 0, 0, 1594, 0, 0, 0, 1701, 0, 1454,
4583 0, 0, 1571, 1563, 0, 1727, 0, 1732, 0, 1730,
4584 0, 0, 0, 0, 0, 0, 1786, 0, 1788, 2463,
4585 0, 1707, 1737, 0, 1705, 0, 1726, 0, 1738, 1739,
4586 0, 0, 0, 0, 1711, 1709, 0, 0, 0, 1713,
4587 0, 0, 0, 0, 0, 0, 0, 1611, 1710, 1712,
4588 0, 1645, 0, 1695, 1646, 1647, 1648, 0, 1642, 0,
4589 1643, 0, 0, 0, 0, 0, 1598, 1599, 0, 0,
4590 1673, 0, 1600, 1653, 0, 1576, 1674, 1655, 1605, 1606,
4591 1675, 1676, 1677, 1573, 1574, 1657, 1658, 0, 1679, 1575,
4592 1659, 1662, 0, 1608, 1994, 0, 1592, 0, 0, 0,
4593 1609, 1636, 0, 0, 1572, 0, 1665, 0, 0, 0,
4594 1994, 0, 0, 1613, 0, 0, 848, 1843, 1375, 1433,
4595 3230, 3229, 3238, 3239, 3243, 1564, 2464, 0, 0, 1464,
4596 1469, 1462, 1466, 3242, 0, 0, 0, 0, 1483, 1482,
4597 0, 0, 0, 3242, 1923, 1486, 1938, 0, 0, 1735,
4598 1781, 0, 0, 0, 1691, 1692, 0, 1442, 607, 606,
4599 0, 610, 686, 0, 627, 615, 604, 2349, 2348, 0,
4600 1318, 1321, 0, 0, 2103, 0, 0, 2440, 2109, 2090,
4601 2100, 0, 0, 0, 325, 0, 3080, 0, 0, 0,
4602 0, 0, 0, 0, 2998, 2968, 2440, 0, 0, 984,
4603 983, 982, 3028, 0, 0, 3021, 3022, 0, 0, 0,
4604 2995, 2996, 2997, 0, 2533, 2493, 2495, 0, 2494, 2531,
4605 2529, 2532, 2528, 2527, 2530, 3004, 0, 2977, 2978, 2979,
4606 0, 0, 2229, 2240, 2272, 2273, 2197, 2250, 2247, 2268,
4607 1994, 2207, 0, 0, 0, 0, 0, 2228, 2198, 0,
4608 2221, 2179, 2269, 1916, 2261, 2194, 2195, 1854, 1826, 0,
4609 0, 1816, 1857, 0, 1857, 1818, 1819, 1826, 0, 1826,
4610 1821, 396, 2447, 0, 2452, 0, 396, 1332, 1324, 1331,
4611 1328, 1343, 1341, 1330, 1039, 1038, 0, 1344, 2130, 2131,
4612 79, 81, 2129, 82, 0, 2310, 2311, 2304, 2323, 2299,
4613 0, 347, 356, 349, 353, 354, 350, 3069, 3070, 3062,
4614 3065, 3063, 3064, 3068, 3071, 3072, 3059, 3066, 1974, 1267,
4615 1265, 1264, 1266, 1255, 1261, 1262, 2344, 2342, 2337, 1242,
4616 0, 1225, 1994, 0, 3323, 142, 985, 0, 162, 3183,
4617 0, 0, 0, 0, 0, 0, 713, 173, 3300, 3288,
4618 0, 143, 171, 160, 172, 168, 3297, 224, 156, 0,
4619 2490, 2047, 2050, 0, 2039, 2041, 2042, 2500, 2044, 0,
4620 3039, 0, 2031, 1400, 1405, 3215, 0, 1919, 1974, 1442,
4621 1443, 1443, 2462, 0, 2126, 2128, 2110, 1433, 1392, 1391,
4622 1406, 1369, 3218, 1358, 0, 0, 1095, 0, 0, 0,
4623 229, 232, 230, 231, 551, 550, 0, 2259, 544, 2117,
4624 2117, 187, 2117, 2117, 186, 188, 0, 182, 179, 189,
4625 2117, 1115, 175, 0, 0, 0, 0, 1994, 0, 0,
4626 0, 193, 0, 0, 2259, 524, 503, 504, 507, 508,
4627 509, 985, 0, 3158, 3157, 0, 3173, 0, 0, 3175,
4628 0, 3174, 3172, 3140, 3154, 0, 1112, 0, 1118, 1120,
4629 0, 0, 3267, 1272, 0, 246, 396, 0, 434, 0,
4630 0, 1994, 0, 1994, 1994, 0, 0, 1994, 0, 1994,
4631 0, 0, 0, 0, 0, 0, 0, 1994, 0, 0,
4632 0, 0, 1994, 0, 1309, 0, 0, 0, 0, 2259,
4633 533, 0, 2117, 493, 510, 511, 514, 515, 516, 517,
4634 518, 521, 519, 520, 1418, 1417, 0, 2150, 1420, 2077,
4635 2165, 1826, 2477, 1918, 0, 2159, 1916, 0, 2164, 2056,
4636 3093, 565, 764, 3152, 1214, 0, 301, 0, 0, 402,
4637 3167, 0, 3187, 0, 0, 0, 0, 0, 0, 396,
4638 2132, 0, 1343, 1347, 2364, 3050, 3051, 3049, 2002, 2003,
4639 2000, 1998, 2001, 414, 304, 303, 2541, 0, 292, 278,
4640 0, 374, 287, 372, 373, 2538, 2536, 2540, 2535, 2539,
4641 2534, 2537, 452, 0, 277, 0, 410, 402, 0, 466,
4642 468, 447, 476, 470, 396, 0, 1764, 1789, 0, 936,
4643 936, 922, 940, 1771, 1774, 936, 1778, 936, 1772, 936,
4644 0, 1769, 1770, 0, 0, 0, 1703, 1700, 0, 0,
4645 0, 1752, 0, 0, 0, 0, 0, 1497, 0, 1686,
4646 1708, 1706, 0, 0, 0, 0, 0, 0, 0, 0,
4647 1714, 1549, 0, 1547, 0, 1548, 0, 1550, 0, 0,
4648 1696, 0, 1523, 1542, 0, 0, 0, 0, 0, 0,
4649 0, 1784, 0, 0, 2010, 0, 0, 0, 0, 0,
4650 0, 0, 0, 0, 0, 2468, 0, 0, 0, 1002,
4651 1008, 1011, 1012, 1014, 1006, 0, 1667, 0, 0, 0,
4652 1409, 1842, 3244, 1375, 0, 0, 0, 3236, 1433, 3240,
4653 3226, 0, 3241, 1746, 1744, 0, 1480, 1476, 0, 1474,
4654 1922, 1496, 1495, 0, 0, 0, 1484, 1940, 1939, 0,
4655 1734, 0, 0, 1782, 2465, 1443, 1682, 1442, 617, 0,
4656 609, 0, 1994, 612, 626, 0, 638, 0, 0, 0,
4657 0, 1322, 0, 0, 2107, 2108, 2440, 0, 0, 0,
4658 2106, 2456, 2455, 2466, 692, 0, 1882, 0, 0, 3078,
4659 3156, 0, 0, 0, 0, 0, 2966, 3012, 3003, 0,
4660 0, 0, 0, 3026, 3020, 3017, 3018, 0, 0, 0,
4661 3002, 2976, 2982, 2981, 2984, 2986, 2217, 2216, 0, 2270,
4662 1974, 1989, 1979, 0, 1982, 1981, 1984, 2190, 2209, 2211,
4663 2271, 1856, 1849, 0, 3221, 1433, 1846, 1847, 1855, 1826,
4664 0, 0, 1820, 1817, 1858, 0, 1857, 1857, 1826, 0,
4665 1800, 2137, 2140, 0, 1799, 1422, 0, 2451, 0, 0,
4666 454, 0, 1876, 0, 0, 2302, 0, 2297, 2300, 0,
4667 0, 0, 3057, 0, 1257, 1263, 1241, 0, 1248, 1246,
4668 3313, 3325, 0, 161, 0, 1079, 1081, 1080, 1064, 1065,
4669 0, 137, 139, 0, 0, 2117, 2117, 2117, 2117, 2117,
4670 0, 2117, 2117, 2117, 2117, 2117, 0, 2117, 2117, 2117,
4671 2117, 2117, 2117, 2117, 2117, 2117, 2117, 0, 0, 2117,
4672 2117, 808, 132, 580, 594, 714, 717, 758, 742, 743,
4673 0, 985, 174, 0, 0, 202, 3267, 0, 0, 145,
4674 974, 2043, 0, 0, 2461, 1968, 1971, 1434, 0, 0,
4675 1381, 3216, 0, 1920, 1931, 1402, 1436, 1444, 1439, 0,
4676 2124, 0, 1367, 1409, 1369, 0, 0, 1359, 1360, 763,
4677 762, 234, 233, 238, 239, 2020, 2021, 2018, 2019, 557,
4678 570, 2022, 571, 545, 1994, 1994, 2122, 2121, 1994, 1994,
4679 181, 178, 2120, 2119, 1994, 1994, 176, 197, 196, 198,
4680 199, 201, 200, 195, 1111, 0, 558, 559, 525, 0,
4681 505, 1202, 1202, 0, 1202, 0, 0, 1202, 2117, 0,
4682 0, 598, 1220, 2117, 0, 0, 0, 0, 0, 1186,
4683 0, 1202, 0, 0, 0, 0, 0, 1132, 1185, 715,
4684 1092, 1131, 1133, 1145, 594, 0, 1163, 1188, 1189, 1187,
4685 3161, 0, 3163, 3146, 3145, 3144, 3141, 0, 1994, 1994,
4686 1994, 0, 1994, 3182, 3184, 3196, 0, 0, 207, 3269,
4687 0, 3271, 0, 1276, 0, 1275, 396, 438, 1994, 1994,
4688 101, 1994, 93, 94, 89, 121, 122, 91, 92, 97,
4689 96, 98, 99, 102, 103, 100, 95, 90, 125, 127,
4690 126, 104, 123, 124, 88, 564, 563, 562, 561, 534,
4691 0, 0, 2259, 512, 1419, 1421, 0, 1916, 2480, 0,
4692 1991, 1442, 2154, 2156, 2055, 483, 2440, 460, 406, 458,
4693 3168, 0, 3086, 3091, 3149, 3148, 3171, 3171, 3171, 424,
4694 0, 2087, 1338, 1343, 1347, 0, 1339, 2375, 916, 938,
4695 936, 902, 922, 918, 922, 912, 883, 990, 990, 882,
4696 915, 990, 922, 917, 0, 914, 879, 913, 990, 0,
4697 906, 938, 863, 864, 936, 875, 0, 922, 895, 894,
4698 891, 898, 899, 897, 901, 0, 903, 908, 896, 900,
4699 0, 936, 936, 936, 0, 936, 981, 854, 856, 855,
4700 857, 858, 922, 938, 938, 0, 0, 936, 940, 376,
4701 0, 0, 296, 0, 273, 404, 408, 396, 446, 0,
4702 1790, 0, 937, 1765, 1766, 0, 1776, 924, 923, 0,
4703 941, 1777, 1775, 1780, 1768, 1773, 1779, 1566, 1595, 1570,
4704 1569, 0, 0, 0, 1623, 0, 1750, 1733, 1731, 0,
4705 0, 1602, 0, 1604, 0, 0, 1688, 1656, 1729, 1626,
4706 1660, 0, 1607, 0, 1632, 1630, 0, 1546, 1544, 1545,
4707 0, 1614, 1640, 0, 1540, 1641, 0, 1672, 1620, 0,
4708 1622, 1651, 0, 1624, 1654, 1678, 1562, 2012, 2011, 2009,
4709 1577, 1994, 0, 1627, 1593, 0, 0, 1664, 2470, 0,
4710 1666, 0, 0, 1013, 999, 1000, 1001, 0, 1003, 1005,
4711 1007, 0, 1994, 1680, 1499, 1498, 3233, 1442, 3245, 3247,
4712 0, 3237, 1376, 1843, 3234, 3225, 1841, 1837, 1839, 0,
4713 1472, 0, 1481, 1478, 0, 1475, 1942, 1941, 1971, 0,
4714 0, 1683, 1444, 1693, 0, 618, 619, 621, 1443, 635,
4715 0, 688, 613, 0, 602, 0, 617, 605, 1319, 465,
4716 2104, 2113, 0, 2440, 2101, 588, 2440, 0, 692, 0,
4717 1409, 1414, 598, 0, 326, 0, 3076, 3075, 3074, 3000,
4718 2999, 3031, 3030, 3024, 3023, 3025, 0, 0, 3005, 0,
4719 0, 2016, 2017, 2015, 2013, 2014, 2208, 1978, 1974, 2204,
4720 1851, 0, 1422, 1831, 1832, 1834, 1433, 1845, 0, 1797,
4721 1826, 0, 0, 1805, 1826, 1801, 1803, 0, 1916, 0,
4722 0, 1909, 463, 2453, 1442, 0, 1879, 0, 1880, 1877,
4723 1878, 80, 1994, 0, 0, 364, 359, 367, 361, 363,
4724 362, 368, 369, 370, 371, 365, 360, 366, 358, 357,
4725 0, 1268, 0, 0, 3089, 0, 135, 0, 0, 2117,
4726 581, 1994, 1994, 1994, 1994, 740, 761, 0, 1994, 1994,
4727 1994, 0, 2117, 1994, 0, 0, 1994, 1994, 1994, 1994,
4728 0, 0, 1994, 748, 749, 747, 1994, 1994, 1086, 0,
4729 2571, 0, 0, 0, 780, 781, 783, 784, 785, 786,
4730 0, 809, 787, 709, 1040, 1040, 811, 2472, 2375, 593,
4731 595, 985, 718, 0, 134, 270, 227, 0, 0, 0,
4732 268, 0, 778, 779, 777, 776, 0, 3267, 0, 2048,
4733 2040, 2045, 0, 1972, 1973, 1970, 3039, 1442, 1928, 0,
4734 0, 1408, 0, 1440, 1448, 1447, 2459, 2463, 2127, 1357,
4735 1433, 1410, 1433, 0, 1361, 1406, 180, 185, 184, 177,
4736 190, 183, 194, 506, 1086, 709, 1203, 0, 0, 1167,
4737 1170, 1168, 707, 2079, 1312, 2079, 0, 0, 2079, 0,
4738 2081, 0, 0, 0, 2079, 2079, 0, 1312, 0, 596,
4739 1223, 1221, 1222, 0, 0, 1312, 1179, 1127, 1180, 0,
4740 1128, 2079, 1312, 1147, 1312, 1312, 0, 716, 985, 1129,
4741 1130, 808, 1217, 3162, 3160, 3159, 0, 3142, 3178, 3176,
4742 3177, 3180, 0, 0, 3179, 3181, 3197, 0, 0, 0,
4743 1117, 0, 210, 208, 218, 3268, 0, 1103, 2440, 3271,
4744 1278, 1279, 0, 0, 0, 114, 116, 0, 118, 120,
4745 0, 110, 112, 495, 560, 513, 2165, 2158, 1992, 0,
4746 2160, 302, 0, 3185, 3185, 3185, 396, 420, 423, 2133,
4747 1340, 1348, 2377, 2376, 0, 939, 870, 880, 926, 919,
4748 926, 993, 988, 991, 989, 0, 995, 889, 902, 884,
4749 0, 990, 890, 888, 926, 0, 886, 873, 862, 878,
4750 0, 926, 904, 907, 909, 911, 0, 0, 376, 990,
4751 877, 876, 0, 926, 967, 920, 905, 990, 995, 990,
4752 995, 926, 926, 0, 288, 294, 1994, 298, 375, 396,
4753 450, 0, 0, 0, 0, 990, 0, 0, 1704, 0,
4754 0, 0, 0, 1756, 0, 0, 0, 0, 0, 1565,
4755 0, 1684, 0, 0, 0, 0, 922, 1530, 1532, 1528,
4756 1531, 0, 936, 1534, 0, 903, 936, 1537, 1539, 1524,
4757 1525, 1526, 1527, 0, 0, 0, 2030, 2029, 2028, 0,
4758 0, 0, 0, 2471, 997, 1669, 0, 1010, 1004, 1002,
4759 1009, 0, 1844, 3246, 1379, 3235, 1409, 0, 1747, 1477,
4760 0, 0, 1944, 0, 1927, 0, 1736, 1694, 622, 0,
4761 0, 689, 0, 642, 0, 640, 616, 0, 0, 0,
4762 0, 3221, 2102, 2105, 1409, 2457, 2468, 1433, 1410, 1433,
4763 697, 1442, 1823, 1883, 3077, 0, 0, 2983, 2985, 2210,
4764 1848, 1414, 1850, 1909, 0, 1836, 1835, 3243, 0, 1793,
4765 1826, 1826, 0, 1793, 0, 0, 2139, 1965, 2141, 1425,
4766 0, 1416, 1416, 1423, 1874, 3242, 1148, 0, 1149, 1160,
4767 1162, 1346, 0, 2329, 0, 2327, 2303, 2330, 0, 1247,
4768 1249, 0, 0, 0, 0, 0, 2027, 2026, 737, 730,
4769 729, 732, 731, 734, 733, 0, 725, 726, 723, 735,
4770 750, 0, 738, 720, 774, 775, 773, 744, 751, 721,
4771 722, 728, 727, 724, 766, 771, 769, 768, 767, 772,
4772 770, 739, 757, 736, 752, 810, 1087, 0, 0, 2475,
4773 576, 572, 808, 0, 0, 0, 1040, 803, 709, 0,
4774 788, 1086, 1041, 709, 709, 0, 0, 574, 699, 719,
4775 756, 755, 753, 754, 264, 3301, 486, 487, 0, 0,
4776 3271, 248, 3295, 227, 0, 0, 975, 2378, 1971, 1435,
4777 0, 0, 2034, 2036, 1929, 1930, 1925, 1921, 0, 1932,
4778 1934, 1446, 1445, 0, 1385, 1404, 1383, 1371, 1362, 1363,
4779 1409, 0, 1312, 1190, 0, 1165, 0, 0, 0, 1139,
4780 0, 0, 2079, 0, 1177, 1192, 1191, 0, 0, 1200,
4781 1201, 0, 1961, 1963, 1971, 0, 1183, 1198, 1199, 0,
4782 0, 0, 0, 1155, 0, 1144, 1202, 1202, 1164, 0,
4783 0, 1219, 1166, 3164, 1997, 1996, 217, 206, 0, 0,
4784 1119, 1121, 0, 0, 1122, 3270, 0, 1101, 1284, 0,
4785 396, 106, 1994, 107, 1994, 105, 1994, 1993, 3188, 0,
4786 3085, 3084, 3083, 396, 425, 0, 0, 928, 929, 927,
4787 865, 861, 994, 987, 996, 992, 885, 866, 0, 1088,
4788 0, 867, 910, 0, 0, 284, 0, 282, 291, 887,
4789 376, 279, 874, 0, 881, 868, 869, 871, 872, 859,
4790 860, 377, 1994, 293, 309, 308, 0, 0, 0, 934,
4791 932, 935, 933, 1767, 0, 1618, 1619, 1753, 1971, 1751,
4792 1758, 0, 0, 1757, 1650, 0, 1603, 0, 1685, 0,
4793 1661, 1631, 1629, 1615, 1533, 1529, 1536, 904, 1535, 990,
4794 1644, 1621, 1652, 1578, 1994, 1628, 1634, 1635, 0, 1668,
4795 1994, 1965, 1840, 1479, 0, 1947, 1946, 0, 0, 1971,
4796 1971, 620, 623, 1994, 687, 615, 0, 0, 639, 0,
4797 603, 2112, 2114, 590, 592, 1433, 695, 694, 0, 587,
4798 698, 696, 585, 693, 3007, 3006, 1442, 1828, 1833, 0,
4799 1806, 0, 1810, 1815, 1811, 0, 1802, 0, 1990, 1416,
4800 0, 0, 1827, 1871, 1443, 1342, 0, 1881, 2325, 1994,
4801 0, 2301, 3067, 0, 0, 0, 1971, 1084, 0, 746,
4802 2322, 745, 582, 0, 0, 3221, 713, 782, 0, 709,
4803 1036, 1037, 1086, 1018, 1061, 2472, 1086, 1086, 815, 805,
4804 813, 2474, 700, 2440, 267, 265, 266, 0, 260, 262,
4805 0, 236, 228, 0, 396, 490, 488, 489, 0, 0,
4806 144, 0, 249, 0, 251, 252, 0, 3298, 3294, 3271,
4807 0, 2386, 1969, 1443, 2032, 1442, 0, 0, 2460, 3215,
4808 1433, 1394, 1393, 0, 1150, 0, 0, 1138, 0, 1298,
4809 981, 1175, 0, 1134, 1178, 1214, 1136, 0, 1964, 597,
4810 1143, 0, 1217, 1135, 1157, 1141, 1169, 1218, 204, 209,
4811 219, 220, 1105, 1406, 1372, 3274, 3280, 0, 1285, 1281,
4812 1282, 1277, 396, 115, 119, 111, 0, 3192, 3186, 3190,
4813 0, 0, 930, 931, 990, 0, 990, 376, 283, 286,
4814 0, 289, 0, 0, 317, 315, 396, 305, 313, 307,
4815 0, 314, 0, 300, 473, 0, 0, 1755, 1716, 1759,
4816 1760, 0, 1687, 1689, 1538, 0, 998, 0, 1974, 1943,
4817 1937, 0, 0, 0, 0, 0, 0, 1956, 1948, 0,
4818 1926, 1740, 690, 0, 1442, 628, 645, 644, 641, 691,
4819 2458, 3215, 1852, 1422, 0, 0, 0, 0, 0, 2138,
4820 1424, 1416, 1416, 1875, 0, 0, 1161, 2328, 0, 0,
4821 0, 3039, 0, 1083, 0, 3039, 0, 0, 577, 579,
4822 594, 0, 1086, 1061, 2472, 0, 1022, 0, 789, 0,
4823 793, 795, 817, 812, 806, 942, 0, 759, 271, 264,
4824 263, 237, 3302, 1442, 215, 269, 0, 0, 0, 253,
4825 3296, 0, 146, 0, 0, 0, 0, 2379, 2381, 0,
4826 2049, 2037, 2035, 1935, 1933, 1384, 1370, 0, 1152, 708,
4827 0, 0, 1217, 1140, 1184, 1176, 1174, 1312, 1962, 0,
4828 1173, 1156, 1158, 1260, 211, 1123, 396, 1409, 1372, 0,
4829 0, 3226, 3276, 3275, 0, 3272, 1280, 0, 1287, 3191,
4830 3189, 2134, 1821, 893, 1089, 892, 290, 285, 280, 921,
4831 1994, 295, 316, 299, 297, 446, 925, 1971, 0, 0,
4832 1601, 1579, 1670, 1433, 0, 1953, 0, 0, 1951, 1950,
4833 0, 1945, 1952, 0, 0, 636, 652, 648, 0, 650,
4834 651, 673, 586, 1409, 1909, 1807, 0, 1812, 0, 1804,
4835 1427, 1426, 1864, 0, 1863, 0, 1869, 1873, 2449, 2331,
4836 0, 3039, 1051, 1971, 0, 1053, 741, 0, 2375, 807,
4837 801, 797, 0, 0, 1021, 0, 1026, 1062, 0, 791,
4838 0, 0, 1016, 840, 965, 0, 843, 0, 816, 818,
4839 958, 959, 820, 0, 0, 0, 0, 0, 0, 946,
4840 0, 949, 954, 0, 0, 814, 0, 825, 943, 945,
4841 953, 2473, 584, 760, 261, 3289, 207, 216, 250, 0,
4842 258, 0, 3299, 0, 0, 0, 0, 2380, 0, 0,
4843 2387, 2389, 0, 0, 0, 1151, 1182, 0, 1172, 1137,
4844 598, 0, 1142, 0, 213, 221, 3273, 1410, 1433, 1433,
4845 0, 3277, 1406, 3219, 0, 0, 0, 1286, 1291, 0,
4846 1288, 1290, 0, 2365, 0, 306, 474, 1754, 1762, 1761,
4847 1378, 1954, 0, 1955, 1958, 0, 0, 1959, 0, 632,
4848 634, 1443, 0, 629, 0, 646, 0, 2117, 2117, 0,
4849 2117, 2117, 2117, 2117, 666, 674, 676, 0, 1853, 1829,
4850 0, 0, 1859, 1859, 1870, 0, 1049, 0, 0, 2117,
4851 1193, 1052, 1077, 1059, 0, 1082, 1085, 1193, 1054, 1076,
4852 1057, 0, 573, 0, 0, 799, 1019, 0, 1023, 1024,
4853 1025, 0, 1017, 0, 0, 0, 0, 841, 842, 966,
4854 819, 964, 957, 956, 0, 951, 0, 0, 3242, 852,
4855 853, 947, 850, 851, 0, 952, 0, 831, 0, 0,
4856 944, 0, 218, 0, 0, 2384, 2385, 0, 2382, 0,
4857 0, 2388, 1171, 1154, 0, 1181, 1146, 0, 212, 0,
4858 205, 1433, 1386, 1389, 1374, 3279, 3278, 1409, 0, 3281,
4859 0, 0, 1283, 0, 2135, 2143, 0, 974, 281, 1949,
4860 1957, 1960, 630, 0, 0, 637, 659, 649, 655, 0,
4861 2117, 0, 0, 2117, 0, 0, 0, 0, 0, 643,
4862 675, 2117, 1809, 1814, 0, 1867, 1865, 192, 0, 0,
4863 1193, 1050, 1075, 1074, 1055, 0, 1069, 1994, 138, 1195,
4864 1194, 1060, 0, 140, 1058, 804, 0, 0, 0, 1020,
4865 0, 0, 0, 0, 0, 0, 963, 962, 960, 961,
4866 2421, 2420, 0, 1449, 955, 950, 0, 826, 0, 0,
4867 256, 0, 2383, 2391, 2390, 1153, 0, 214, 1390, 0,
4868 1433, 1410, 1395, 1396, 3220, 3282, 3283, 1289, 0, 0,
4869 2366, 636, 633, 624, 659, 0, 657, 0, 653, 647,
4870 654, 0, 685, 679, 0, 681, 682, 680, 677, 670,
4871 0, 668, 0, 0, 1860, 0, 0, 0, 1066, 1067,
4872 136, 1056, 1078, 1068, 1197, 1196, 1073, 1072, 1070, 1071,
4873 0, 0, 0, 1032, 1031, 0, 0, 1028, 1027, 1049,
4874 0, 1051, 1053, 849, 0, 948, 821, 821, 832, 1442,
4875 220, 0, 254, 0, 1388, 1373, 1397, 2142, 2144, 2392,
4876 631, 656, 0, 664, 660, 662, 665, 684, 683, 0,
4877 667, 0, 678, 1862, 1861, 1876, 0, 0, 1049, 0,
4878 1035, 1033, 1034, 0, 0, 790, 1049, 794, 796, 1450,
4879 0, 829, 822, 824, 828, 834, 835, 833, 836, 3290,
4880 203, 257, 0, 1159, 0, 2378, 658, 0, 0, 673,
4881 672, 669, 0, 0, 802, 798, 1049, 0, 0, 792,
4882 1451, 823, 827, 837, 839, 0, 255, 0, 2386, 663,
4883 661, 671, 1868, 1866, 800, 1030, 1029, 838, 0, 0,
4884 2394, 3291, 2393, 0, 2398, 3286, 0, 0, 2405, 3284,
4885 3285, 0, 3292, 2396, 2397, 2395, 2400, 0, 0, 2402,
4886 2403, 0, 2367, 3287, 396, 2404, 2399, 0, 2406, 2408,
4887 0, 3293, 2401, 0, 1442, 2407, 0, 1443, 2409
4888};
4889
4890 /* YYPGOTO[NTERM-NUM]. */
4891static const yytype_int16 yypgoto[] =
4892{
4893 -4785, -4785, -4785, -4785, 2311, 4345, -4785, -4785, -4785, 4052,
4894 -4785, -4785, -4785, -4785, 3496, -4785, -4785, 1676, -4785, -4785,
4895 -4785, -4785, -4785, 2025, -4785, 493, -4785, 504, -4785, 506,
4896 -2873, -571, 4102, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4897 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4898 3427, 2766, -4785, -4785, -4785, 2185, -2825, -4785, -4785, 1,
4899 1558, -4785, -4785, 307, -4785, -47, -4785, -4785, -4785, -4107,
4900 -194, -380, -4785, 60, 13, 3989, 608, -4148, -4785, -4785,
4901 -4785, -4785, -4785, -4785, -4785, -4785, 469, -4785, -3520, -4785,
4902 -4785, 139, -4785, -4785, -4785, -4785, -4785, -1998, -613, -507,
4903 -4785, 494, -4785, 240, -4785, 136, -4785, -4785, -4785, -4785,
4904 -4785, -4785, -4785, 231, -4785, -4785, -4785, 75, 860, 2711,
4905 -4785, -4785, -4785, 5214, -4785, 4607, -4785, -2102, 3018, -4785,
4906 -4785, -4785, -4785, -4785, 2861, -2252, -4785, -4785, -4785, 1724,
4907 -4785, 2601, -4785, -4014, 144, -839, 51, -4785, -4785, -4785,
4908 -4785, -4785, -4785, -4785, -4785, -1854, 1979, -4785, 2030, -4785,
4909 -4785, -4785, -4785, -4785, -4785, -4785, -4785, 934, -4785, -4785,
4910 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 2715,
4911 -4785, -4785, 4501, -4785, -4785, -4785, -4785, 1390, -4785, -4785,
4912 -4785, -4785, -4785, -4785, -4785, -4785, 3287, -4785, 3284, 3286,
4913 -4785, 3288, -4785, -2587, -4785, -4785, -4785, -4785, -4785, -4785,
4914 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4915 -4785, -4785, -4785, -4785, -4785, -4785, 3986, -4785, -4785, -4785,
4916 -2784, -4785, -4785, -2916, 3408, -4785, -2285, -4785, -4785, -2313,
4917 -4785, -4785, -2218, 1290, -4785, -4785, 1879, 1568, -4785, -1765,
4918 -2385, -2384, -4785, -4785, -4785, -2467, -2460, -720, 3356, -1234,
4919 -2546, -4785, -4785, -4785, -4785, -4785, 52, 376, -4785, -4785,
4920 -4785, 204, 1577, 2152, -4785, -3580, -4785, -4785, 610, -4785,
4921 -4785, -4785, -4785, -4785, 1276, 464, 1274, -4785, 822, 3075,
4922 -2596, -4785, -4785, -4785, -4785, -4785, -4785, -167, 109, -256,
4923 -4785, -4784, 468, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4924 -4785, -3431, -4785, -4785, -4785, -367, -4785, -4785, -327, -4785,
4925 -4785, -364, -4785, -46, -4785, -4785, 1726, 1280, -4785, -4785,
4926 826, -4054, -4785, -4785, 2880, -1711, -4785, -589, -4785, -3464,
4927 1613, -3255, -2979, -4785, -4785, 223, -1140, -1133, -4015, -4785,
4928 -4785, -4785, -4785, 1042, -4785, 722, 1611, -3482, -4785, -4785,
4929 -4785, -4785, -4785, -4785, -4785, -3481, -3477, -4785, -4553, -4785,
4930 -4785, -4247, -4785, -4785, -4785, -4785, -4785, -4785, -290, -4785,
4931 -4785, -4785, -4785, -4785, -4785, -4785, -3305, -4785, -4785, -85,
4932 -95, -4785, 28, 723, -4785, -4785, -4785, -4785, -4785, -4785,
4933 -1868, 1393, 1509, -4785, -4785, -4785, -4785, -2713, -2937, -1347,
4934 -2870, -2932, -1460, 1462, -4785, -4785, 61, -4785, -2959, -3394,
4935 -4785, -3141, -632, -2567, -2973, -124, -4785, -4785, -1537, -3713,
4936 2247, -4785, 993, -3563, -1949, 1969, -4785, -4785, 1371, -4785,
4937 -1216, 1370, -4785, -4785, -4785, 1379, -4785, -287, -4785, -4785,
4938 -4785, -4785, -3667, -4785, -2292, -3794, -4785, -4785, 5267, 5269,
4939 -3013, -246, -245, -4785, -4785, -4785, 275, -4785, -4785, -2956,
4940 -131, -15, -9, -2914, -4029, 292, -3399, 1006, -4785, -4785,
4941 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4942 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 1663, -2389,
4943 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -3408, -4007, -4785,
4944 -4785, 1100, -3279, -3054, -3067, -3490, 4234, -4785, -4785, -4785,
4945 -4785, 4110, -3135, -3611, -4785, -4785, -4785, -4785, -4785, -4785,
4946 -4785, 3604, 1422, -4785, -4785, 2351, -4785, -4785, -4785, -4785,
4947 -4785, -4785, -4785, -4785, -4785, 232, 2362, -4785, -4785, -4785,
4948 -4785, -4785, 2837, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4949 -4785, -74, -4785, -4785, -4785, -4785, -4785, 432, 3484, -4785,
4950 -4785, -4785, -4785, -16, -4785, -4785, -4785, -4785, 3157, -4785,
4951 -4785, -4785, -4785, 3026, -4785, -4785, -4785, -4785, -4785, -4785,
4952 2145, -4785, 2744, -4785, -2262, -4785, -4785, 1584, -126, -4785,
4953 -4785, 4170, -4785, -4785, 1773, -4785, 243, -4785, 2015, -4785,
4954 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4955 2912, -3465, -1776, -4785, -1211, -1782, -4785, -4785, -3381, -4785,
4956 -3403, -3903, -4785, -4785, 3566, -1777, -3627, 2334, 629, -146,
4957 -2984, 1402, -4785, 1908, 680, 9044, -4785, -1438, -1376, -4785,
4958 -4785, -37, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4959 -4785, 2654, 2659, 3904, -3195, -4785, -4785, -767, -1354, -2542,
4960 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4961 -4785, 1992, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4962 -4785, -4785, -4785, -4785, 3851, -1645, -4785, -4785, -4785, -4785,
4963 -4785, -4785, -4785, -4785, -4785, -4785, 1929, -4785, -2557, -4785,
4964 -4785, -4785, -4785, -576, -4785, 4001, -4785, 4023, -2806, -1689,
4965 2452, 1924, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 2463,
4966 -4785, -1871, -4785, -3315, -4785, -4785, -4785, -4785, -4785, 913,
4967 -4785, -3704, -4785, 1441, -4785, -4785, -4785, -4785, -4785, -4785,
4968 -4785, -4785, -4785, 2479, -4785, -4785, -2349, 59, -4785, 211,
4969 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -210, 899, -204,
4970 -4460, -1368, 2246, -4785, -4785, -1332, 4043, -1750, -4785, -4785,
4971 -4785, 2599, -4785, 1822, -4785, -4785, -4785, 500, 502, -4785,
4972 -4785, 2028, -4785, -4785, -4785, -4785, 621, 110, -4785, -4785,
4973 -4785, 484, -2392, -1878, -4785, 631, -3778, -1097, -4785, -1070,
4974 -4785, -1594, 1963, 589, -2619, -4785, -1068, -1378, -519, -3060,
4975 -4049, -3002, -4785, -3496, -4785, 2976, -4785, -4785, -4785, 514,
4976 -4785, -4785, -4785, 1849, -4785, -1756, -4785, -4785, -4785, -4785,
4977 -4785, -4785, -4785, -4785, -4785, -680, -1056, -4785, -4785, 2854,
4978 -1039, -119, 5368, 0, -4785, -4785, 2, -4785, -4785, -4785,
4979 -4785, 4119, 3879, 2819, -4785, -4785, -3151, -2735, -4785, 983,
4980 -1064, -1408, 2352, -4785, 2982, -4785, -4785, 1355, -2440, -4785,
4981 -4785, -4785, 6, -4785, -4785, -4785, 1392, -4785, -81, 4825,
4982 11, -4785, -4785, -4785, 4690, -4785, -4785, -4785, -4785, -4785,
4983 3557, -1244, 4691, -4785, -4785, -4785, -4785, -4785, -4785, 3146,
4984 -4785, -4785, -4785, -4785, -4785, -4785, 3823, 4832, -635, -1477,
4985 -4785, -722, 3148, 2537, -966, -4785, -4785, -4785, 4261, 4841,
4986 -4785, -4785, 5374, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4987 -4785, -4785, 3107, 614, -4785, -4785, 626, -4785, -4785, -4785,
4988 -4785, 3726, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4989 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
4990 -4785, -4785, -4785, -4785, -4785, 1694, -169, -4785, 395, -191,
4991 -4785, 212, -4785, -4785, -4785, -4785, -4785, -219, -4785, -4785,
4992 -224, -4785, -1215, 4568, -1625, -4785, -1712, -3085, -4785, -1470,
4993 2014, -4785, -4785, -4785, 3165, -4785, -4785, -4785, -4785, 1486,
4994 -4785, -4785, -3293, -832, -1498, -4785, -4785, -3267, -48, -4785,
4995 -4785, -4785, -852, 4336, 4, 1377, -1063, -4785, 2699, -3,
4996 -831, -118, -677, -682, -950, -4785, 7466, -4785, -4785, -4785,
4997 -1695, -1686, -1684, -1673, -344, -552, -409, -4785, -4785, -4785,
4998 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 2605, -4785,
4999 -4785, -4785, 1468, -4785, 4880, -4785, 3361, -1563, 4883, 3250,
5000 2627, 2631, -4785, -4785, -4785, -4785, -2153, -4785, -4785, -1547,
5001 244, -4785, 3560, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
5002 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785,
5003 3742, -535, -537, 3931, 4891, 4466, -4785, 4194, -4785, -4785,
5004 -4785, -4785, -4785, 1823, -4785, -168, 2662, -1253, -3007, -4785,
5005 -4785, 3007, 1576, -4785, 2312, -2311, -2840, -4785, 2513, -946,
5006 -4785, -4785, 556, -4785, -4785, -4785, 1821, 233, 4871, 4385,
5007 -4785, -4785, -4785, -4785, -2738, -3065, -711, -4785, -3909, -4785,
5008 -1784, -4785, -1195, 2054, -3302, -4785, -113, -4785, -4785, -3245,
5009 -3243, 1484, -1344, 2602, 1046, -4785, -4785, -3158, 234, 5470,
5010 5472, 5473, -397, -4785, -2996, -4785, -3986, -4785, 112, -4785,
5011 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 3112, -4785,
5012 -4785, 187, -4785, -4785, -4785, -4785, -4785, -4785, -4785, 2747,
5013 -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785, -4785
5014};
5015
5016 /* YYDEFGOTO[NTERM-NUM]. */
5017static const yytype_int16 yydefgoto[] =
5018{
5019 -1, 64, 696, 1788, 65, 66, 67, 68, 69, 1149,
5020 1150, 70, 1151, 1719, 1722, 2371, 2980, 2981, 71, 670,
5021 72, 1892, 2573, 2574, 4310, 4311, 4304, 4305, 4307, 4308,
5022 2575, 766, 767, 73, 3036, 3037, 4542, 4117, 4118, 2431,
5023 3596, 4187, 1800, 1799, 1801, 1806, 2453, 1804, 2447, 704,
5024 2448, 3042, 2449, 3043, 3591, 3111, 3112, 1205, 3030, 3120,
5025 3121, 2444, 4178, 4290, 5144, 4294, 5304, 5440, 5276, 3148,
5026 4704, 5145, 5146, 613, 3046, 1857, 4615, 2501, 4912, 2502,
5027 74, 759, 1274, 1885, 1886, 4921, 4922, 4923, 4924, 4907,
5028 4908, 4909, 4910, 4181, 4621, 4176, 4614, 2660, 851, 1979,
5029 2661, 4750, 4744, 4745, 4746, 4368, 3257, 3258, 3259, 4762,
5030 4387, 4767, 3226, 3227, 3786, 3260, 5006, 5007, 5008, 4764,
5031 1065, 5009, 75, 636, 637, 1067, 1594, 2386, 1595, 76,
5032 77, 665, 1745, 1746, 1747, 1748, 2996, 2387, 2991, 2992,
5033 4108, 4751, 3262, 4384, 852, 853, 854, 79, 614, 855,
5034 856, 857, 1362, 858, 859, 2624, 2663, 3275, 2625, 3228,
5035 2664, 1981, 860, 861, 862, 863, 1370, 832, 833, 2638,
5036 3799, 4328, 80, 591, 762, 763, 1891, 2547, 764, 2548,
5037 3157, 4303, 765, 1276, 2544, 1278, 864, 3279, 865, 866,
5038 1989, 867, 1363, 81, 1706, 1936, 798, 1316, 868, 1138,
5039 2353, 1059, 2228, 3280, 869, 1986, 1988, 1985, 3278, 5175,
5040 1987, 82, 624, 647, 612, 1314, 632, 4618, 4918, 738,
5041 739, 774, 2596, 740, 1286, 1248, 1862, 2528, 2529, 3126,
5042 3127, 3193, 3194, 3195, 2520, 2521, 2522, 2585, 2586, 2587,
5043 2509, 2510, 2511, 1866, 2506, 2507, 741, 1249, 1259, 2523,
5044 2524, 2525, 3199, 2589, 2590, 2591, 2592, 2526, 1926, 2527,
5045 3639, 3582, 4886, 4884, 4885, 3583, 4607, 2868, 5051, 4480,
5046 4481, 4168, 4169, 4170, 4675, 2972, 83, 627, 1050, 1567,
5047 2219, 3429, 2850, 2852, 2220, 3428, 4004, 4005, 4006, 2848,
5048 2849, 5045, 2854, 3426, 5195, 5551, 5338, 5339, 4008, 5343,
5049 4014, 4474, 4475, 4827, 5046, 5201, 5469, 5344, 5559, 5467,
5050 5555, 5468, 5557, 5668, 5624, 5625, 5479, 5570, 5571, 5629,
5051 5669, 5354, 5355, 5356, 3423, 4824, 3437, 4030, 4031, 4835,
5052 4487, 4839, 4903, 3025, 1851, 1852, 4655, 2450, 84, 3584,
5053 3698, 3585, 3586, 4555, 5272, 3587, 3588, 3589, 3221, 1655,
5054 4581, 4567, 4186, 4153, 4154, 4155, 4156, 4157, 5238, 5394,
5055 5240, 5241, 5384, 5508, 5383, 4158, 4159, 5093, 4597, 4160,
5056 4161, 4162, 4605, 4899, 5095, 5092, 5248, 5249, 5651, 5652,
5057 5265, 5608, 5266, 5658, 5682, 5683, 5250, 85, 626, 1516,
5058 5409, 5410, 5411, 3856, 3857, 3858, 3859, 3860, 3861, 3862,
5059 3863, 3864, 3865, 3866, 3867, 3868, 4754, 3886, 3887, 4730,
5060 3882, 3883, 4336, 3891, 5267, 5268, 5269, 5415, 5251, 5270,
5061 5253, 3869, 4345, 1612, 1613, 4189, 1625, 1626, 2890, 2252,
5062 2891, 1855, 4346, 4347, 4735, 3962, 4808, 3968, 3969, 3970,
5063 3369, 3370, 3371, 3372, 3373, 2801, 5254, 4600, 5086, 5233,
5064 5236, 5392, 5597, 4598, 4163, 4603, 1127, 705, 4164, 4165,
5065 5490, 5370, 5377, 5491, 5378, 5371, 5088, 3033, 5492, 5493,
5066 5494, 5380, 5373, 3548, 4875, 4876, 4585, 4738, 86, 145,
5067 3131, 1236, 1238, 1247, 3152, 2537, 2536, 1252, 1251, 2515,
5068 3149, 3728, 4972, 725, 3700, 5137, 4949, 5143, 3701, 4527,
5069 3702, 5128, 5295, 3703, 4964, 5141, 5301, 4528, 4529, 3704,
5070 3705, 3706, 5498, 5499, 5500, 4232, 1345, 743, 744, 1263,
5071 1264, 1265, 2619, 4692, 4253, 87, 2422, 2417, 88, 1175,
5072 1176, 1177, 1768, 1769, 2420, 2421, 3021, 3539, 89, 1144,
5073 2366, 1759, 2410, 90, 1163, 3013, 3014, 3015, 3534, 91,
5074 1272, 1882, 1883, 2541, 3735, 4302, 4708, 4981, 5158, 4977,
5075 5319, 5320, 92, 770, 1282, 93, 593, 1901, 1902, 1903,
5076 2577, 94, 1378, 154, 95, 1057, 1569, 1572, 1573, 96,
5077 1143, 1707, 1708, 1709, 1710, 2968, 97, 1966, 2641, 2642,
5078 2643, 2644, 2361, 3521, 2362, 2363, 2977, 3806, 98, 723,
5079 3082, 1226, 1227, 1228, 3625, 3626, 5149, 5150, 3384, 3385,
5080 3386, 1815, 3065, 4209, 4939, 5306, 5539, 3077, 4940, 5540,
5081 1816, 1817, 1222, 1223, 2476, 1819, 1820, 2458, 1835, 3206,
5082 3207, 4081, 4523, 1836, 1837, 4840, 2479, 2480, 1697, 2481,
5083 3617, 4203, 5605, 1399, 1326, 1147, 1017, 1018, 1019, 1528,
5084 1529, 5255, 1020, 1538, 2179, 3934, 4429, 4430, 4431, 4432,
5085 4799, 2100, 2101, 2087, 1021, 1022, 1023, 1024, 1025, 1026,
5086 1027, 1028, 1029, 1030, 1031, 2214, 3915, 3916, 4411, 2843,
5087 2844, 2845, 1032, 2686, 3901, 2696, 1033, 1034, 1035, 1036,
5088 1037, 3411, 1038, 4000, 4638, 1039, 1522, 2165, 2049, 4403,
5089 3906, 4777, 4781, 4782, 4783, 5019, 1993, 2674, 3300, 4395,
5090 3301, 3302, 3412, 2806, 1419, 1420, 1388, 1389, 2344, 2345,
5091 2346, 2347, 2348, 4514, 4515, 5054, 4851, 5056, 4855, 2956,
5092 2957, 2232, 2233, 2349, 2350, 2351, 2352, 3493, 4504, 3986,
5093 4457, 3389, 3380, 3381, 3382, 3494, 3495, 3496, 3497, 4061,
5094 4500, 4501, 5203, 2947, 3499, 4060, 3505, 5485, 5215, 5216,
5095 5577, 5576, 5217, 5063, 5064, 4862, 4863, 4087, 4088, 4089,
5096 3445, 2045, 2046, 2115, 1752, 1753, 1994, 1914, 2603, 3614,
5097 4199, 2828, 3067, 3997, 4636, 4201, 4639, 4640, 2209, 2836,
5098 3407, 2838, 4462, 4817, 4818, 5037, 5185, 5186, 5191, 3709,
5099 4672, 4673, 2604, 1821, 3059, 3605, 4195, 1658, 1659, 1822,
5100 2314, 3481, 3482, 3215, 2653, 4284, 4547, 3374, 3357, 3479,
5101 3640, 2017, 2018, 4548, 4439, 2470, 3609, 4631, 4632, 4633,
5102 2462, 2463, 3054, 3055, 3056, 1823, 2464, 3600, 4627, 99,
5103 660, 100, 1933, 1311, 1932, 2988, 1284, 1577, 1909, 1910,
5104 785, 146, 611, 101, 615, 2639, 102, 633, 2230, 837,
5105 1062, 1578, 1579, 2869, 3433, 3438, 2870, 1840, 4020, 4021,
5106 2614, 3653, 3654, 3648, 1841, 2483, 3073, 3074, 2983, 3801,
5107 4725, 5322, 103, 645, 4078, 3511, 3512, 5454, 5455, 1063,
5108 104, 597, 1908, 780, 1290, 1293, 1916, 2600, 3782, 1294,
5109 1295, 2602, 781, 782, 105, 683, 1181, 1680, 1681, 1682,
5110 2330, 106, 642, 1128, 3480, 4058, 2308, 1053, 1309, 1663,
5111 1131, 1664, 2304, 2931, 1646, 107, 1221, 1220, 758, 108,
5112 109, 716, 155, 1809, 110, 1152, 1738, 2382, 3527, 3528,
5113 4093, 1739, 1740, 2989, 2985, 4534, 4535, 4871, 111, 675,
5114 1167, 1168, 1763, 1761, 3018, 2413, 112, 628, 1054, 2223,
5115 113, 616, 840, 1348, 1965, 114, 115, 116, 842, 3807,
5116 5457, 5619, 620, 1968, 1352, 4608, 4931, 5117, 5118, 5120,
5117 5290, 5291, 5665, 5704, 5715, 5708, 5718, 5719, 5722, 5728,
5118 5729, 1040, 1188, 1189, 1041, 5413, 1042, 1043, 1044, 117,
5119 118, 1140, 649, 1702, 1703, 2965, 2356, 2963, 1704, 3440,
5120 3441, 3071, 3606, 1045, 3442, 2150, 2151, 4586, 1285, 1911,
5121 668, 580, 1046, 581, 735, 1190, 3051, 2395, 2907, 736,
5122 871, 1243, 1570, 1873, 1874, 2396, 583, 872, 2908, 3264,
5123 584, 585, 586, 587, 588, 589, 590, 119, 641, 1075,
5124 2248, 1603, 1089, 1631, 1620, 1630, 2278, 2918, 2281, 2919,
5125 2920, 4049, 3473, 4050, 3474, 1134, 2268, 1604, 3475, 2261,
5126 2262, 2263, 2264, 3464, 1618, 2258, 2276, 120, 843, 1973,
5127 623, 1354, 1355, 2650, 121, 644, 122, 1754, 2407, 2408,
5128 3006, 3531, 3007, 123, 1071, 1072, 124, 826, 3028, 2631,
5129 1922, 1246, 1923, 1949, 829, 1318, 830, 831, 1332, 1329,
5130 1335, 1331, 3717, 3142, 3143, 2635, 1930, 1875, 2240, 3135,
5131 4276, 1876, 1940, 2627, 2628, 2535, 4987, 3724, 3146, 4720,
5132 3792, 4988, 4989, 125, 653, 126, 4913, 659, 1146, 1717,
5133 127, 128, 129, 130, 1232, 3610, 3611, 2489, 5152, 5448,
5134 1234, 1235, 1824, 3391, 1848, 2809, 2810, 1224, 2811, 2812,
5135 2813, 2814, 1518, 1519, 3392, 3977, 3978, 1838, 147, 148,
5136 149, 150, 748, 749, 3151, 3730, 4297, 4298, 4976, 5155,
5137 5711, 5712, 2443, 3594, 5421, 5685, 5705, 5724, 2451, 4623,
5138 4926, 2452, 3597, 5111, 2441, 3593, 4914, 131, 1195, 1191,
5139 693, 1786, 1780, 1782, 2428, 3024, 132, 133, 134
5140};
5141
5142 /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
5143 positive, shift that token. If negative, reduce the rule whose
5144 number is the opposite. If YYTABLE_NINF, syntax error. */
5145static const yytype_int16 yytable[] =
5146{
5147 582, 747, 667, 652, 724, 625, 1810, 1130, 2149, 1087,
5148 1126, 1818, 1367, 1233, 1360, 1361, 579, 1614, 1617, 1058,
5149 2016, 1969, 2204, 733, 1629, 737, 638, 2227, 1687, 753,
5150 638, 2389, 663, 646, 2316, 2597, 2605, 1660, 674, 2468,
5151 1849, 2477, 2473, 3075, 662, 655, 2055, 669, 1245, 2161,
5152 673, 78, 1918, 1244, 677, 1660, 3208, 2397, 2072, 2487,
5153 718, 2024, 2471, 1422, 3708, 2315, 2398, 2279, 2399, 2488,
5154 2474, 2976, 874, 1308, 1927, 3390, 828, 3707, 827, 2400,
5155 874, 3282, 3283, 1421, 1148, 3068, 1945, 3618, 3985, 3784,
5156 639, 1283, 2170, 2884, 3641, 3761, 1853, 2512, 2388, 2973,
5157 2178, 4249, 1073, 1854, 827, 719, 1571, 3746, 1172, 1201,
5158 1382, 1179, 3630, 1202, 1203, 3303, 3998, 3304, 3549, 4563,
5159 3641, 3641, 3029, 2459, 4611, 1777, 2662, 4174, 3305, 3200,
5160 3434, 3435, 726, 2874, 582, 2990, 3201, 582, 1653, 2588,
5161 2490, 742, 3501, 4374, 3129, 3130, 3987, 3538, 3988, 1750,
5162 728, 3510, 3699, 731, 4320, 754, 3732, 755, 4210, 4503,
5163 1688, 756, 1521, 2180, 2181, 3356, 757, 2184, 2185, 2186,
5164 2187, 2188, 2299, 2190, 2191, 2193, 2195, 2196, 2197, 2198,
5165 2199, 3716, 4233, 4700, 4235, 3641, 3641, 4245, 2183, 4229,
5166 4230, 3646, 2323, 4073, 4231, 4300, 4979, 3132, 2617, 2651,
5167 3533, 4261, 2576, 1750, 4250, 1523, 1524, 1333, 1616, 1523,
5168 1524, 3197, 3198, -1912, 5558, 875, 1884, 2336, 2337, 1367,
5169 4464, 4546, 1850, 875, 3979, 1523, 1524, 2457, 1523, 1524,
5170 2425, 2651, 3964, 2651, -2750, 681, 3125, 1523, 1524, 1850,
5171 -1094, 1512, 1514, 1515, 1523, 1524, -3143, 1523, 1524, 2798,
5172 1523, 1524, 4680, 1558, 3420, 4352, 4549, -701, 4353, 4551,
5173 1523, 1524, 2651, 4553, 4341, 4356, 1850, 678, -3136, -3060,
5174 631, 3905, 2009, 3190, 1523, 1524, 617, 1076, 3773, 4571,
5175 873, 3965, 1523, 1524, -702, 4024, 3656, 657, 873, 676,
5176 1523, 1524, 3098, 874, 874, 1523, 1524, 2651, 4436, 874,
5177 2651, 1749, 2010, 1229, 2651, 3723, -1366, -1377, 1523, 1524,
5178 4376, 3478, 1214, 4707, 4166, 2651, 2011, 2726, 709, 3998,
5179 2651, 2533, 3923, 2531, -3061, -3060, 594, 1523, 1524, 1784,
5180 1610, 4172, 1523, 1524, -1912, 2819, 1076, 1466, 2009, 1230,
5181 3354, -583, 3670, 1610, 1523, 1524, 5094, 1523, 1524, 1497,
5182 4452, 2949, 2846, 1270, 4748, 3890, 1501, 2012, 3884, 2966,
5183 1929, 4505, 4011, 3893, 3964, 3894, 634, 3896, 2010, 3733,
5184 1525, 4604, 1526, 4332, 1525, 3031, 1526, 2651, 1523, 1524,
5185 -3061, 2618, 2011, 3243, 750, 2013, 1944, 1715, -1912, 1610,
5186 1525, 3725, 1526, 1525, -1872, 1526, 1650, 5058, 752, 3650,
5187 1523, 1524, 1525, -575, 1526, 1689, -3119, 1337, 2855, 1525,
5188 4043, 1526, 1525, 3965, 1526, 1525, -3123, 1526, 2651, 1076,
5189 2820, 3888, 2950, 2012, 1560, 1525, 1540, 1526, 4825, -2750,
5190 5334, 4002, 2221, 2951, 4962, 4842, 875, 875, 4166, 1525,
5191 2952, 1526, 875, 2671, 4036, 4037, 4038, 1525, 4251, 1526,
5192 3476, 2013, 4492, 3710, 2617, 1525, -3143, 1526, 3133, -578,
5193 1525, 4904, 1526, 1713, 1712, 1999, 5606, 4911, 4905, 2953,
5194 2684, -3122, 4333, 1525, 4143, 1526, 4437, -3060, 2014, 783,
5195 5510, 786, 787, 788, 789, 1527, 791, 792, 1231, 1527,
5196 794, 795, 1525, 2647, 1526, 825, 2651, 1525, 1610, 1526,
5197 1051, 873, 873, -578, 1253, 1527, 874, 873, 1527, 1525,
5198 5434, 1526, 1525, 2821, 1526, 4878, 1543, 1527, -3120, 5331,
5199 2615, 825, -2599, 2389, 1527, 2954, 1924, 1527, 1254, 4906,
5200 1527, 1261, -3061, -2165, 1060, 1156, -3121, -3126, 2246, 2433,
5201 1527, 618, 1771, 1525, 2014, 1526, 720, 2648, 3478, 4274,
5202 1683, 1422, 1159, 1145, 1527, 2955, -1872, 4342, 2269, 5713,
5203 4182, 3652, 1527, 2426, -2614, 1525, 1422, 1526, 1255, 1661,
5204 1527, 2022, 3598, 2909, 4343, 1527, 3666, 3667, -2165, 5593,
5205 1103, 1698, 2910, 4727, 2911, 1921, 1421, 1846, 1527, 1872,
5206 2388, 629, 4144, 742, 3681, 2912, 768, 2807, 1662, 2605,
5207 4179, 38, 1893, 721, 742, 3509, 1209, 1527, 4728, 799,
5208 1523, 1524, 1527, 1512, 1514, 1793, 4342, 1794, 1795, 1796,
5209 1797, 1798, 4183, 2472, 1527, 595, 1055, 1527, 2514, 1523,
5210 1524, 1931, 1699, 1271, 4920, 3774, 4281, 2618, 1088, 1103,
5211 5714, 3767, 3768, 746, 2630, 1847, 4582, -2615, 2238, 875,
5212 4491, 4584, 1523, 1524, 721, 3726, -2616, 3008, 1527, 3027,
5213 3080, 1256, 1872, 1154, 1889, 5189, 2254, 1714, 1160, 2827,
5214 2594, 2682, 3284, 2222, 1307, 2000, 1161, 1312, 1313, 1157,
5215 1527, 1182, 2298, 768, 2885, 2302, 768, 1927, 5511, 1183,
5216 1056, 776, 2293, 776, 1199, 1925, 1257, 2318, 1990, 3791,
5217 2321, 5132, 1338, 4184, 2324, 5335, 3079, 3734, 2799, 760,
5218 -1872, 1853, 1772, 2213, 873, 4973, 3064, 721, 1854, 1716,
5219 3699, 5607, 1103, 2856, 2475, 874, 777, 3200, 777, 1250,
5220 1610, 2339, 2340, 2341, 3201, 3458, 5001, 4634, 4635, 5432,
5221 621, 3129, 3130, 4826, 2847, 2512, 5360, 4044, 5361, 1610,
5222 1610, 1660, 5613, 4812, 1651, 4509, 3390, 1275, 3477, 4513,
5223 2871, 3711, 5594, 3470, 3128, 3651, 3881, 3656, 719, 3641,
5224 1250, 827, 721, 1061, 5595, 1525, 4616, 1526, 1296, 4911,
5225 1298, 5049, 1300, 582, 582, 582, 1304, 1250, 4736, 2804,
5226 2805, 3032, 621, 2206, 1525, 1353, 1526, 621, 1169, 1301,
5227 1302, 1303, 4891, 3478, 5554, 1266, 4749, 2317, 4275, 3197,
5228 3198, 652, 1785, 2829, 4755, 2003, 4757, 1525, 596, 1526,
5229 4453, 2588, 1807, 1467, 2832, 1225, 3383, 2835, 3966, 2652,
5230 1611, 3196, 4773, 4017, 1718, 1498, -3136, 771, 2826, 3668,
5231 719, 1359, 1502, 1611, 2579, 5070, 1364, 1365, 2834, 1900,
5232 4932, 1306, 2534, 1900, 1310, 797, 4315, 2943, 1371, 5066,
5233 1751, 2652, 682, 2652, 4843, 1334, 1523, 1524, 875, 876,
5234 -113, -113, 5336, 1523, 1524, 4482, 3769, 3134, 4337, 3643,
5235 -1912, 2095, 1523, 1524, 4285, 4223, 1142, 619, 1136, 1611,
5236 1527, 1422, 2652, 2342, 679, 2110, 4958, 2343, 2118, 4628,
5237 2120, -2750, 4359, 2654, 2124, 2125, 2126, -1094, -1912, 1527,
5238 1900, 2390, 2132, -3143, 1751, 4252, 4609, 2239, 3216, 4369,
5239 4370, 4371, 1244, 4373, -701, 4301, 4980, 2652, 3355, 2652,
5240 2652, 3890, 1527, 873, 2652, 4381, -3060, 2815, 2685, 4335,
5241 4344, 680, 3888, 5112, 3888, 2652, 1219, 3967, 4729, 2822,
5242 2652, -702, 3888, 2697, 2698, 2015, 2699, 2700, 654, 4357,
5243 3966, 4335, -1830, 1615, 3265, 1619, 2727, 3888, 1622, 1627,
5244 2335, 1262, 3924, 3266, -3119, 3267, 2800, 1052, 2786, 2787,
5245 3804, 1210, 1557, 5166, -3123, 2322, 3268, 621, 1656, 2160,
5246 1244, -3061, 3888, 4335, 4335, 4379, 4380, 5277, 1611, 4344,
5247 5017, -2165, 2796, 2797, 4166, 3693, 2601, 2652, -583, 1574,
5248 1520, 2690, 5337, 2640, 1580, 151, -117, -117, 3397, 3398,
5249 2215, 5649, -2599, 2695, 4470, 3356, 3356, 778, 4494, 3356,
5250 3356, 1525, 3387, 1526, -2117, 3356, 3356, 2691, 1525, -3122,
5251 1526, 5040, 5041, -2599, 592, 2284, -2165, 1525, 2652, 1526,
5252 1367, 3217, 4023, 4069, 719, 3911, 3912, -109, -109, 719,
5253 3925, 3926, -2117, 3219, -2614, 722, 4617, 2649, 4557, 2249,
5254 -575, 827, 1602, 2701, 3224, 3938, 3939, 4569, 4570, 640,
5255 2411, 2216, 1258, 3084, 3085, -2614, -3120, -259, 5596, 3515,
5256 1553, 1554, 1555, 1556, 753, 1711, 5212, 2534, 5073, 4338,
5257 3096, 4340, 1894, 4283, -3121, -3126, 3941, 3942, 4778, 4354,
5258 3122, 3123, 2613, -3263, 1844, 1872, 2808, 1610, 4860, 4861,
5259 4846, 1498, 2909, 1692, 4361, 768, 2652, 768, 3993, 3994,
5260 648, 2910, 2486, 2911, 3461, -2326, -2326, 1705, 2683, 1718,
5261 719, 719, 2513, 3137, 2912, 5314, 1527, -2615, 4268, 4375,
5262 5204, 1684, 2534, 1527, 4986, 1755, -2616, 4071, 4072, 622,
5263 4185, 151, 1527, 1789, 2378, 779, 1766, 779, -2615, 2871,
5264 4819, 3641, 4820, 3185, 3186, 3187, 3188, -2616, 719, 3081,
5265 3652, 4208, 3010, 1346, 2593, 4941, 2888, 1647, 825, 4463,
5266 2892, 4625, 2414, 3489, 4362, 4852, 4853, 4245, 1790, 2357,
5267 2402, 3708, 4894, 1863, 4229, 4230, 2916, 1422, 2709, 4231,
5268 2440, 622, 1870, 2446, 3707, 4626, 622, 2455, 1811, 5052,
5269 754, 1880, 755, 2492, 1665, 4314, 756, 2708, 1523, 1524,
5270 1611, 757, 834, 2940, 4974, 2255, 5024, 5134, 2460, -2971,
5271 4540, 1906, 630, 1906, 2300, -1312, 1523, 1524, 719, 1611,
5272 1611, 1628, 2620, 2621, 769, 4953, 827, 719, 5213, 3987,
5273 1660, 3988, 1791, 1792, 4508, 582, 719, 3138, 4512, 719,
5274 2245, 3468, 1523, 1524, 2859, 2860, 2514, 1818, 2990, 719,
5275 3545, 1879, 2518, 2865, 3129, 3130, 719, 1350, 1912, 3699,
5276 1657, 1853, 1523, 1524, 38, 1523, 1524, 1580, 1854, 3628,
5277 3622, 4039, 4040, 2895, 3623, 3200, 2364, 2316, 719, 2316,
5278 2316, 2816, 3201, 4366, 838, 2490, 4048, 1215, 621, 1217,
5279 2864, 2622, 1825, 2259, 153, 4166, 4502, 3390, 650, 651,
5280 1606, 3319, 2512, 2926, 1814, 2928, 3525, 874, 671, 2702,
5281 3484, 3485, 719, 2403, 3016, 4034, 3678, 1895, 156, 157,
5282 3011, 5140, 2594, 1974, 1693, 5517, 1894, 2938, 2703, 1685,
5283 2217, 3128, 3203, 4367, 5512, 3218, 5514, 5515, 2518, 654,
5284 2945, 2946, -2476, 2865, 1058, 719, 3232, 1523, 1524, 4433,
5285 1826, 2705, 874, 1422, 38, 4244, 3396, 3197, 3198, 4946,
5286 5100, 4948, 3546, 1525, 4951, 1526, 1742, 3439, 3052, 5327,
5287 4954, 4955, 5445, 2390, 2166, 1347, 622, 1760, 2401, 1523,
5288 1524, 1525, 5214, 1526, 4166, 672, 3421, 1523, 1524, 2171,
5289 2508, 152, 5080, 2662, 2588, 5565, 5566, 2119, 1896, 3196,
5290 1897, 5163, 3422, 5165, 874, 874, 2128, 1525, 1216, 1526,
5291 1218, 2205, 4363, 5315, 1758, 5375, 1694, 2139, 1523, 1524,
5292 2461, 1523, 1524, 5587, 1523, 1524, 5060, 1525, 5196, 1526,
5293 3513, 1695, 3401, 3402, 1607, 3140, 3783, 3490, 3012, 2519,
5294 153, 835, 719, 2896, 2365, 3424, 2934, 5590, 5591, 3395,
5295 875, 719, 2670, 1884, 5600, 4323, 4324, 4325, 825, 3405,
5296 4796, 3136, 719, 5083, 4798, 2175, 1648, 5090, 5091, 650,
5297 651, -2971, 1351, 2152, 2172, 1382, 2508, 1900, 1527, 3478,
5298 156, 157, 2111, 3607, 2112, 5488, 839, 3683, 3478, 3478,
5299 1898, 5298, 3777, 1523, 1524, 875, 1527, 1634, 1580, 2256,
5300 836, 156, 157, 1666, 3526, 1749, 3462, 3010, 3758, 5368,
5301 1749, 3243, 1525, 2257, 1526, 873, 3888, 1523, 1524, 1827,
5302 1828, 5178, 1527, 2301, 2218, 2519, 5142, 5632, 2210, 1829,
5303 3718, 3719, 3463, 5639, 3720, 3721, 3722, 1158, 1395, 1396,
5304 1397, 3547, 1527, 719, 1525, 1527, 1526, 875, 875, 1076,
5305 1644, 2491, 1525, 3244, 1526, 2260, 5278, 5316, 2286, 2316,
5306 873, 3137, 1924, 2292, 2712, 2294, 1899, 2173, 3976, 1523,
5307 1524, 1895, 2715, 4998, 2250, 1523, 1524, 4690, 1523, 1524,
5308 2716, 3984, 1946, 1525, 3388, 1526, 1525, 1611, 1526, 1525,
5309 3780, 1526, -2117, -2117, 2265, 2270, 2391, 1602, 1448, 3072,
5310 5614, 1900, 582, 719, 582, 582, 582, 582, 719, 4518,
5311 719, 2334, 873, 873, 582, 1523, 1524, 4364, 2285, 4365,
5312 2287, 2289, 2290, 2291, 2442, 2445, 4593, 1527, 5210, 5211,
5313 2297, 2319, 582, 2266, -1312, 2429, 3223, 1523, 1524, 1947,
5314 3075, 2935, 1635, 825, 2325, 2434, 5197, 5198, 2320, 2241,
5315 656, 4166, 1896, 5230, 1897, 5135, 719, 4950, 1525, 1527,
5316 1526, 3644, 3645, 796, 3647, 3649, 4574, 1527, 5252, 5388,
5317 2876, 5368, 827, 4794, 3759, 3011, 3669, 1124, 5369, 2866,
5318 4063, 4594, 1525, 5367, 1526, 3138, 2913, 658, 4065, 3390,
5319 5436, 4691, 5368, 5177, 5113, 1523, 1524, 5114, 1527, 1636,
5320 3009, 1527, 3375, 1645, 1527, 2389, 1947, 622, 1637, 768,
5321 2961, 2503, 1523, 1524, 5025, 4023, 5179, 684, 5293, 2438,
5322 2439, 2406, 1970, 1900, 1523, 1524, 1830, 719, 4407, 1184,
5323 2409, 1925, 2416, 5279, 1525, 1184, 1526, 768, 3947, 5199,
5324 1525, 1970, 1526, 1525, 1898, 1526, 694, 5243, 4733, 1638,
5325 2636, 2637, 5109, 1367, 3771, 5110, 1523, 1524, 3139, 5130,
5326 2513, 2435, 2436, 2437, 719, 719, 3948, 1523, 1524, 2866,
5327 2704, 874, 2388, 1527, 3760, 664, 2986, 5245, 3766, 4793,
5328 1525, 4915, 1526, 4367, 2113, 4595, 2267, 2114, 3454, 3455,
5329 5136, 3273, 5115, 3012, 685, 1523, 1524, 1527, 5389, -2286,
5330 3775, 1970, 1525, 2538, 1526, 2867, 3281, 3281, 3281, 1185,
5331 1186, 4212, 5200, 3469, 5598, 1185, 1186, 4659, 1948, 5313,
5332 1899, 1523, 1524, 3039, 5655, 5400, 3040, 1872, 2316, 2914,
5333 5292, 1523, 1524, 2514, 2455, 4916, 2593, 3049, 5333, 2517,
5334 5369, 2610, 4602, 4602, 5125, 2518, 3202, 4685, 719, 1527,
5335 5065, 1239, 1103, -2286, 1639, 1527, 1853, 695, 1527, 4596,
5336 1525, 5369, 1526, 1854, 1523, 1524, 2305, 719, 2633, 5116,
5337 2633, 2633, 1523, 1524, 3128, 5390, 1229, 1525, 1640, 1526,
5338 5709, 3532, 1296, 3140, 2609, 2242, 719, 2611, 2645, 1525,
5339 1971, 1526, 1858, 4391, 1353, 1527, 4408, 1929, 5294, 719,
5340 719, 5489, 1523, 1524, 2508, 4022, 2626, 3457, 1660, 1971,
5341 2306, 5131, 1230, 2634, 875, 2634, 2634, 1527, 5656, 5121,
5342 4350, 1525, 1872, 1526, 3540, 2594, 697, 2717, 1211, 1831,
5343 3203, 1833, 1525, 719, 1526, 3992, 2871, 1877, 3778, 719,
5344 1972, 3615, 3141, 2658, 5246, 2721, -2286, 1523, 1524, 3208,
5345 3208, 2665, 799, 3796, 3797, 3798, 5202, -2286, 4332, 3414,
5346 1525, 1187, 1526, 4575, 1992, 4576, -1387, 1446, 1660, 1971,
5347 5657, 2722, 746, 1372, 1164, 1527, 1812, 3196, 4392, 873,
5348 5695, 5696, 5526, 2508, 5192, 3248, 1525, 3113, 1526, 4917,
5349 1924, 2723, 1527, 727, 1212, 3239, 1525, 4317, 1526, 1173,
5350 1900, 4577, -1387, 2174, 1527, 5556, 4393, -2286, 5560, 4832,
5351 1523, 1524, 1878, 4009, -2286, 3249, 1240, 2504, 1657, 3661,
5352 1523, 1524, 2005, 1523, 1524, -2286, 5710, 1373, 4578, 1525,
5353 3400, 1526, 2519, 5412, 1241, 4427, 1527, 1525, 2842, 1526,
5354 874, 2307, 8, 2879, 2880, 2881, 3220, 1527, 827, 2773,
5355 2317, 5640, 2317, 2317, 3486, 2779, 874, 4333, 1523, 1524,
5356 1165, 1231, 1814, 3740, 4288, 3742, 3743, 1525, 5503, 1526,
5357 3250, 3748, 5412, 4391, 1641, 1527, 2740, 3270, 874, 3756,
5358 3306, 3439, 1523, 1524, 3763, 874, 874, 874, 1174, 825,
5359 3311, 1374, 1367, 2953, 719, 4858, 16, 3273, 3251, 4394,
5360 719, 1527, 2200, 2205, 5408, 1124, 4075, 4564, 2747, 1813,
5361 729, 1527, 1525, 1166, 1526, 2793, 2749, 4121, 4122, 4123,
5362 4124, 4125, 2505, 4127, 4128, 4129, 4130, 4131, 3871, 4133,
5363 4134, 4135, 4136, 4137, 4138, 4139, 4140, 4141, 4142, 3872,
5364 1213, 4146, 4147, 5237, 1527, 5239, 3344, 2752, 1574, 1642,
5365 2753, -1387, 1527, 2754, 4565, 3478, 1643, 4289, 4392, 1925,
5366 5641, 5666, 4579, 2633, 2633, 2633, 3450, 4455, 1523, 1524,
5367 1375, 1244, 1523, 1524, 1812, 1525, 3353, 1526, 1523, 1524,
5368 5089, 5580, 1527, 875, 2469, 1525, 4396, 1526, 1525, 28,
5369 1526, 3252, 5288, 719, 1523, 1524, 2858, 4580, 5573, 875,
5370 4341, 1813, 1523, 1524, 5289, 2201, 4076, 5151, 2634, 2634,
5371 2634, 2882, 2883, 4348, 1602, 730, 1657, 2202, 4489, 5232,
5372 3271, 875, 2755, 1525, 4566, 1526, 5574, 1527, 875, 875,
5373 875, 1523, 1524, 732, 3413, 2913, 5372, 4606, 4947, 5379,
5374 4246, 1992, 2906, 2295, 2296, 4254, 2758, 1525, 873, 1526,
5375 35, 2922, 4956, 1523, 1524, 582, 2994, 2944, 1087, 4506,
5376 1814, 1523, 1524, 4963, 873, 4965, 1992, 582, 38, 2924,
5377 4066, 2923, 1992, 2960, 4602, 3633, 4606, 2929, 1992, 4394,
5378 5575, 2971, 4238, 2927, 1644, 3269, 873, 3208, 5385, 2203,
5379 1527, 5520, 5521, 873, 873, 873, 2704, 2718, 4517, 2061,
5380 1527, 136, 719, 1527, 2759, 4805, 2418, 2777, 1523, 1524,
5381 2948, 1287, 4844, 4845, 1530, 3058, 1523, 1524, 719, 1523,
5382 1524, 1705, 2964, 5684, 2064, 2969, 719, 5464, 1305, 1531,
5383 2081, 2995, 2317, 1525, 4239, 1526, 2092, 1525, 1527, 1526,
5384 2381, 4358, 3627, 1525, 2782, 1526, 3083, 2513, 5697, 719,
5385 3634, 768, 2937, 4056, 1523, 1524, 2974, 1532, 745, 1525,
5386 2419, 1526, 1527, 1533, -3221, 4244, 2785, 1525, 3041, 1526,
5387 1367, 2975, 3641, 4377, 4378, 1523, 1524, 719, 2914, 874,
5388 1660, 751, 4211, 3114, 874, 5372, 4904, 1564, 2494, 5028,
5389 1523, 1524, 5379, 4905, 1523, 1524, 1525, 1534, 1526, 4756,
5390 4649, 4758, 5584, 4644, 654, 4646, 2466, 582, -3221, 4650,
5391 1523, 1524, 1581, 719, 4815, 3273, 5585, 3047, 1525, 4079,
5392 1526, 139, 582, 3038, 2792, 2471, 1525, 3367, 1526, 2495,
5393 3057, 4193, 4240, 761, 2974, 4816, 3062, 1645, 4241, 2593,
5394 3368, 2802, 3641, 3641, 3202, 775, 1523, 1524, 1527, 2975,
5395 4018, 760, 1527, 3285, 4906, 2467, 793, 4498, 1527, 2840,
5396 4349, 3830, 1523, 1524, 2342, 825, 2841, 3222, 2343, 2496,
5397 3641, 3090, 773, 1525, 1527, 1526, -2286, 772, 3094, 3095,
5398 4194, 1525, 1527, 1526, 1525, 3909, 1526, 1523, 1524, 3208,
5399 3208, 790, 3115, 4342, 4059, 2719, 4173, 1523, 1524, 3116,
5400 784, 1523, 1524, 841, 4399, 4400, 719, 3117, 3203, 1064,
5401 4343, 1527, 3491, 3736, 1867, 1868, 1103, 1523, 1524, 1525,
5402 2581, 1526, 875, 3439, 3910, 1049, 2871, 875, 2497, 1872,
5403 1872, 1872, 4415, 1527, 1615, 1060, 1615, 2466, 1066, -2259,
5404 1525, 1527, 1526, 5151, 5578, 5579, 1523, 1524, 1905, 3513,
5405 3921, 1523, 1524, 4444, 4440, 1525, 5645, 1526, 5326, 1525,
5406 3955, 1526, 1523, 1524, 1770, 1422, 3210, 1141, 3212, 3492,
5407 1775, 1776, 4238, 2950, 874, 1525, 1145, 1526, 1153, 3118,
5408 -3242, 1657, 1523, 1524, 2951, 2390, 2467, 873, 1527, 1523,
5409 1524, 3506, 873, 3956, 2508, 5675, 1527, 2498, 4226, 1527,
5410 2741, 2317, 895, 5679, 3045, 1523, 1524, 4476, 1155, 2605,
5411 3045, 1525, 4471, 1526, 1162, 5372, 5379, 5653, 5653, 4629,
5412 4278, 4279, 4280, -2259, 4239, 1814, 1171, 1525, 4292, 1526,
5413 1813, 4785, 902, 5694, 1527, 4293, 1178, 1523, 1524, 3119,
5414 4306, 4309, 1194, 4312, 4811, 1657, 2974, 3265, 1749, 1523,
5415 1524, 1180, 1525, 2840, 1526, 1527, 3266, 874, 3267, 1200,
5416 4643, 2975, 1525, 5681, 1526, 4051, 1525, 4834, 1526, 3268,
5417 1527, 3419, 4837, 3204, 1527, 2744, 3507, 3205, 2508, 1198,
5418 1924, 4545, 1525, 4519, 1526, 1523, 1524, 914, 4520, 1814,
5419 1527, 1204, 4521, 1206, 4561, 4052, 1523, 1524, 2499, 1523,
5420 1524, 1207, 874, 1523, 1524, 2469, 2955, 1208, 1523, 1524,
5421 635, 1525, 1158, 1526, 635, 926, 1525, 875, 1526, 4524,
5422 4674, 4447, 1237, 5738, 1260, 4449, 1527, 1525, 4241, 1526,
5423 1523, 1524, 1540, 1267, 1523, 1524, 1268, 4207, 2746, 2239,
5424 2239, 2239, 1527, 686, 1244, 1244, 1244, 1525, 2748, 1526,
5425 4053, 2756, 1269, 1813, 1525, 1277, 1526, 746, 2582, 1523,
5426 1524, 1281, 3365, 1273, 1924, -2287, 4522, 1527, 1657, 2500,
5427 1525, 5151, 1526, 2706, 2059, 1289, 687, 1527, 4054, 1523,
5428 1524, 1527, 873, 1288, 3431, 1124, 2757, 2745, 1718, 4488,
5429 1315, 2906, 3991, 2750, 2751, 1124, 1317, 1527, 4706, 1299,
5430 875, 1428, 1525, 3408, 1526, 4490, 1325, 4242, 946, 1319,
5431 2762, 5257, 1814, 2583, 1525, 1327, 1526, 688, 1328, -2287,
5432 1444, 1336, 1543, 2760, 1718, 1330, 1527, 1449, 1450, 719,
5433 4114, 1527, 1523, 1524, 3443, 1244, 5258, 1339, 4942, 3446,
5434 1544, 1340, 1527, 2766, 1718, 875, 1523, 1524, 1341, 1925,
5435 1525, 1342, 1526, 4438, 1523, 1524, 1344, 2556, 2557, 3064,
5436 1349, 1525, 1527, 1526, 1525, 873, 1526, 1367, 1525, 1527,
5437 1526, 4055, 2569, 1525, 4451, 1526, 4344, 1941, 1942, 1124,
5438 3097, 1943, 156, 157, 1376, 1527, 1368, 1088, 4226, 1383,
5439 1671, 5362, 1377, 5363, 1559, 1525, 2763, 1526, 1229, 1525,
5440 2767, 1526, -1015, 2605, 1384, 3601, 2768, 78, 2770, 1718,
5441 873, 1385, -2287, 4243, 2771, 1718, 1390, 1527, 2584, 1523,
5442 1524, 2681, 2769, -2287, 1525, 2152, 1526, 1391, 4479, 1527,
5443 2775, 4499, 1483, 1925, 1230, 1392, 2205, 1615, 4188, 1393,
5444 650, 651, 2772, 1718, 1525, 5259, 1526, 2778, 1718, 5260,
5445 4022, -3221, 4495, 4496, 1523, 1524, 3551, 3552, 1660, 2776,
5446 1535, 1536, 1537, 4731, 3189, 1527, 1394, 2571, 2572, 5242,
5447 -1720, 3599, 1398, -2287, 3230, 3231, 1527, 4737, 1489, 1527,
5448 -2287, 2780, 1400, 1527, 4741, 1401, 4645, 3712, 1527, 2781,
5449 3432, -2287, 689, 1402, 4533, -3221, 4752, 1525, 1403, 1526,
5450 1404, 719, 719, 1405, 4759, 4760, 1406, 582, 690, 1407,
5451 1527, 1525, 1540, 1526, 1527, 1408, 719, 3281, 3265, 1525,
5452 3811, 1526, 3202, 3595, 4550, 4552, 4554, 3266, 1409, 3267,
5453 1410, 4558, 4559, 691, -2482, 4562, 2783, -2483, 4568, 1527,
5454 3268, 4572, 3778, 5243, 2790, 4416, 1560, 2803, 4583, 1523,
5455 1524, 3276, 3277, 3517, 3518, 1563, 4417, 3718, 3719, 1527,
5456 1411, 3720, 3721, 3722, 2824, 1523, 1524, 5244, 3664, 3665,
5457 1412, 5079, 692, 5245, 1415, 4418, 5039, 3932, 2751, 5618,
5458 1423, -3196, 3904, 1231, 1525, 1424, 1526, 3657, 3658, 3659,
5459 3660, 2997, 3662, 3663, 5261, 4216, 4217, 4242, 1425, 4218,
5460 4219, 1750, 1543, 3907, 1426, 4220, 4221, 4419, 3935, 1718,
5461 4739, 1540, 1527, 4326, 4327, 4739, 1429, 3729, 3908, 1540,
5462 1544, 1561, 3913, 3946, 1718, 2998, 1527, 2316, 1430, -1912,
5463 3403, 3950, 3951, 5126, 1527, 5262, 4026, 4027, 3917, 3744,
5464 3745, 4847, 3747, 1431, 3749, 3750, 3751, 3752, 3753, 3754,
5465 3755, 4864, 3757, 1432, 874, 3762, 1433, 4779, 5020, 3765,
5466 1434, 5153, 1435, 3803, 4656, -1912, 4658, 5147, -1912, 4661,
5467 1546, 1547, 2494, 1562, 3918, 4667, 4668, -1912, 1436, 650,
5468 651, 1437, 2036, -1912, 1438, 1540, 1187, -1912, 4420, 1565,
5469 3919, 1439, 4681, 4032, 4033, 4282, 2652, -1912, 2626, 1527,
5470 -1912, 1543, 1755, 4243, -1912, 1440, -1912, 1672, 719, 1543,
5471 1441, -1912, 1540, 2495, 1525, 3920, 1526, 1442, -1912, 1544,
5472 1443, -1912, 4295, 4296, 1568, 3922, -1912, 1544, 1597, 3931,
5473 1525, 1445, 1526, 1451, 4389, 2025, 2026, 2027, 2028, 1452,
5474 5246, 2842, 3982, 4488, 1598, 3937, 1453, -1912, 1673, 2037,
5475 1674, 1825, 1454, 2496, 4459, 1718, 4421, 4711, 4712, 4490,
5476 -1912, 5323, 1455, 4841, 1456, -1912, 5737, 4713, 4714, 1546,
5477 1547, 4960, 4715, 4716, 3940, 1543, 1457, 1546, 1547, 3943,
5478 1458, -1912, 1459, 1995, 1996, 2029, 2030, 2031, 4765, 5187,
5479 3944, 1960, 2006, 1544, 1460, 874, 874, 875, 1461, 598,
5480 4968, 1462, 1543, -1912, 4771, 4774, 4406, 4786, 1718, 1826,
5481 3945, -1912, 2497, 1463, 2038, 1464, 2039, 3953, 1599, -1015,
5482 1544, 2040, 2062, 2239, 2065, 4803, 4804, 1465, 1244, 1527,
5483 1468, 3958, 1600, -1912, 1469, 5308, 2032, 2033, 1470, 2078,
5484 2079, 1675, 2082, 1546, 1547, 1527, 4813, 1718, 4721, 4722,
5485 2088, 2089, 1471, -1912, 2093, 4828, 4829, 650, 651, -1912,
5486 -1912, 599, 873, 1472, 4422, 3954, 4423, 1523, 1524, 1473,
5487 1546, 1547, 1474, -1912, 1475, -1912, 5330, 3957, -1912, 1476,
5488 -589, 2498, 156, 157, 2041, 4007, 5242, 1087, 4460, 1477,
5489 1676, 5358, 4868, 4869, 1551, 1552, 1553, 1554, 1555, 1556,
5490 2152, 2034, -1015, 2871, 5264, 1192, 1193, 1605, 1196, 4211,
5491 1197, 4872, 3621, 3960, 156, 157, -589, 1632, 2999, 4994,
5492 4995, 4996, 4995, 1649, 3973, 1478, 2042, 4784, 1479, 4674,
5493 1652, 4790, 1480, -591, 4046, 4047, 4791, 1677, 875, 875,
5494 650, 651, -2287, 1481, 600, 1701, 4999, 5000, 5071, 5072,
5495 5075, 5072, 1523, 1524, 3058, 1482, 1523, 1524, 4792, 1484,
5496 5243, 1657, 4801, 1320, 1485, 3000, 1523, 1524, 1486, 5242,
5497 5156, 5157, 4116, 4648, 1487, 2035, 4120, -591, 1827, 1828,
5498 5173, 5106, 2499, 1523, 1524, 4083, 1667, 4802, 1829, 4090,
5499 5245, 1488, 5247, 1540, 5222, 5209, 4033, 5446, 5225, 5221,
5500 5072, 5442, 5443, 873, 873, 2518, 5447, 4806, 5386, 5387,
5501 601, 1490, -830, -1912, 2043, 4424, 4425, 719, 1491, 1321,
5502 1367, 719, 1322, 2316, 2316, 2044, 1678, 1492, 3001, 5452,
5503 5453, 1493, 1525, 5257, 1526, 1494, 2736, 1495, 3289, 5462,
5504 5463, 1670, 2009, 5243, 4601, 4145, 2720, 1679, 4167, 1323,
5505 1496, 3290, 1499, 2500, 5328, 5329, 1324, 1500, 5258, 1668,
5506 4807, 582, 2036, 3332, 1503, -589, 1504, 5244, 1505, 3057,
5507 4191, 3002, 2010, 5245, 5180, 4660, 3291, 4177, 5482, 4033,
5508 1523, 1524, 5229, 1543, 4205, 1506, 2011, 3292, -2259, 1507,
5509 5187, 4204, 3537, 4952, 2556, 2557, 5483, 4033, 5487, 3665,
5510 1508, 1544, 5535, 4829, 156, 157, 4652, 5599, 5072, 2569,
5511 1509, 1539, 5601, 5072, 4306, 1510, 4309, 1525, 4312, 1526,
5512 1669, 1525, 1566, 1526, -1015, 5602, 5072, 2012, 1633, 2037,
5513 4321, 1525, 1690, 1526, 5538, 5542, 5621, 5622, 3293, 3099,
5514 1386, 5630, 5631, 2508, 5366, 1540, 1691, 1527, 1525, 1696,
5515 1526, 1546, 1547, 5637, 5072, 2013, 602, 5246, 4286, 1718,
5516 3334, 1540, 650, 651, 4765, 5638, 5072, 5259, 1721, 4426,
5517 1756, 5260, 4167, 1550, 1551, 1552, 1553, 1554, 1555, 1556,
5518 603, 5646, 5072, 4723, 1762, 1830, 5663, 4829, 5676, 5072,
5519 5405, 5242, 2519, 1764, 2038, 1773, 2039, 1774, 3914, 5693,
5520 4532, 2040, 1523, 1524, 2571, 2572, 5726, 5727, 2677, 1778,
5521 2581, 1779, 5027, 1781, 1541, 2142, 2143, 1523, 1524, 1783,
5522 1802, 1787, 3003, 3004, 3005, 5042, 1542, 1803, 604, 1924,
5523 2518, 1805, 1527, 5615, 1839, 1543, 1527, 4313, 1843, 4833,
5524 5246, 721, 1845, 4316, 874, 1525, 1527, 1526, 2014, 1850,
5525 5164, 1543, 1856, 1544, 1859, 1861, 1864, 650, 651, 1865,
5526 1869, 3414, 1881, 1527, 2041, 5243, 1890, 1907, 1913, 1544,
5527 1915, 4533, 1917, 1551, 1552, 1553, 1554, 1555, 1556, 1549,
5528 1550, 1551, 1552, 1553, 1554, 1555, 1556, 3294, 4009, 5244,
5529 3270, 1919, 1920, 1928, 5456, 5245, 1934, 3336, 1545, 1937,
5530 1935, -1912, 1938, 1546, 1547, 1939, 2042, 874, 1523, 1524,
5531 3933, 1959, 1751, 1962, 1967, 1975, 5261, 1976, 1977, 1546,
5532 1547, 3100, -69, 1523, 1524, 3936, 1982, -1912, -1912, 1980,
5533 3192, -1912, -1912, 1983, 1984, 1991, 1992, 2008, 2001, 2019,
5534 4388, 2023, 5359, 2048, 1124, 1549, 1550, 1551, 1552, 1553,
5535 1554, 1555, 1556, 2058, 1367, 2059, 2069, 5262, 2060, 2073,
5536 1527, 2077, 605, 2127, 3101, 2133, 2137, 1525, 2508, 1526,
5537 2147, 2159, 1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556,
5538 606, 2163, 1525, 38, 1526, 5433, 2182, 875, 1831, 1832,
5539 1833, 1834, 2189, 2009, 2043, 3295, 2211, 3296, 1925, 2212,
5540 2317, 5183, 2224, 2225, -2945, 2044, 5307, 2226, 4525, 5471,
5541 5472, 2231, 5474, 5475, 5476, 5477, 2234, 2519, 2236, 2235,
5542 2237, 607, 5309, 2010, 608, 2244, 4443, 2247, 1660, 3124,
5543 5263, 5497, 2251, 3271, 5465, 2282, 2280, 3635, 2283, 2581,
5544 2303, 2327, 2326, 3102, 3288, 2328, 2329, 2332, 2582, 2331,
5545 875, 609, 873, 2354, 1924, 2355, 4458, 2333, 610, 2358,
5546 2710, 2359, 5246, 2713, 2360, 2367, 2368, 1523, 1524, 4205,
5547 2372, 2373, 2374, 1525, 2375, 1526, 4204, 2376, 3636, 4892,
5548 2728, 2377, 1527, 4007, 4896, 4897, 3222, 2379, 1525, 2380,
5549 1526, 2742, 5247, 2392, 3443, 2393, 4486, 1527, 3269, 2412,
5550 4493, 2423, 2427, 2430, 2456, 3103, 3637, 2465, 2025, 2026,
5551 2027, 2028, 1812, 2484, 2478, 873, 1088, 1602, 2485, 2516,
5552 5456, 4630, 698, 3104, 3105, 2493, 2539, -2508, 3106, 3107,
5553 3108, 2532, 5561, 2540, 2542, 5564, 2543, 2545, 5425, 5426,
5554 1615, 5428, 2546, 5572, 2152, 5102, 2578, 3297, 2598, 1582,
5555 2595, 2599, 4530, 1814, 2607, 2613, 1583, 2616, 2029, 2030,
5556 2031, 2623, 2629, 2646, 2656, 2657, 699, 4982, 5567, 1124,
5557 1584, 4587, 4765, 2659, 2673, 2675, 2676, 2678, 2694, 1585,
5558 1586, 1587, 5441, 2687, -1045, 2689, 4539, 2692, 1527, 1588,
5559 2688, 4663, 2693, 2704, 3109, 2009, 2707, 2508, 2818, 3638,
5560 2711, 4556, 2795, 1527, 2714, 4560, 2724, 2725, 2729, 2032,
5561 2033, 2737, 2738, 1367, 4573, 4167, 719, 2739, 4589, 2761,
5562 2743, -1522, 2764, 1925, 2784, 2010, 5264, 2765, 874, 2774,
5563 2823, 2788, 1525, 2789, 1526, 1556, 2833, 5171, 2791, 3635,
5564 4613, 874, 3110, 5078, 156, 157, 2794, 4612, 2837, 2839,
5565 2853, 5626, 3298, 1549, 1550, 1551, 1552, 1553, 1554, 1555,
5566 1556, 3270, 5404, -1690, 2846, 2862, 2872, 2210, 5416, 4642,
5567 2875, 2877, 2878, 2949, 2034, 4676, 4641, 2582, 2886, 5720,
5568 3636, 2887, 5532, 1924, 5533, 5534, 2893, -808, 4657, 2894,
5569 4224, 4167, 2897, 5730, 2898, 2900, 5650, 1615, 2899, 5720,
5570 3299, 4671, 2901, 4530, 700, 5730, 5541, 2902, 3637, 4679,
5571 2930, 2949, 2921, 4670, 5247, 2152, 4682, 2932, 4683, 4684,
5572 719, 4678, 5543, 2933, -2083, 2936, 4530, 1589, 2958, 2959,
5573 2939, 2984, 2583, 4530, 1466, 1497, 1501, 1548, 4167, 3017,
5574 701, 1590, -808, 3020, 2950, 3019, 699, 1527, 2035, 2949,
5575 4693, 3022, 3023, 3034, 3035, 2951, 2581, 3060, 582, 3061,
5576 3066, 5626, 2952, 4705, 2974, 3050, 3069, 3086, 3087, 3088,
5577 5082, 875, 3091, 3089, 4701, 3092, 2518, 5305, 3093, 2975,
5578 5502, 3145, 2950, 138, 875, 3147, 3150, 3154, 3159, 3156,
5579 3160, 2953, 3161, 2951, 3162, 3163, 2317, 2317, 1124, 3164,
5580 2952, 3638, 3183, 3184, 3271, 1549, 1550, 1551, 1552, 1553,
5581 1554, 1555, 1556, 3165, 3281, 3166, 5616, 3167, 3191, 3168,
5582 2950, 1549, 1550, 1551, 1552, 1553, 1554, 1555, 1556, 2953,
5583 3169, 2951, 874, 3170, 4747, 2036, 873, 2584, 2952, 1591,
5584 4225, 3171, 4850, 3211, 3172, 1750, -808, 2954, 3173, 873,
5585 3174, 3175, 1925, 3176, 3177, 3178, 139, 3179, 3180, -2259,
5586 3181, 3182, 5549, 3214, 3229, 1900, 5346, 2953, 3217, 3269,
5587 3233, 3236, 3237, -1912, 3238, 1592, 3192, 2955, 3245, -808,
5588 4854, 3246, 4224, 135, 700, 2954, 3234, 3235, 3247, 1593,
5589 3241, 3253, 3307, 4873, 3308, 3274, 3309, 2841, 3320, 5583,
5590 874, 3321, 2037, 3330, 3340, -1728, 3364, 3376, 3378, -1912,
5591 3379, 3399, -1912, 3409, 2508, 2955, 3410, 3425, 3416, 3427,
5592 -808, -1912, 3417, 2954, 874, 3418, 2847, -1912, 3444, 3430,
5593 3448, -1912, 3447, 3451, -808, 3452, 4007, 3459, 699, 3453,
5594 3460, 2259, 136, 3467, -1912, 2152, 2260, 3472, -1912, 2652,
5595 -1912, 3483, 3487, 2955, 5702, -1912, 2974, 3502, 5031, 2342,
5596 3503, 878, -1912, 2519, 3504, -1912, 3519, 2038, 3522, 2039,
5597 -1912, 2975, 3523, 3524, 2040, 875, 3529, 3530, 3541, 3542,
5598 3544, 3550, 3608, 3602, 3603, 3612, 3620, 3613, 3713, 3619,
5599 3621, -1912, 3714, 3631, 2582, 3624, 3632, 895, 3715, 4090,
5600 1924, 3727, 3731, 3738, -1912, 3739, 4226, 3741, 3770, -1912,
5601 4877, 4877, 1615, 3776, 3781, 2608, 3785, 3793, 3794, 4879,
5602 3787, 4893, 3800, 3805, 900, -1912, 3870, 902, 137, 874,
5603 3873, 3877, 3874, 3881, 3885, 4881, 5357, 2041, -808, 3889,
5604 873, 906, 907, 875, 3892, 3895, 3897, -1912, 4286, 3898,
5605 3899, 3949, 5347, 3900, 3961, -1912, 3999, 3971, 3959, 4167,
5606 3983, 3972, 3981, 4975, 874, 3990, 719, 875, 4895, 3989,
5607 4012, 3995, -3258, 4901, 4001, 4019, 700, -1912, 4013, 2042,
5608 4015, 4016, 914, 4025, 4943, 702, 4028, 4945, 4925, 4035,
5609 4029, 4041, 4042, 874, 4045, 4070, 4074, -1912, 4928, -2083,
5610 4062, 920, 4077, -165, -1912, 4080, 4944, 4082, 873, 925,
5611 926, 4084, -808, 4085, 4094, 1124, 5348, -1912, -985, -1912,
5612 -985, 4092, -1912, 4167, 4530, 4167, 4110, 4111, 4167, 4112,
5613 4530, 5349, 873, 4113, 4167, 4167, 5734, 4115, 4530, 4119,
5614 4126, 4132, 3681, 4192, 138, 1850, 4196, 608, 4167, 4530,
5615 4175, 4530, 4180, 4197, 4200, -2259, 4214, 49